初级会员
- 积分
- 72
- 金钱
- 72
- 注册时间
- 2018-9-1
- 在线时间
- 19 小时
|
1金钱
准备做个遥控器,最小系统用的是STM32F103C8T6,
调了几天,一直检测不出来nRf24l01模块。这是检测代码,程序用的软件SPI。附件是全部程序,原子哥帮忙看一下。
[mw_shl_code=c,true]void NRF24L01_check( void )
{
uint8_t i;
uint8_t buf[5]={ 0XA5,0XA5,0XA5,0XA5,0XA5,};
uint8_t read_buf[5];
while( 1 )
{
NRF24L01_Write_Buf( TX_ADDR, buf, 5 ); //写入5个字节的地址
NRF24L01_Read_Buf( TX_ADDR, read_buf, 5 ); //读出写入的地址
for( i = 0; i < 5; i++ )
{
if( 0xA5 == read_buf )
{
break;
}
}
if( 5 == i )
{
break;
}
else
{
display_16x16(7,1,N);
display_16x16(7,17,O);
}
delay_ms( 2000 );
}
}[/mw_shl_code]
|
最佳答案
查看完整内容[请看2#楼]
改成这样
NRF24L01_Write_Buf(NRF_WRITE_REG+TX_ADDR,buf,5);//写入5个字节的地址.
NRF24L01_Read_Buf(NRF_READ_REG+TX_ADDR,buf,5); //读出写入的地址
前面要加寄存器写命令和读命令
|