实现A9与下位机的交互

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/feit2417/article/details/84917300

写在最前面

华清远见教育集团
15年专注高端IT培训
做良心教育,做专业教育,做受人尊敬的职业教育

创客学院官网:http://www.makeru.com.cn/
华清远见创客学院嵌入式课程链接:http://www.makeru.com.cn/emb
华清远见创客学院物联网课程链接:http://www.makeru.com.cn/iot

正文

本文重点是实现A9应用层与下位机的交互,关注应用层对数据包的分析和处理方法。

A9应用层程序通过驱动层实现交互,应用程序调用驱动提供的接口,使用起来也比较简单。驱动层涉及到USB-串口协议,本人没有涉及。硬件上需要先完成对USB、串口驱动的移植,前面已经有过介绍https://blog.csdn.net/feit2417/article/details/84912433

代码分析


主程序

整个流程很简单:打开设备节点 --> 配置串口模式 --> 发送下位机命令 --> 轮询查询&解析送来的数据包 --> 打印输出信息。

串口配置

波特率115200,8位数据位,无奇偶校验,1位停止位。

set_com_config(fd, 115200, 8, 'N', 1);

具体通过函数设定如下

命令发送

这里向下位机发送命令码0x61,控制led

unsigned char led_ch = 0x61;
write(fd,&led_ch,1); sleep(2);

接收数据包并打印出来

调用了驱动层提供的read方法

打印出传感器采集到的数据信息

最终效果

接收到数据

猜你喜欢

转载自blog.csdn.net/feit2417/article/details/84917300