include haluart h include UARTPRINT h include TIMER

  • Slides: 31
Download presentation

实训步骤 #include "hal_uart. h" #include "UART_PRINT. h" #include "TIMER. h" #include "get_adc. h" #include

实训步骤 #include "hal_uart. h" #include "UART_PRINT. h" #include "TIMER. h" #include "get_adc. h" #include "sh 10. h" #include <string. h> #define MAX_SEND_BUF_LEN 128 #define MAX_RECV_BUF_LEN 128 static uint 8 p. Tx. Data[MAX_SEND_BUF_LEN]; //定义无线发送 缓冲区的大小 战略性信息产业教育服务提供商 联世界 育未来——创新物联教育

实训步骤 static uint 8 p. Rx. Data[MAX_RECV_BUF_LEN]; //定义无线接收 缓冲区的大小 #define MAX_UART_SEND_BUF_LEN 128 #define MAX_UART_RECV_BUF_LEN

实训步骤 static uint 8 p. Rx. Data[MAX_RECV_BUF_LEN]; //定义无线接收 缓冲区的大小 #define MAX_UART_SEND_BUF_LEN 128 #define MAX_UART_RECV_BUF_LEN 128 uint 8 u. Tx. Data[MAX_UART_SEND_BUF_LEN]; //定义串口发 送缓冲区的大小 uint 8 u. Rx. Data[MAX_UART_RECV_BUF_LEN]; //定义串口接 收缓冲区的大小 uint 16 u. Txlen = 0; uint 16 u. Rxlen = 0; 战略性信息产业教育服务提供商 联世界 育未来——创新物联教育

实训步骤 void Config. Rf_Init(void) { basic. Rf. Config. pan. Id // 无线RF初始化 = PAN_ID;

实训步骤 void Config. Rf_Init(void) { basic. Rf. Config. pan. Id // 无线RF初始化 = PAN_ID; //Zig. Bee的ID号设 置 basic. Rf. Config. channel = RF_CHANNEL; //Zig. Bee的频 basic. Rf. Config. my. Addr = MY_ADDR; //设置本机地址 道设置 basic. Rf. Config. ack. Request = TRUE; //应答信号 while(basic. Rf. Init(&basic. Rf. Config) == FAILED); //检测 Zig. Bee的参数是否配置成功 basic. Rf. Receive. On(); } // 打开RF 战略性信息产业教育服务提供商 联世界 育未来——创新物联教育

实训步骤 第四步,编写协调器程序 #include "hal_defs. h" #include "hal_cc 8051. h" #include "hal_int. h" #include "hal_mcu.

实训步骤 第四步,编写协调器程序 #include "hal_defs. h" #include "hal_cc 8051. h" #include "hal_int. h" #include "hal_mcu. h" #include "hal_board. h" #include "hal_led. h" #include "hal_rf. h" #include "basic_rf. h" #include "hal_uart. h" 战略性信息产业教育服务提供商 联世界 育未来——创新物联教育

实训步骤 #define MAX_SEND_BUF_LEN 128 #define MAX_RECV_BUF_LEN 128 static uint 8 p. Tx. Data[MAX_SEND_BUF_LEN]; //定义无线发送

实训步骤 #define MAX_SEND_BUF_LEN 128 #define MAX_RECV_BUF_LEN 128 static uint 8 p. Tx. Data[MAX_SEND_BUF_LEN]; //定义无线发送 缓冲区的大小 static uint 8 p. Rx. Data[MAX_RECV_BUF_LEN]; //定义无线接收 缓冲区的大小 #define MAX_UART_SEND_BUF_LEN 128 #define MAX_UART_RECV_BUF_LEN 128 uint 8 u. Tx. Data[MAX_UART_SEND_BUF_LEN]; //定义串口发送 缓冲区的大小 战略性信息产业教育服务提供商 联世界 育未来——创新物联教育

实训步骤 static basic. Rf. Cfg_t basic. Rf. Config; void My. Byte. Copy(uint 8 *dst,

实训步骤 static basic. Rf. Cfg_t basic. Rf. Config; void My. Byte. Copy(uint 8 *dst, int dststart, uint 8 *src, int srcstart, int len) { int i; for(i=0; i<len; i++) { *(dst+dststart+i)=*(src+srcstart+i); } } 战略性信息产业教育服务提供商 联世界 育未来——创新物联教育

实训步骤 uint 16 Recv. Uart. Data(void) { uint 16 r_Uart. Len = 0; uint

实训步骤 uint 16 Recv. Uart. Data(void) { uint 16 r_Uart. Len = 0; uint 8 r_Uart. Buf[128]; u. Rxlen=0; r_Uart. Len = hal. Uart. Rx. Len(); while(r_Uart. Len > 0) { r_Uart. Len = hal. Uart. Read(r_Uart. Buf, sizeof(r_Uart. Buf)); 战略性信息产业教育服务提供商 联世界 育未来——创新物联教育

实训步骤 // 无线RF初始化 void Config. Rf_Init(void) { basic. Rf. Config. pan. Id = PAN_ID;

实训步骤 // 无线RF初始化 void Config. Rf_Init(void) { basic. Rf. Config. pan. Id = PAN_ID; //Zig. Bee的ID号设 置 basic. Rf. Config. channel = RF_CHANNEL; //Zig. Bee的频道设置 basic. Rf. Config. my. Addr = MY_ADDR; //设置本机地址 basic. Rf. Config. ack. Request = TRUE; //应答信号 while(basic. Rf. Init(&basic. Rf. Config) == FAILED); //检测Zig. Bee的参数是否配置成功 战略性信息产业教育服务提供商 联世界 育未来——创新物联教育