基础
工程类型
CoordinatorEB -> 协调器
RouterEB -> 路由器
EndDeviceEB -> 终端节点
组网点灯
利用 Z-Stack 协议栈实现组网成功后 1 个 LED 常亮
利用 Z-Stack 协议栈实现组网成功后 2 个 LED 常亮
修改SampleApp.c中的SampleApp_ProcessEvent();
uint16 SampleApp_ProcessEvent( uint8 task_id, uint16 events ){ ··· if ( (SampleApp_NwkState == DEV_ZB_COORD) || (SampleApp_NwkState == DEV_ROUTER) || (SampleApp_NwkState == DEV_END_DEVICE) ) { //修改位置 // Start sending the periodic message in a regular interval. osal_start_timerEx( SampleApp_TaskID, SAMPLEAPP_SEND_PERIODIC_MSG_EVT, SAMPLEAPP_SEND_PERIODIC_MSG_TIMEOUT ); } ···}#组网闪烁
利用 Z-Stack 协议栈实现组网成功 1 个 LED 闪烁,周期0.5 秒
利用 Z-Stack 协议栈实现组网成功 1 个 LED 闪烁,周期1 秒
利用 Z-Stack 协议栈实现组网成功 1 个 LED 闪烁,周期2 秒
利用 Z-Stack 协议栈实现组网成功 2 个 LED 同时闪烁,周期2秒(P1.0和P1.4)
利用 Z-Stack 协议栈实现组网成功 1 个 LED 闪烁,周期3 秒
利用 Z-Stack 协议栈实现组网成功 2 个 LED 同时闪烁,周期3 秒(P1.0 和P1.4)
修改SampleApp.h中的SAMPLEAPP_SEND_PERIODIC_MSG_TIMEOUT;
#define SAMPLEAPP_SEND_PERIODIC_MSG_TIMEOUT 5000//单位ms修改SampleApp.c中的SampleApp_ProcessEvent();
uint16 SampleApp_ProcessEvent( uint8 task_id, uint16 events ){ ··· if ( events & SAMPLEAPP_SEND_PERIODIC_MSG_EVT ) { //修改位置 // Send the periodic message SampleApp_SendPeriodicMessage(); // Setup to send message again in normal period (+ a little jitter) osal_start_timerEx( SampleApp_TaskID, SAMPLEAPP_SEND_PERIODIC_MSG_EVT, (SAMPLEAPP_SEND_PERIODIC_MSG_TIMEOUT + (osal_rand() & 0x00FF)) );
// return unprocessed events return (events ^ SAMPLEAPP_SEND_PERIODIC_MSG_EVT); } ···}串口发送
利用 Z-Stack 协议栈串口发送字符串“hello”
利用 Z-Stack 协议栈串口发送字符串“hello world”
利用 Z-Stack 协议栈串口发送字符串“hello iot”
利用 Z-Stack 协议栈串口发送字符串“happy”
利用 Z-Stack 协议栈串口发送字符串“I get data”
修改预编译
ZTOOL_P1xMT_TASKxMT_SYS_FUNCxMT_ZDO_FUNCLCD_SUPPORTED=DEBUG修改MT_UART.h的MT_UART_DEFAULT_BAUDRATE
#define MT_UART_DEFAULT_BAUDRATE HAL_UART_BR_9600修改MT_UART.h的MT_UART_DEFAULT_OVERFLOW
#define MT_UART_DEFAULT_OVERFLOW FALSE修改SampleApp.c中的SampleApp_Init();
void SampleApp_Init( uint8 task_id ){ SampleApp_TaskID = task_id; SampleApp_NwkState = DEV_INIT; SampleApp_TransID = 0;
MT_UartInit ();//修改波特率 关流控 MT_UartRegisterTaskID(task_id);// 登记任务号 HalUARTWrite(0,"Hello World",11);//发送 // Device hardware initialization can be added here or in main() (Zmain.c). // If the hardware is application specific - add it here. // If the hardware is other parts of the device add it in main(). ···}