基于89C52的可调电压表计划(全部内容)

打印 上一主题 下一主题

主题 576|帖子 576|积分 1728

1. 功能与指标


  • ADC0809芯片:通过模数转换芯片将电压模拟量转为数字量;
  • STC89C52主控芯片:将模数转换后的数字量收集并计算还原测量电压;
  • 分压模块:根据模数转换芯片指标计划分压,输入电压不可高出5V;
  • 手动调节量程:利用按键实现手动更换量程功能,将0~35V分压为4个档位;
  • LCD显示:利用液晶屏显示被测电压数值,效果保留3位小数,测量值毛病控制在1%以内;
    测量单片机3.3V电源 实物演示:

2. 计划方案与工作原理

采用STC89C52芯片共同ADC08091。模数转换芯片进行电压收罗与数据处理惩罚构成一个简易电压表,克制ADC0809过载烧坏,对被测电压分压后再输入AD转换芯片,经计算将0-35V电压分为四个通道测量,分别为:0-5V、5-15V、15-25V、25-35V。
硬件框图:

系统通过ADC0809的输入端口IN3-IN6分别将不同量程的电压信号收罗,经过模数转换后,产生的数字量经过其输出端口D0-D7传送给STC89C52芯片的P0口,需注意D0接P7、D1接P6、D2接P5以此类推,高低位反向毗连。STC89C52负责把接收到的数字量经过数据处理惩罚,通过P1口发送到LCD1602进行显示。同时P2.1毗连按键,通过判定按下次数使P2.5-P2.7三个IO口输出不同高低电平设置ADC0809的ADCA、ADCB、ADCC三个位选端口,产生位选信号控制电压输入端口的输入。
另外STC89C52还控制着ADC0809的工作,利用主控芯片的定时器T0定时功能通过P3.5为ADC0809产生5KHz的工作时钟脉冲;P3.4收罗ADC0809的转换结束信号(EOC)判定电压模数转换是否完成;P3.3控制ADC0809的输出允许端(OE)将数字量收集到主控芯片;P3.2同时控制ADC0809的地址锁存端(ALE)和转换启动端(START)当未启动转换时,输入位选端口等待位选信号输入,启动转换后,输入位选端口锁定,保持输入档位准确性。
3. 硬件模块

3.1 ADC模数转换1

分压模块采用电阻分压,分别为IN3:0-5V、IN4:5-15V、IN5:15-25V、IN6:25-35V,共4个量程,以25-35V为例说明分压原理:
                                                    U                               B                                      =                                       U                               A                                      ⋅                                                   R                                  5                                                                   R                                     5                                              +                                               R                                     6                                                             =                                                   U                                  A                                          7                                            U_{B}= U_{A}\cdot \frac {R_{5}}{R_{5}+R_{6}}= \frac {U_{A}}{7}                     UB​=UA​⋅R5​+R6​R5​​=7UA​​

即,输入最大电压35V时,IN6电压输入端口为5V,将电压降至合理范围内。其他两个通道同理。
模数转换内容详见ADC0809的原理与利用方法
3.2 89c52数据处理惩罚

ADC0809输出的数字量电压到STC89C52进行计算还原,由于浮点数计算相对复杂,且为数据显示方便思量,将数字量收罗到P0端口后,先扩大1000倍为整型数后,再根据按键选择的不同量程,通过代码判定选择不同计算公式:                                                   U                                           I                                  N                                                 =                            P                            0                            ⋅                                       5                               256                                      ⋅                            1                                       0                               3                                      ⋅                            A                                  U_{IN}=P0\cdot \frac{5}{256}\cdot10^{3}\cdot A                     UIN​=P0⋅2565​⋅103⋅AA为分压倍数,如25~35V。理论毛病值在1%以内,符合要求。
主控芯片:

3.3 LCD1602显示

主控芯片将计算后数据按照十位、个位、非常位、百分位进行拆分,分别输入到LCD1602进行显示,比方:UIN=15786
十位= UIN/10000=1个位= UIN%10000/1000=5非常位= UIN%1000/100=7百分位= UIN%100/10=8千分位= UIN%10=6

4 步调代码2

步调流程图:

4.1 按键模块

根据按键按下,将数值从1~4不断循环传出。用来判定选择量程。

软件步调源文件:基于89C52的可调电压表计划(步调代码)
4.2 ADC0809模块

利用定时器0产生ADC工作时钟CLK=5KHz;

ADC的输入端口位选,其等效为3-8译码器,根据按键次数选择的档位进行判定输入端口的位选设置。ALE地址锁存端口设置为0时,可以对数据收罗输入端口位选设置,当转换开始时,ALE随着START端口置1,位选锁存不可更改。
输入位选:

AD转换:

软件步调源文件:基于89C52的可调电压表计划(步调代码)
4.3 LCD1602显示

初始化函数
写命令
写数据
代码不过多赘述,可参考步调源文件,也可自行查找。
软件步调源文件:基于89C52的可调电压表计划(步调代码)
4.4 主函数

根据按键按下次数返回的数值,进行判定是哪个量程档位,将对应的档位显示在LCD上,再通过AD转换模块获取转换后的数字量,通过计算、提取数字位,显示在LCD。


软件步调源文件:基于89C52的可调电压表计划(步调代码)
5 Proteus仿真3

选择15~25V档位,激励源为直流22V ,测量值为21.96V,毛病在允许范围内。

proteus仿真源文件:基于89C52的可调电压表计划(仿真图)
6 原理图与PCB 4


原理图与PCB:基于89C52的可调电压表计划(原理图+PCB)
7 总结

简易电压表的计划让我对单片机基础的模数转换系统计划有了更加深刻的了解,对整个系统多个模块相共同实现功能有了经验,对LCD1602显示原理有了更深的掌握,对ADC0809芯片的工作原理、转换过程有了实践性的了解;实训过程中利用到了Proteus、Keil、Altium Designer等软件,对其利用纯熟度有了进一步提高。计划过程中碰到题目通过查阅资料和凭··········此处省略几百字
实行陈诉完备文件可留言拿
8 元件清单

封装均为插件
元件名称规格型号数量芯片STC89C521个芯片ADC08091个液晶屏LCD16021个电容0.1uf1个电容30uF2个电阻1k3个电阻2k2个电阻3k2个电位器100k1个晶振12MHz1个按键开关-------1个排针排母-------多少
   

  • ADC0809的原理与利用方法 ↩︎ ↩︎
  • 基于89C52的可调电压表计划(步调代码) ↩︎
  • 基于89C52的可调电压表计划(仿真图) ↩︎
  • 基于89C52的可调电压表计划(原理图+PCB) ↩︎

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

饭宝

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表