当前位置:网站首页>四位数显表头设计
四位数显表头设计
2022-08-05 03:52:00 【天外飞仙CUG】
去年帮别人定制了一个四位数显小表头,可以用于测量4-20mA或者0-5V、0-10V输出的的各种传感器,可设置显示范围、上下限报警灯。由于后面更改方案,此方案暂时搁置不用。今天来分享一下软硬件的设计过程。
1.硬件设计
1.1电源
电源采用一个TL431+一个三极管构成线性稳压电路。采用这种方式,一方面是因为成本较低,另一方面,可以做大较大的电源输入范围(普通的1117-3.3等芯片输入范围也就到16V)。另外,TL431还可以为ADC提供参考电压。
1.2显示设计
可以使用单片机直接驱动数码管,但是会占用较多的IO口,且软件设计上稍复杂,这里采用一个TM1650驱动一个4位共阴极数码管。
1.3单片机及AD采样
单片机使用STM32G030F6,内置ADC支持硬件过采样,可以达到16位分辨率。采集电流或电压,通过选择合适的电阻即可。采集4-20mA电流时,R12为0R,R4为150R。采样电压时,R12和R4选择合适的电阻分压,使输入范围在3.3V以内。如果是直接采集电源电压,短接R13即可。
另外一路ADC通道采集TL431的VREF引脚,作为参考电压。
1.4报警设计
两个光耦隔离报警(超高报警、超低报警)输出,外部增加了三极管,用于驱动继电器等较大电流的设备。另外板载一个蜂鸣器(无源),同时引出蜂鸣器接口,也可外接蜂鸣器。
1.5按键
两个按键用于设置显示参数、报警参数、校准等。两个按键同时引出到端子上,也可外接按键。同时2个按键使用的是串口功能的引脚,可修改程序实现串口输出及设置。
最终的PCB板如下,背面为数码管。
2.软件设计
软件上,使用STM32CubeMx设计,使用硬件I2C1接口驱动TM1650。使用了2个ADC通道采集输入电流和TL431的参考电压。使用TIM3CH1输出PWM波驱动蜂鸣器。其它就是2个报警IO和2个按键IO。如下:
软件实现功能如下:
东西只做了一版,软硬件设计上可能还不太完善,仅供参考。
手上还剩了十几个,有人需要的话可以直接在淘宝拍(25元包邮,送原理图和源代码):
https://item.taobao.com/item.htm?spm=a1z10.1-c.w4004-8192824768.10.26ba1b9dUXLv4R&id=668157221254
如果只需要源码和原理图的话,拍下面的链接(2元)。开发不易,希望大家多包涵和支持。
https://item.taobao.com/item.htm?spm=a21dvs.23580594.0.0.621e3d0dr3HE70&ft=t&id=679567748409
边栏推荐
- 运维监控系统之Open-Falcon
- Developing Hololens encountered The type or namespace name 'HandMeshVertex' could not be found..
- JeeSite新建报表
- 包拉链不可用,但是是被另一个包。
- Spark基础【介绍、入门WordCount案例】
- 【Mysql进阶优化篇02】索引失效的10种情况及原理
- Thinking (88): Use protobuf custom options for multi-version management of data
- leetcode-每日一题1403. 非递增顺序的最小子序列(贪心)
- Use Unity to publish APP to Hololens2 without pit tutorial
- 银行数据采集,数据补录与指标管理3大问题如何解决?
猜你喜欢
Bubble Sort and Quick Sort
MRTK3开发Hololens应用-手势拖拽、旋转 、缩放物体实现
Developing Hololens encountered The type or namespace name 'HandMeshVertex' could not be found..
BI业务分析思维:现金流量风控分析(二)信用、流动和投资风险
事件解析树Drain3使用方法和解释
The test salary is so high?20K just graduated
Leading the highland of digital medicine, Zhongshan Hospital explores to create a "new paradigm" for future hospitals
presto启动成功后出现2022-08-04T17:50:58.296+0800 ERROR Announcer-3 io.airlift.discovery.client.Announcer
2022-08-04T17:50:58.296+0800 ERROR Announcer-3 io.airlift.discovery.client.Announcer appears after successful startup of presto
UE4 通过重叠事件开启门
随机推荐
token、jwt、oauth2、session解析
结构体初解
Growth-based checkerboard corner detection method
Spark Basics [Introduction, Getting Started with WordCount Cases]
markdown如何换行——md文件
2022 Hangzhou Electric Multi-School 1st Game
UE4 opens doors with overlapping events
用Unity发布APP到Hololens2无坑教程
Dameng 8 database export and import
关于#SQL#的迭代、父子结构查询问题,如何解决?
Based on holding YOLOv5 custom implementation of FacePose YOLO structure interpretation, YOLO data format conversion, YOLO process modification"
2022软件测试工程师最全面试题
Hard power or soft power, which is more important to testers?
Call Alibaba Cloud oss and sms services
基于生长的棋盘格角点检测方法
[Qixi Festival] Romantic Tanabata, code teaser.Turn love into a gorgeous three-dimensional scene and surprise her (him)!(send code)
Never put off till tomorrow what you can put - house lease management system based on the SSM
UE4 第一人称角色模板 添加蹲伏功能
The most comprehensive exam questions for software testing engineers in 2022
DNS被劫持如何处理?