APP下载

智能电子元器件柜的设计

2022-01-28明立娟董杰

电子制作 2022年1期
关键词:指示灯元器件串口

明立娟,董杰

(攀枝花学院,四川攀枝花,617000)

0 引言

随着电子信息技术的不断发展,电子元器件种类不断增加,在电子元器件柜中存放的电子元器件种类愈发庞杂繁多,用户在元器件柜中查找元器件只能靠着标签挨个查找,查找效率十分低下。因此设计一种智能查询电子元器件柜,用户通过触摸屏输入元器件名称系统便会自动搜索是否存有该元器件并提示用户查询结果,能够有效解决老式元器件柜查找和管理效率低下的问题。

1 系统设计

本设计使用STM32F103C8T6 作为主控芯片,HMI 串口屏作为人机交互界面,用户可以通过触摸屏选择添加、查询、删除功能,以及元器件型号的输入。系统使用W25Q64芯片存储大量的元器件存放信息,同时由于元器件柜中每一个存放元器件的元器件盒都安装有提示灯,因此需要有大量的指示灯需要控制,系统设计选用74HC595 位移缓冲器对单片机IO 口进行拓展,同时借助其级联功能,在原理上能够实现对单片机IO 口的无限拓展,即系统理论上可以控制的指示灯数量几乎无限制。系统总体设计框架如图1 所示。

图1 系统总体设计框图

■1.1 单片机最小系统

系统选用STM32F103C8T6 作为主控芯片其最小系统由单片机、电源、晶振电路、复位电路几大部分组成其电路图如图2 所示。单片机主要负责所有外设功能模块的驱动,元器件存储数据的管理以及系统的整体控制逻辑。

图2 单片机最小系统

■1.2 数据存储模块

在本设计中需要存储大量的元器件数据并进行合理的数据管理,故存储电路选用W25Q64 进行数据存储,其电路图如图3 所示,该芯片为64Mbit 的SPI Flash 存储芯片能够满足系统的数据存储需求。同时本系统引入FatFS 文件系统,用于众多数据文件的存储和管理。FatFS 文件系统为一种专门针对单片机的文件系统,支持SPI Flash 等多种存储媒介;有独立的缓冲区,可以对多个文件进行读/写。

图3 W25Q64 电路

在FatFS 文件系统的机制下,本系统巧妙的将元器件的存储操作转换为了文件系统中文件的创建操作,在系统存入元器件时,单片机程序通过触摸屏获取到存入元器件的名称以及存放的柜号后,系统程序则通过文件系统创建一个文件并将其命名为存入的元器件名称,并在该文件中写入该元器件所存放的元器件盒编号。经过以上操作,用户在向元器件柜中储存元器件的同时也在单片机程序运行的文件系统中创建了一个与该元器件存放信息相对应的文件,由此则将元器件的存储操作映射为了FatFS 文件系统中的文件创建于写入操作。元器件的查询则是被转换为了文件系统中的查找文件的操作和读取文件操作,在进行查找元器件时,当系统从触摸屏中获取到需要查询的元器件名称后程序便会循环读取文件系统中的所有文件名并将其与用户输入的元器件名称进行对比匹配,若有文件名匹配成功,系统则读取该文件中存储的其对应的元器件的存放位置编号并将其通过触摸屏显示出来,同时控制指示灯电路,点亮该元器件存放位置的指示灯,以达到提示用户的目的。若文件系统中没有与用户输入的元器件名称相同的文件则表示元器件柜中没有存放该类元器件,则通过触摸屏输出错误信息。元器件的移除则是被转换为了文件系统中对文件的删除操作,在执行删除元器件操作时,系统会根据用户输入搜索文件系统中与之对应的文件并将该文件删除。

由此现实中的元器件的存储,查询,删除操作被映射为了单片机中文件系统中的对文件的创建、读写、搜索、删除操作,极大的简化了元器件存放数据的管理。

■1.3 LED 指示灯模块

在本系统中LED 指示灯的数量可以针对元器件盒的数量不同自行进行增加或减少,因此该部分采用模块化设计。使用74HC595 8 位串行输入、并行输出位移缓冲器实现该功能,单片机通过SPI 串行协议控制74HC595 的输出控制LED 指示灯,同时借助其级联功能将上一个74HC595 的Q7(级联输出引脚)接到下一个74HC595 的DS(串行数据输入引脚)实现LED 指示灯的级联拓展,并且该种级联方式在硬件上几乎没有任何限制,单片机只需要占用三个引脚就可以实现近乎无线多的LED 指示灯的控制。单个LED指示灯的控制电路如图4 所示。

图4 LED 指示灯电路

■1.4 触摸屏模块

本系统使用陶晶池公司的USART HMI 屏幕作为人机交互界面,该屏幕支持用户通过专用的上位机进行二次开发,在程序设计时可以将人机交互UI设计与系统控制程序分离,在屏幕开发的上位机中设计好显示界面以及与单片机的交互指令后单片机便可以通过串口发送控制指令控制屏幕显示,也可以通过串口获取屏幕的触摸信息,结合系统的整体控制逻辑便可实现触摸屏的输入输出功能。

为了使单片机能够方便的控制触摸屏的供断电,以及控制有源蜂鸣器工作,设计使用NPN 三级管通过集电极驱动的方式驱动蜂鸣器以及控制触摸屏电源的通断,电路原理图如图5 所示。

图5 触摸屏驱动电路(供电)以及蜂鸣器驱动电路

■1.5 复位电路设计

为确保单片机系统中电路稳定可靠工作,复位电路是必不可少的一部分,复位电路的第一功能是上电复位。平常我们常用的复位方式有两种,一种是NRST 引脚的低电平复位,

通过按键复位电路给这个引脚一个低电平,让系统完成复位,另一种就是上电复位。本系统采用的复位方式为NRST引脚的低电平复位,电路图如图6 复位电路所示。

图6 复位电路

■1.6 时钟电路设计

STM32 拥有一个内部时钟,是用芯片内部振荡电路,但是精度不高,温漂也较大。外部时钟,分RC 振荡和石英晶振,RC 精度不高,成本低,石英晶振,精度高,稳定性好,根据使用场合选择,适合的时钟方式。在本系统中我们选择外部石英晶振为单片机提供稳定的时钟源。本系统使用复位电路如图7 所示。

图7 时钟电路

■1.7 电源电路设计电路

系统设计的标准输入电压为5V 但是电路上有既有需要5V 供电的外设又有需要3.3V 供电的外设,因此需要设计一个DC-DC 降压电路将5V 输入电压降压为3.3V 为部分外设供电。考虑到3.3V 部分外设消耗功率不高,因此选取LDO(低压差线性稳压器)进行降压,综合成本与性能本系统选择XC6204 作为稳压芯片。查阅数据手册可知XC2602 为LDO 器件(低压差线性稳压器)输出功率较小但是效率高,硬件电路简单。非常适合于本项目的应用场景,其具体电路如图8 所示。

图8 降压电路

2 控制方法

本设计的控制器为STM32F103C8T6,使用SPI FLASH存储大量用户数据,使用HMI 串口屏作为人机交互界面,其主要任务是实现触摸屏的人机交互逻辑,并根据用户通过触摸屏的输入控制文件系统中进行文件的创建、读写或删除等操作,同时控制74HC595 点亮或熄灭指示灯,而大量指示灯的控制通过74HC595 拓展单片机的IO 口来实现,同时借助74HC595 的级联功能完全可以实现指示灯数量的随意拓展,以达到本系统设计的功能。

3 系统程序设计

本系统采用STM32CubeMX 进行外设配置并自动生成工程文件,基于Keil-MDK 进行程序开发,同时移植FATFS文件系统进行复杂繁琐的文件存储管理,借助虚拟串口输出打印调试信息查看程序实时运行情况,借助HMI 串口屏实现复杂触控UI 界面的设计,最终完成了本系统的程序设计,实现了设计之初拟定的基本功能,使得大量的元器件存储信息得以被合理的使用的存储和使用。

图9 C 语言程序设计流程图

同时在程序软件设计中要尽可能做到方便调试和方便维护、修改,在软件设计上采用了模块化设计。使各个功能模块单独封装为独立的函数并且能够独立运行,极大的方便了程序的修改和迭代升级,提高了程序开发和维护效率。同时在程序编写过程中按照编程规范进行注释,方便阅读以及后期维护。在本设计的程序中使用了较多新知识,因此在功能实现的过程中也遇到了许多问题,经过和老师同学的探讨,以及查阅各种资料,最终成功的解决了所有问题,并完成了项目最初的拟定功能。

4 结语

本项目是基于STM32 单片机的一种智能查询电子元器件柜设计。整体方案使用W25Q64 存储芯片引入FatFS 文件系统对元器件存储数据进行存储和管理,使用HMI 串口屏方案设计用户交互界面,通过74HC595 进行IO 口的拓展以控制LED 指示灯并借助其级联功能实现LED 指示灯的任意增加或减少。本设计在软硬件设计上都基本上满足了设计之初的功能设定。实现了电子元器件的便捷式管理与查询。

猜你喜欢

指示灯元器件串口
国产元器件选型方式及流程分析
LGA封装元器件批量除金方法在航天领域的应用
空间科学装置元器件替代关系与数字化表征研究
一闪一闪亮晶晶浅析笔记本身上的指示灯
“软”指示灯同时监控键盘磁盘网络
MCS—51单片机中的多串口通讯技术的应用
一种矩阵键盘的MCU实现
全国计算机等级考试机房准备工作探讨
微机串口的测试诊断
Multisim在脉宽调制高亮LED驱动电路仿真应用