RC_Sport 板


LINE

Hi, 各位先进 我想要让我的Arduino可以接收H36F的讯号,让我可以操作我的Arduino遥控车 经过一连串的爬文和研究,发现H36F的protocol是和E010一样的(#1) 这颗遥控器是2.4G频段,也有不少自制tx的范例,唯独rx的研究相对稀少 我手边有Arduino和一个nrf24l01,但我依照预定的地址尝试读取资料却没有获得内容 想请问我在设定上发生甚麽问题吗? 原始码: #include <SPI.h> #include "nRF24L01.h" #include "RF24.h" #include "printf.h" RF24 radio(9, 10); #define MJX_PACKET_SIZE 16 #define MJX_RF_NUM_CHANNELS 4 #define MJX_ADDRESS_LENGTH 5 #define MJX_BIND_COUNT 150 #define MJX_PACKET_PERIOD 4000 // Timeout for callback in uSec static const struct { u8 e010_txid[2]; u8 rfchan[MJX_RF_NUM_CHANNELS]; } e010_tx_rf_map[] = {{{0x4F, 0x1C}, {0x3A, 0x35, 0x4A, 0x45}}, {{0x90, 0x1C}, {0x2E, 0x36, 0x3E, 0x46}}, {{0x24, 0x36}, {0x32, 0x3E, 0x42, 0x4E}}, {{0x7A, 0x40}, {0x2E, 0x3C, 0x3E, 0x4C}}, {{0x61, 0x31}, {0x2F, 0x3B, 0x3F, 0x4B}}, {{0x5D, 0x37}, {0x33, 0x3B, 0x43, 0x4B}}, {{0xFD, 0x4F}, {0x33, 0x3B, 0x43, 0x4B}}, {{0x86, 0x3C}, {0x34, 0x3E, 0x44, 0x4E}}}; uint8_t transmitterID[4]; static u8 mjx_txid[3]; static u8 mjx_rf_chan; static u8 mjx_rf_channels[MJX_RF_NUM_CHANNELS]; void setup(void) { Serial.begin(115200); while (!Serial) ; // 由於我这台是Leonardo,要等一下Serial delay(5000); //const uint64_t pipe = 0x6d6a777777LL; //const uint64_t pipe = 0x7777776a6dLL; const uint64_t tx_pipe = 0x000C710F55LL; // 地址来源请看#2 const uint64_t rx_pipe = 0x2F7D872649LL; // 地址来源请看#2 u8 rx_tx_addr[MJX_ADDRESS_LENGTH]; memcpy(mjx_txid, e010_tx_rf_map[transmitterID[0] % (sizeof(e010_tx_rf_map)/sizeof(e010_tx_rf_map[0]))].e010_txid, 2); mjx_txid[2] = 0x00; memcpy(rx_tx_addr, "\x6d\x6a\x77\x77\x77", sizeof(rx_tx_addr)); memcpy(mjx_rf_channels, "\x36\x3e\x46\x2e", sizeof(mjx_rf_channels)); printf_begin(); radio.begin(); while (!radio.isChipConnected()) delay(100); radio.setAddressWidth(MJX_ADDRESS_LENGTH); radio.openReadingPipe(1, rx_pipe); radio.openWritingPipe(tx_pipe); radio.flush_rx(); radio.flush_tx(); radio.setPayloadSize(MJX_PACKET_SIZE); radio.setAutoAck(false); radio.setRetries(0,0); radio.setPALevel(RF24_PA_MAX); radio.setDataRate(RF24_250KBPS); radio.disableDynamicPayloads(); radio.disableCRC(); //radio.setChannel(0x4E); radio.startListening(); radio.printDetails(); } void loop(void) { byte buf[16]; if( radio.available()) { memset(buf, 0, 16); radio.read(buf, 16); int sum = 0; for (int i = 0; i < 16; i++) { printf("%02x", buf[i]); sum += buf[i]; radio.stopListening(); radio.setChannel(mjx_rf_channels[mjx_rf_chan++ / 2]); mjx_rf_chan %= 2 * sizeof(mjx_rf_channels); radio.startListening(); } printf("\r"); if(sum) printf("\n"); } } #1 H36F可用E010的相关讨论 https://reurl.cc/j7QK9M #2 E010地址的相关原始码 https://reurl.cc/oLVEK5 #3 使用的nrf library https://github.com/nRF24/RF24 --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.133.34.219 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/RC_Sport/M.1589118732.A.CA3.html ※ 编辑: Darkautism (220.133.34.219 台湾), 05/10/2020 21:59:20 ※ 编辑: Darkautism (220.133.34.219 台湾), 05/10/2020 23:41:50
1F:→ Darkautism: 自己回一下, address width改短就好 05/17 21:59







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:BuyTogether站内搜寻

TOP