发 帖  
[问答]

请问24l01实现arm和pc之间的通讯?

857 24L01
2020-5-22 04:35:16   评论 分享淘帖 邀请回答 举报
4个回答
2020-5-22 06:40:37 评论

举报

2020-5-22 06:55:45 评论

举报

2020-5-22 07:07:48 评论

举报



        自检是能通过的,随便对换两个管脚后就通不过了,也就说明自检程序是有效的,管脚没有插错

在    Set_NRF24L01_CE;    这一行执行后IRQ确实从高电平变成了低电平

这个是说明由串口发送到直接相连的24l01成功还是发送到另外一块24l01成功???

现在我就是pc上的24l01接收不到任何数据,不知道是不是哪里没有配置正确

收发地址都是一模一样的,这是pc无线串口的配置:波特率9600,通信频率2.400G,16位CRC校验,空中速率2Mbps



[C] 纯文本查看 复制代码
void TX_Mode(void){ Clr_NRF24L01_CE;    NRF24L01_Write_Buf(NRF24L01_WRITE_REG+TX_ADDR,(u8*)TX_ADDRESS,TX_ADR_WIDTH);//写TX节点地址 NRF24L01_Write_Buf(NRF24L01_WRITE_REG+RX_ADDR_P0,(u8*)RX_ADDRESS,RX_ADR_WIDTH); //设置TX节点地址,主要为了使能ACK  NRF24L01_Write_Reg(NRF24L01_WRITE_REG+EN_AA,0x00);     //使能通道0的自动应答    NRF24L01_Write_Reg(NRF24L01_WRITE_REG+EN_RXADDR,0x00); //使能通道0的接收地址  NRF24L01_Write_Reg(NRF24L01_WRITE_REG+SETUP_RETR,0x1a);//设置自动重发间隔时间:500us + 86us;最大自动重发次数:10次NRF24L01_Write_Reg(NRF24L01_WRITE_REG+RF_CH,0);       //设置RF通道为0NRF24L01_Write_Reg(NRF24L01_WRITE_REG+RF_SETUP,0x0f);  //设置TX发射参数,0db增益,2Mbps,低噪声增益开启   NRF24L01_Write_Reg(NRF24L01_WRITE_REG+CONFIG,0x0e);    //配置基本工作模式的参数;PWR_UP,EN_CRC,16BIT_CRC,接收模式,开启所有中断if(NRF24L01_IRQ==0)NRF24L01_Write_Reg(NRF24L01_WRITE_REG+STATUS,0x70);Set_NRF24L01_CE;//CE为高,10us后启动发送}



这里的PWR_UP连接哪个管脚,需要和24l01相连么??我直接用3.3v供电的

我这里还有什么地方配置不正确的么???


       

2020-5-22 07:16:25 评论

举报

只有小组成员才能发言,加入小组>>

433个成员聚集在这个小组

加入小组

创建小组步骤

快速回复 返回顶部 返回列表
关注微信公众号

电子发烧友网

电子发烧友论坛

社区合作
刘勇
联系电话:15994832713
邮箱地址:liuyong@huaqiu.com
社区管理
elecfans短短
微信:elecfans_666
邮箱:users@hauqiu.com
关闭

站长推荐 上一条 /5 下一条

快速回复 返回顶部 返回列表