自学内容网 自学内容网

51单片机模数转换应用——(0~5V)直流数字电压表

目标实现功能

单片机控制12位A/D转换器TLC2543测量输入的电压信号(测量范围为0~5V),将测量电压值(保留3位小数)用数码管动态显示。

1.模拟信号与数字信号

模拟信号:模拟信号是一种大小随时间连续变化的信号(如连续变化的电压或电流)。

数字信号:数字信号是一种离散的信号或者说是一种突变的信号(如常见的二进制数0、1组成                          的信号)。

注意:51单片机需要外接AD转换模块才能将模拟信号转换成数字信号!!!

2.A/D转换器TLC2543

TLC2543特点

TLC2543是一种12位串行A/D转换器,12位指的是A/D转换器的分辨率,表示其能分辨输入电压变化的最小值等于电压量程除以4095(即2^12-1)。TLC2543可以同时采集11路模拟输入通道,工作原理采用逐次逼近式模数转换,采用SPI串行口与外界通信。

TLC2543引脚功能

AIN0~AIN10作为11路模拟电压输入引脚;REF+和REF-分别是正负基准电压,当分别接+5V和地时,可以测0~5V的直流电压;SDO是A/D转换结果串行输出引脚;SDI是数据串行输入引脚;CS为片选引脚,低电平有效;CLK是外部时钟输入引脚;EOC引脚可以判断A/D转换是否结束,在A/D转换期间为低电平,转换结束变为高电平。

 TLC2543的控制命令字

单片机控制TLC2543需要先写入控制字。控制字为8位二进制数,控制字决定了模拟量输入的通道地址、输出数据的长度、顺序,格式。其中控制字的高4位用于选择输入通道(0000~1010对应11路模拟电压信号输入);第3位和第2位用于选择输出数据的长度(01表示8位、11表示16位、00、10均表示12位);第1位用于选择输出的数据的顺序(0表示先输出高位,1表示先输出低位)、第0位用于选择输出数据的格式(0表示无符号二进制数,1表示有符号二进制数据)。

TLC2543的工作流程

当片选信号(CS)有效时,单片机控制时钟信号从数据输入引脚向TLC2543写入控制命令字,同时从数据输出引脚读取上一次A/D转换后的数字量。其中在第4个时钟下降沿到来时,TLC2543开始对相应模拟量输入通道采样,直至最后一个时钟下降沿。当最后一个时钟下降沿来临时,EOC在2us内从高电平变为低电平,TLC2543开始进行AD转换工作,转换时间约为10us左右,当转换结束后EOC会从低电平变为高电平。

单片机控制TLC2543的读写

单片机不具有SPI串行接口,因此只能用软件模拟SPI工作时序控制TLC2543!!!

写入数据:单片机每次在数据输入引脚(SDI)以高低电平的形式放置一位二进制数,在时钟(CLK)上升沿向TLC2543写入。

读取数据:TLC2543A/D转换结果在每一次时钟(CLK)的下降沿以高低电平的形式在数据输出引脚(SDO)输出。

设计仿真演示视频如下:

基于51单片机的数字电压表的设计

具体Keil工程和Proteus电路图见下方链接

https://item.taobao.com/item.htm?id=843495908158icon-default.png?t=O83Ahttps://item.taobao.com/item.htm?id=843495908158祝大家天天开心!!!!!!


原文地址:https://blog.csdn.net/weixin_45755708/article/details/142870251

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!