串口通信软件设计

4.3.2PM2.5模块软件设计

STM32F103C8T6有三个串口,而且三个串口都是半双工串口。串口就是串行接口的意思,指数据的发送是一位一位的传输的,其中RX引脚为接收引脚,TX引脚为发送引脚,半双工的意思为RX和TX不能同时工作,只有当RX不工作是,TX才可以工作,反之亦然,只有当TX不工作时,RX才可以工作。

配置串口时需要配置波特率、数据位、奇偶校验位、停止位灯通信参数。其中波特率为串口通信的速率,也就是串口通信时每秒钟可以传输多少个二进制位。数据位为要发送的数据字长为多少,一般为8位。奇偶校验位指所发数据1的总数为奇数还是偶数。停止位一般为1。

同时配置串口接收函数需要写中断函数,这样才能将接收到的数据保存下来,配置串口的函数如图4.19所示。
在这里插入图片描述

图4.19(a) 串口一初始化
在这里插入图片描述

图4.19(b) 串口一初始化

本系统采用的PM2.5模块连接STM32F103C8T6的USART1,当串口一给PM2.5模块模块发0xaa,0x01,0x00,0x00,0x00,0x00,0x01,0x66,0xbb为开启PM2.5的风扇命令,
给PM2.5模块模块发0xaa,0x02,0x00,0x00,0x00,0x00,0x01,0x67,0xbb为获取传感器中PM2.5和PM10的数据的命令,
给PM2.5模块模块发0xaa,0x03,0x00,0x00,0x00,0x00,0x01,0x68,0xbb为关闭PM2.5的风扇的命令。


版权声明:本文为HONGCKM原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。