图3时钟电路 图4复位电路
2.3 LCD1602显示电路
本次设计中采用LCD1602作为显示器,模块的引脚及连接电路如图5所示:
RP1RESPACK-81LCD1LM016LVSSVDDVEERSRWERS4RW5E6123p00p01p02p03p04p05p06p077891011121314D0D1D2D3D4D5D6D7p002p013p024p035p046p057p068p079 图5显示电路
其中D0~D7数据接收端口与单片机P0口相连。E端为使能端,当它由0变为1,LCD1602才能进行读写操作,它和单片机P2.5相连,并由其输出控制信号。RS、RW是1602的读写控制端,它们分别与单片机的P2.3、P2.4相对应,这样使用LCD显示时可由单片机的程序完成控制。VDD、VSS为液晶屏的电源端口,VEE端电压信号的大小可以改变液晶屏的亮度。由于P0口作为输出口时,它没有高电平的状态所以仿真电路时需要加上拉电阻RP1,这样P0口就有高电平状态。
2.4 电压输入电路
输入电路如图6所示:
RV110%RV01kR49K64%IN 0IN 11k+88.8VoltsR31K
3
图6
当要测试的电压为0~5V时,选择IN0输入,在仿真中运用滑动变阻器分压的原理产生0-5V的电压来代表实际电压。而当超过5V时则选择IN1输入,由于实际的电压变允许适当的超量程,所以图中R3和R,4的电阻值分别为1k、9k,这样就把电压衰减为原来电压值的1/10。这样本电压表就有两个量程即0~5V和0V~10V。需要变换量程时,由中断开关相互切换。
4
第3章 软件设计
3.1主程序设计
图7
主程序主要负责各个模块的初始化工作:启动A/D转换,读取转换结果,处理量程转换响应,控制液晶实时显示等,其流程图如图7所示。
3.2 A/D转换程序
5
图8
A/D转换程序的功能是采集数据,将模拟信号转换为数字信号。当系统设置好后,单片机扫描转换结束管脚P2.6的输入电平状态,当输入为高电平则转换完成,将转换的数值转换并显示输出。若输入为低电平,则继续扫描。程序流程图如图8所示。
6
第4章 调试结果
1.当输入电压为2.10V时,显示结果如图9所示,实际电压为2.09V。
图9输入电压为2.10V时,LCD显示结果
2.当输入电压为8.61V时,显示结果如图10所示,实际电压为8.62V。
图10 输入电压为8.62V时,LCD显示结果
调试结果:基本满足设计需求,误差在可接受范围内。
7