当前位置:网站首页>Four-digit display header design
Four-digit display header design
2022-08-05 03:59:00 【Feixian CUG】

Last year, I helped others customize a four-digit display head, which can be used to measure various sensors with 4-20mA or 0-5V, 0-10V output.Set the display range, upper and lower limit alarm lights.Due to later changes to the plan, this plan is temporarily put on hold.Today, let's share the design process of software and hardware.
1. Hardware Design
1.1 Power
The power supply adopts a TL431+a triode to form a linear voltage regulator circuit.In this way, on the one hand, the cost is low, and on the other hand, the input range of the power supply can be enlarged (the input range of ordinary chips such as 1117-3.3 is only 16V).In addition, TL431 can also provide reference voltage for ADC.

1.2 Display Design
The single-chip microcomputer can be used to drive the digital tube directly, but it will occupy more IO ports, and the software design is slightly complicated. Here, a TM1650 is used to drive a 4-bit common cathode digital tube.

1.3 MCU and AD sampling
The microcontroller uses STM32G030F6, the built-in ADC supports hardware oversampling, and can achieve 16-bit resolution.Collect current or voltage by selecting an appropriate resistor.When collecting 4-20mA current, R12 is 0R and R4 is 150R.When sampling the voltage, R12 and R4 select the appropriate resistor divider to make the input range within 3.3V.If it is to directly collect the power supply voltage, short-circuit R13.
Another ADC channel collects the VREF pin of TL431 as a reference voltage.


1.4 Alarm Design
Two optocoupler isolation alarms (super-high alarm, ultra-low alarm) outputs, and external triodes are added to drive relays and other devices with larger currents.In addition, there is a buzzer (passive) on the board, and the buzzer interface is also led out, and the buzzer can also be externally connected.

1.5 keys
Two buttons are used to set display parameters, alarm parameters, calibration, etc.The two buttons can be led out to the terminal at the same time, and external buttons can also be connected.At the same time, the two buttons use the pins of the serial port function, and the program can be modified to realize the serial port output and setting.
The final PCB board is as follows, with the digital tube on the back.

2. Software design
In software, it is designed with STM32CubeMx and drives TM1650 with hardware I2C1 interface.Two ADC channels are used to collect the input current and the reference voltage of the TL431.Use TIM3CH1 to output PWM wave to drive the buzzer.The others are 2 alarm IOs and 2 key IOs.As follows:

The software implements the following functions:




Things are only made one version, the software and hardware design may not be perfect, for reference only.
There are more than a dozen left on hand, if anyone needs it, they can take pictures directly on Taobao (25 yuan for free shipping, schematic diagram and source code):
https://item.taobao.com/item.htm?spm=a1z10.1-c.w4004-8192824768.10.26ba1b9dUXLv4R&id=668157221254
If you only need the source code and schematic diagram, take the link below (2 yuan).The development is not easy, I hope everyone will bear with and support.
https://item.taobao.com/item.htm?spm=a21dvs.23580594.0.0.621e3d0dr3HE70&ft=t&id=679567748409
边栏推荐
- 不看后悔,appium自动化环境完美搭建
- 包拉链不可用,但是是被另一个包。
- pyqt5 + socket 实现客户端A经socket服务器中转后主动向客户端B发送文件
- [MRCTF2020] PYWebsite
- bytebuffer internal structure
- 七夕节赚徽章拉
- Web3.0 Dapps - the road to the future financial world
- Use CH341A to program external Flash (W25Q16JV)
- GC Gaode coordinate and Baidu coordinate conversion
- token、jwt、oauth2、session解析
猜你喜欢

Open-Falcon of operation and maintenance monitoring system

Based on holding YOLOv5 custom implementation of FacePose YOLO structure interpretation, YOLO data format conversion, YOLO process modification"

4T硬盘剩余很多提示“No space left on device“磁盘空间不足

How to wrap markdown - md file

【8.1】代码源 - 【第二大数字和】【石子游戏 III】【平衡二叉树】

炎炎夏日教你利用小米智能家居配件+树莓派4接入Apple HomeKit

Android interview question - how to write with his hands a non-blocking thread safe queue ConcurrentLinkedQueue?

10 years of testing experience, worthless in the face of the biological age of 35

Some conventional routines of program development (1)

Mysql's redo log detailed explanation
随机推荐
【背包九讲——01背包问题】
The most comprehensive exam questions for software testing engineers in 2022
XMjs cross-domain problem solving
程序开发的一些常规套路(一)
【树莓派】树莓派调光
This year's Qixi Festival, "love vegetables" are more loving than gifts
2022.8.4-----leetcode.1403
DEJA_VU3D - Cesium功能集 之 059-腾讯地图纠偏
C+ +核心编程
You may use special comments to disable some warnings. 报错解决的三种方式
36-Jenkins-Job Migration
多御安全浏览器 V10.8.3.1 版正式发布,优化多项内容
GC Gaode coordinate and Baidu coordinate conversion
UI自动化测试 App的WebView页面中,当搜索栏无搜索按钮时处理方法
[Paper Notes] MapReduce: Simplified Data Processing on Large Clusters
【 8.4 】 source code - [math] [calendar] [delete library 】 【 is not a simple sequence (Bonus) 】
结构体初解
How to wrap markdown - md file
How to solve the three major problems of bank data collection, data supplementary recording and index management?
How do newcomers get started and learn software testing?