
UTX0IF = 1; UART0发送完成标志位1
while(UTX0IF); //表示等待串口, 直到数据发送完成 如果用延时, 超过等待时间, 也行但不精确
UTX0IF = 0; 若串口数据发送完成,标志位清零。
(1)串口初始化
1在sapic中加入#include"MT_UARTh"头文件,这里注意一定要可以预编译。
2如下图所示,在sapic的SAPI_Init(
byte
task_id
)函数中加入这两句话MT_UartInit();//串口初始化代码和
MT_UartRegisterTaskID(task_id);//登记任务号
(2)在simpleCollectorc中添加头文件#include"MT_UARTh"
(3)在simpleCollectorc中的zb_ReceiveDataIndication()函数中添加
HalUARTWrite(0,
buf,
(byte)osal_strlen((void)buf
));
HalUARTWrite(0,"\n",1);
CC2530有两个串口可以配置,具体可以看datasheet,里面有说明位置0和位置1时对应的串口RX和TX,这个可以自己配置,如果你嫌麻烦的话,直接可以使用协议栈程序使用它的默认配置,协议栈默认配置是使用P0_2作为RX端,P0_3作为TX端。可以使用RS232的RX端和CC2530的TX端相连;RS232的TX端和CC2530的RX端相连。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)