【前言】
hello 大家好,今天给大家讲一讲基于51单片机的安全带检测模拟系统。
本次采用的硬件板子是钛叔最近设计的一款基于51单片机的多功能板(编号A01-1),利用该板子再结合相应的小模块就可以满足绝大多数的项目应用,该多功能板的功能和兼容性都十分强大,接下来钛叔会详细介绍一下设计细节。本次项目采用的是A01-1多功能板 + S001 HX711模块 + S022 ISD1820录音播报模块的组合。
1、点火按键按下后,黄灯亮,表示点火;再按一次,黄灯灭,表示熄火。
2、点火后,如果压力传感器没检测到压力,无任何操作;
3、点火后,如果检测到压力超过一定值,且拨动开关关上(系好了安全带),绿灯闪烁。
如果开关拨下(没系好了安全带),这时红灯闪烁报警,同时语音提示:“请系好安全带”。直到安全带系好后,语音停止同时红灯灭,绿灯闪烁。(仿真为蜂鸣器报警)
【仿真设计】
下面是该项目的仿真图,模块化设计并配有功能说明,实现良好的易读性和移植性。(仿真文件为V8.11版本的,大家可以在此下载安装该版本:http://www.jh-tec.cn/archives/5696)
【硬件电路设计】
下面是该设计的整体原理图和PCB设计概览,原理图模块化分布,每部分都备注有对应的功能名称,便于阅读;PCB设计采用的3D封装的器件,主要是方便配合结构设计。
A01-1多功能主板原理图:
多功能主板PCB(支持三种显示器:LCD12864、LCD1602以及0.96寸OLED,本次项目采用的是LCD1602):
*S001 HX711模块 称重芯片采用的是海芯的HX711,模块的接口可以和传感器直接对插,HX711模块原理图PCB:
* S022 ISD1820录音播报模块 原理图和PCB如下图所示,该模块芯片采用的是ISD1820,模块设计的有电源指示灯和录音指示灯,可通过跳线帽选择直通和循环两种模式,通过三个按键可以实现录音、触发放音以及点动放音,可以通过2PIN的XH2.54接口外接扬声器喇叭。
下面详细介绍控制主板的一些设计注意点哈,抛砖引玉~
1、关于MCU 多功能主板的MCU可以根据具体的项目需求来决定,大多数情况下普通51就能满足,当然有些场合,比如同时需要两路串口的情况,就可以采用加强51(STC12C5A60S2),44PIN的两种芯片是完全兼容的。本次项目采用的是STC89C52RC,最小系统如下图所示,很简单,这里不赘述具体原理。另说一句,在我们调试MCU小系统的时候,如果工作异常,无论什么类型芯片,首先第一步就是检查芯片的供电电源是否正常,再之后检测晶振和复位,绝大多数的问题都是出在这三个地方,钛叔记得以前学生时代有一次调试51单片机就始终下不进去程序,电源正常,复位也正常,最后发现就是晶振的谐振电容错焊成了1000pf,导致晶振起振失败,诸如类似的问题都可能导致芯片启动失败,所以大家按照我上述的三个点出发去调试,就一定能够解决问题。
(下载接口钛叔这里采用的XH2.54,大家可以在钛叔的店铺采购下载器,通过XH2.54连接线可以直接相连,避免插错的情况)
2、关于电源 如下图所示,钛叔在设计电源接口的时候根据实际使用情况多方面考虑,设计了三种接口方式——排针、WJ128接线端子以及miniUSB,排针可以用在杜邦线供电的情况,接线端子可以用在电源裸线供电的情况(这两种情况供电根据板载丝印正确插入,切记别插反),miniUSB供电的方式比较推荐,可以避免插反烧坏板子情况,钛叔这里之所以采用miniUSB而不是microUSB,主要原因是由于microUSB体积比较小,在开放性板子上面容易多次拔插情况下给搞坏导致接触不良(所谓开放性板子就是无结构件固定的裸板),所以这里钛叔没有采用microUSB。
电源开关部分钛叔采用的是8.5x8.5的自锁开关,这里需要注意就是自锁开关的方向,有部分同学焊接反了导致按下时候为电源关断,弹上来是电源闭合。
钛叔在该设计板上习惯性放了三个MRK点,如果大家有需要量产的需求,且板子比较大不会涉及拼版的情况,就记得放,如果后面是需要拼版的话,可以在最终的大板上放MRK点。
多功能板载具有一路3.3V的LDO,主要是给板上3.3V模块供电的,这里需要注意LDO尽量要选用电流达到1A以上的,以满足部分功耗较大的模块。钛叔这里使用的是AMS117,该芯片的性价比很高,推荐大家使用,不过一定要去代理商或者嘉立创拿货,淘宝上很多假货。
3、关于显示 多功能板设计了LCD1602、LCD12864以及OLED三种显示器,大家可以根据自己的项目需求来选择,如果显示内容比较多,比如贪吃蛇之类的游戏的项目就可以选择LCD12864,如果需要注重显示效果就可以选择OLED,如果显示内容不多也不怎么注重效果就可以选择LCD1602。本次项目钛叔采用的就是LCD1602,这里需要注意如果用单片机的P0接口,记得加上拉电阻,这是该芯片决定的,不明白的朋友可以去看STC89C52RC数据手册哈;另外,LCD1602的R/W引脚,大多数的情况下直接接地保持写操作就行,如果是一些项目需要读操作的话,就需要把该引脚接入单片机(比如基于51单片机的示波器或者贪吃蛇这种项目);VL引脚是调试对比度的,如果事先不知道这个分压参数,用的是电位器的话,很可能第一次使用时候分压不合适导致显示屏亮的但没有东西,就误以为是自己程序的问题,这个问题钛叔以前也犯过,捣鼓了半天才发现是对比度没有调好,其实程序早已经再运行,如果大家是在某宝上买的液晶屏,大多数都是满足下边的分压参数,大家可以参考参考哈。
4、关于按键 A01多功能板载有6个按键,可以满足绝大多数的应用,如果不够的话,可以通过外接矩阵键盘的方式扩展。板载按键的型号钛叔采用的是贴片的6*6轻触按键,这里需要提醒大家的是,如果大家采用的回流焊机子,一定要注意购买耐高温的元器件,一般如果用编带的按键基本能过高温,如果是袋装的散件很可能就过不了,按钮部分很容易被烤坏,这里提醒大家一下。
5、关于报警 A01多功能板载有声光报警,报警电路部分原理很简单,大家可以参考下图,一个蜂鸣器加LED就可以实现,这里需要注意两个地方,第一是蜂鸣器建议大家选用有源的,操作简单很多,另外就是电压需要选择对应的,钛叔这里采用的是5V的HNB09A05;第二就是这里的三极管建议大家采用PNP管子,原因是该单片机上电默认为高电平,如果这里采用的NPN管子,上电瞬间就会声光报警(即便程序里边该IO口初始化为低),所以这里我们采用PNP管子来避开这种情况。
6、关于时钟 A01多功能板载有时钟芯片,采用的芯片是常用的DS1302,该部分的电路设计很简单,数据接口记得加上拉电阻。另外,关于晶振部分是否需要加电容,这个钛叔测试过加和不加影响都不大,如果您不放心,可以在晶振两边备份两个电容。
7、接口 A01多功能板最大的特点就是接口兼容性强,具备3PIN、4PIN、8PIN、WIFI模块接口、AS608指纹模块接口、NRF24L01无线模块接口以及矩阵键盘模块接口,这些接口对应的模块钛叔的店铺都有出售,模块的线序都是一一对应,采用的都是XH2.54,可以用排线直接对插,避免插座的情况,非常的方便!大家可以在钛叔的店铺选购。
8、关于PCB布局布线 该芯片的外围比较简单,工作频率也不算高,大家根据器件的原理图位置合理放置就OK,关于GND尽量要保证底层的地完整,不要切割太多,上层的每个GND焊盘附件放置数个过孔,具体的设计大家可以参考我下图。
【程序设计】
该部分后面再录视频给大家讲解。
【实物】
下面是钛叔做出的实物,是不是看着挺漂亮的😄!调试一切OK,功能正常。
演示视频:
多功能主板:https://www.bilibili.com/video/BV16K411F7R9/
本次项目:https://www.bilibili.com/video/BV1rb4y1a7DA/
资料地址:
链接:https://pan.baidu.com/s/1AqFk5gsMtW0Xf5shs_FLOw
提取码:styd