请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
部件号:MSP430G2553 工具/软件:Code Composer Studio
您好!
我正在使用带有nRF24L01模块的msp430g2553,并且我正在尝试与另一个msp430g2553和nRF24L01进行通信。
我使用了示例代码IKE-USCEA-TX/Rx,但当我在CCS上启动程序时,代码中出现了问题:
| #include <MSP4S.h> | |
| 包括"msprf24.h" | |
| #include "nrf_userconfig.h" | |
| #include "stdint.h" | |
| volatile unsigned int用户; | |
| INT MAIN () | |
| { | |
| uINT8_t地址[5]; | |
| uINT8_t buf[32]; | |
| WDTCTL = WDTHOLD | WDTPW; | |
| DCOCTL = CALDCO_16MHz; | |
| BCSCTL1 = CALC1_16MHz; | |
| BCSCTL2 = DIDS_1;// SMCLK = DCOCLK/2 | |
| // SPI (USCI)使用SMCLK,首选SMCLK < 10MHz (nRF24的SPI速度限制=10MHz) | |
| //红色LED将是我们的输出 | |
| P1DIR || BIT0+BIT6; | |
| P1OUT &=~(BIT0+BIT6); | |
| 用户= 0xFE; | |
| /* nRF24L01+库配置变量的初始值*/ | |
| RF_CRC = RF24_EN_CRC | RF24_CRCO;// CRC启用,16位 | |
| rf_addr_width = 5; | |
| RF_speed_power = RF24_speed_1Mbps | RF24_POWER_0dBm; | |
| RF_channel = 120; | |
| msprf24_init(); | |
| msprf24_set_pipe_packetsize(0,32); | |
| msprf24_open_pipe(0, 1);//使用增强型ShockBurst打开管道#0 | |
| //设置我们的RX地址 | |
| addr[0]= 0xDE;addr[1]= 0xAD;addr[2]= 0xBE;addr[3]= 0xEF;addr[4]= 0x00; | |
| w_rx_addr (0,addr); | |
| //接收模式 | |
| 如果(!(RF24_QUEUE_RXEMPTY & msprf24_QUEUE_STE()){ | |
| flush_rx(); | |
| } | |
| msprf24_activate_rx(); | |
| LPM4; | |
| 而(1){ | |
| 如果(RF_IRQ和RF24_IRQ_STagged){ | |
| RF_IRQ &=~RF24_IRQ_STagged; | |
| msprf24_Get_IRQ_Reason(); | |
| } | |
| 如果(RF_IRQ & RF24_IRQ_RX || msprf24_Rx_pending()){ | |
| r_rx_payload (32,buf); | |
| msprf24_IRQ_CLEAR (RF24_IRQ_RX); | |
| 用户= buf[0]; | |
| IF (buf[0]=='0') | |
| P1OUT &=~BIT0; | |
| IF (buf[0]=='1') | |
| P1OUT |= BIT0; | |
| IF (buf[1]=='0') | |
| P1OUT &=~BIT6; | |
| IF (buf[1]=='1') | |
| P1OUT || BIT6; | |
| }其他{ | |
| 用户= 0xFF; | |
| } | |
| LPM4; | |
| } | |
| 返回0; | |
| } |
在此行中:
| IF (RF_IRQ和RF24_IRQ_STagged) |
当我运行我的程序时,它不会通过IF命令,也不会开始传输或接收。
我选择了USCI A,链接如下:
| nRF24L01 Vcc - LP针脚1 VCC。 | |
| nRF24L01接地- LP针脚20接地。 | |
| nRF24L01 MI - LP引脚3 WFP 1.1 USI_A0 SPI模式:从属数据输出/主输入。 | |
| nRF24L01 MO - LP引脚4 WFP 1.2 USI_A0 SPI模式:从属数据输入/主输出。 | |
| nRF24L01 SCK - LP针脚6 WFP 1.4 USI_A0时钟输入/输出。 | |
| nRF24L01 CE - LP针脚8 WFP 2.0 通用数字输入/输出针脚。 | |
| nRF24L01 CSN - LP针脚9 WFP 2.1 通用数字输入/输出针脚。 | |
|
nRF24L01 IRQ - LP针脚10 WFP 2.2 通用数字I/O针脚。 |
我该怎么做? 感谢您的关注。
卡洛