STM32单片机的实验用接口系统设计(2)

随着现代工业的发展,人们对实时控制这方面的要求越来越高,8位51单片机的不足就开始暴露出来,51单片机相比较而言功能还是相对单一的,主要是控制


随着现代工业的发展,人们对实时控制这方面的要求越来越高,8位51单片机的不足就开始暴露出来,51单片机相比较而言功能还是相对单一的,主要是控制IO口进行的电平变化,想要实现更多的功能就需要在外部挂接更多的驱动芯片和外部设备,传统的51单片机只有一个串口,如果需要使用一些通讯协议,如使用SPI总线、CAN总线、I2C总线则需要我们自己去模拟通讯协议,对于工作人员不仅仅加大负担单片机工作还不稳定。于是在这种大环境之下,出现了16位的单片机,比如PIC单片机和MSP430单片机等等。在最近几年,基于M3内核的STM32单片机更是风靡全球,当今世界的发展趋势更是嵌入式、系统式的发展,单片机STM32和嵌入式系统UCS发展十分的迅速。随着社会微电子技术以及集成电路设计工具的发展,单片机会有比较大的发展,也会有很好的前景。

1.2  课题背景与目的

通过测量从现场获取各种参数,利用科学计算的方法,结合先进的技术,能够使每一个环节得到有效控制,不仅仅保证了标准化生产同时也提高了产品质量降低了成本。所以不管是温度测量、湿度测量、压力测量、速度测量亦或是光照度测量,都被广泛地应用于各种各样的工业生产之中。所使用的传感器必须是将非电量转换成电量的传感器[2]。对应的显示装置有数码管、点阵、液晶屏和彩屏等等。

为了方便实用,采用了DS18B20温度传感器,这个数字传感器十分简便而且在民用或者工业上也使用地十分广泛,它的特色在于它的单总线时序以及价格。彩屏价格昂贵操作复杂,而数码管则太过于简陋且需要占用有大量的I/O口。综合考虑采用液晶屏无疑是最经济实惠的,液晶屏也有很多种类,最简单的就是LCD1602其本质也是一种点阵[3]。当今的主流单片机是STM32,它端口多、处理速度快,有四个驱动单元和四个被动单元,有CAN控制器、I2C接口、SPI模块、DMA模块、ADC接口和定时器等等。对于51单片机而言很多需要外部器件才能实现的功能都被集成在STM32单片机的内部,只需要调用相应的寄存器就可以使用。

当今社会是个信息化的时代,随着电脑的普及,单片机与PC端共同工作更加地成为主流。在硬件上PC端的电平主要是RS-232电平和最近几年流行的USB电平。它们与单片机的TTL电平都不匹配,所以都需要进行电平转换。在软件上要实现PC机与单片机的连线则需要使用上位机语言在PC端编程,也可以使用串口助手。

单片机实现温度采集的功能而PC端则实现控制单片机以及获取数据的功能,能够使两者互相帮助协同工作就是本课题的目的。

2  硬件设计

2.1  总体框架

进行本实验需要一台PC机、一块STM32最小系统板、电平转换器、温度传感器和显示装置。在PC端需要先行下载串口助手,单片机最小系统板则应该具备上电复位电路、晶振电路、降压电路和电源指示电路,温度传感器用的是DS18B20,它的特点是单总线时序的传输规则(需要使用软件模拟),为了更好地显示温度值,这里没有采用传统的数码管而是用了不带字符的液晶显示屏LCD1602,价格便宜且显示清晰。

图2.1 总体框架图

如上流程图所示,电脑通过串口发送数据给单片机,单片机根据收到的数据判断PC端需要它执行的步骤是什么,然后返回给PC机一个数据表示它已经成功接收到了信号[4]。不管是单片机的发送还是接收都需要使用串口助手设置相应波特率等才能进行通讯。单片机和温度传感器之间是单线接口控制,当单片机运行后立即启动温度采集,采集到的温度通过这一根总线传递给单片机。与此同时与单片机采用三线接口的液晶显示屏LCD1602也开始工作,单片机将接收到的温度值通过8根数据线并行传递给液晶显示屏去显示温度数值。总得来说就是电脑控制单片机工作,单片机控制温度传感器和液晶屏工作。