Zigbee协议栈初使用(一)串口发送

Zigbee协议栈初使用(一)串口发送

1、Zmain和App文件夹内是主要,其中App主要用到,也是添加代码文件的地方,主要在SampleApp.c和SampleApp.h中;
2、在MT层打开MT_USART.c是写好的串口驱动,可以直接使用;
3、初始化在SampleApp中的SampleApp_Init()中完成;
注:需要加#include“MT_USART.h”
这里写图片描述
4、MT_UartInit()中
  uartConfig.baudRate = MT_UART_DEFAULT_BAUDRATE; 是配置波特率,当 go to definition of MT_UART_DEFAULT_BAUDRATE,可以看到:默认的波特率是 38400bps, 修改成 115200bps, 修改如下:
#define MT_UART_DEFAULT_BAUDRATE HAL_UART_BR_115200

  uartConfig.flowControl = MT_UART_DEFAULT_OVERFLOW;语句是配置流控的,进入定义可以看到:
#define MT_UART_DEFAULT_OVERFLOW TRUE
默认是打开串口流控的,如果你是只连了 TX/RX 2 根线的方式务必关流控
#define MT_UART_DEFAULT_OVERFLOW FALSE
注意:2 根线的通讯连接务必关流控,不然是永远收发不了信息的
5、添加预编译
这里写图片描述
这里写图片描述

之后编译执行。

使用 Zigbee 协议栈实现每秒发送串口数据,你可以按照以下步骤进行操作: 1. 始化串口:首先,你需要始化 Zigbee 设备的串口模块,包括波特率、数据位、停止位和校验位等设置。 2. 配置定时器:接下来,你需要配置个定时器,使其以适当的频率生成中断。你可以设置定时器的计数值和预分频器,以实现每秒触发次中断。 3. 中断处理函数:定义个中断处理函数,在定时器中断发生时被调用。在该函数中,你可以编写代码来发送串口数据。 4. 启用定时器和中断:最后,你需要启用定时器和相关的中断,以便定时器中断能够正常触发。 以下是个示例代码框架,可帮助你实现每秒发送串口数据: ```c // 串口始化函数 void uart_init() { // 配置串口参数 // ... } // 定时器中断处理函数 #pragma vector = TIMER_VECTOR __interrupt void timer_isr(void) { // 发送串口数据 // ... } // 主函数 int main() { // 始化串口 uart_init(); // 配置定时器 TCCR1B = /* 设置定时器计数值和预分频器等 */; TIMSK1 = (1 << TOIE1); // 允许定时器溢出中断 // 启用总中断 sei(); while (1) { // 主循环 // ... } } ``` 请根据你的具体需求和硬件设置,适当修改上述代码,并确保在修改代码之前对其进行适当的测试。此外,你还需要根据 Zigbee 协议栈的规范和文档来添加相应的功能和接口,以实现串口数据的发送
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值