- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
8通道的数字电压表
设计方案
目录
第一章 设计分析 1
第二章 硬件电路分析 3
2.1单片机AT89C51的分析 3
2.2 ADC0808的分析 4
2.3显示译码器和LED分析 5
第三章 程序设计分析 6
3.1主函数 6
3.2A/D转换函数 6
3.4中断服务函数 6
第四章 调试过程分析及仿真 7
第五章 总结 8
第六章 附录 9
第一章 设计分析
设计一个8通道的电压表,基于AT89X51单片机(在professional中使用的AT89C51)和ADC0809(在professional中使用的ADC0808)芯片实现模数转换,由74247显示译码器和4位LED数码管连接并显示,具有通道自选和量程(0-5v的电
第二章 硬件电路分析
2.1单片机AT89C51的分析
AT89C51?的引脚
工作电源端
Vcc:接+5V电源
Vss:接地
晶振引脚(时钟电路)
XTAL1:芯片内部振荡电路输入端。
XTAL2:芯片内部振荡电路输出端
并行I/O口引脚
控制引脚
ALE:地址锁存使能。当ALE为高电平时,P0口上的信息为低8位地址,在ALE信号的下降沿时将P0口上的低8位地址送地址锁存器锁存起来;在ALE为低电平期间,P0口上的信息为指令或数据信息,这样就能实现低位地址的数据分离。
RST: 复位信号。复位信号是高电平有效,高电平有效的持续时间为2个机器周期以上。单片机的复位方式可由手动复位方式完成。
2.2 ADC0808的分析
ADC0808是一种较为常用的8路模拟输入量,芯片的主要部分是一个8位的逐次比较式 A/D转换器。为了能实现8路模拟信号的分时采集,在芯片内部设置了多路模拟开关及通道地址锁存和译码电路,因此能够对多路模拟信号进行分时采集和转换。转换后的数据送入三态输出数据锁存器。
ADC0808的引脚排布
IN0~IN7:8路模拟量输入端
DB0~DB7:数字量输入端
START:启动脉冲信号输入端,脉冲上升沿复位0808,下降沿启动A/D 转换
ALE:地址锁存信号,高电平有效时把三个地址信号送入地址所存器,并经地址译码得到地址输出,用以选择相应的模拟输入通道。
EOC:转换结束信号。转换开始时变低,转换结束时变高,变高时降转换结果打入三态输出锁存器。
OE:输出允许信号输入端
CLOCK:时钟输入信号,最高允许值为640KHZ
VREF(+):正基准电压输入端
VREF(-):负基准电压输入端
GND:接地
Vcc:电源电压
2.3显示译码器和LED分析
共阳极的七段译码器是将十进制的数转化成字形码在与P1口的高四位位控码共同作用下显示出当前电压。
第三章 程序设计分析
3.1主函数
主程序内容首先是程序初始化,初始化的内容有定时器初始化,外部中断初始化,然后一个无限循环,循环内容为P2赋值,控制所选通道,调用A/D转换程序和调用BCD显示程序。
3.2A/D转换函数
START赋值启动转换,进行转换,然后在判断是否转换结束,如果结束之后就允许输出信号,读入转化二进制,然后在通过译码器把二进制转换为十进制输出显示。
3.3BCD显示函数
输出所选通道,进行延时,然后输出整数和小数显示代码,点亮小数点,进行延时,
3.4中断服务函数
定时器中断向CLOCK输入方波信号,部中断控制所选通道。
第四章 调试过程分析及仿真
写出程序后,进行目标构造,修改错误产生hex文件。作出图,并对其进行仿真。
仿真效果如下:
第五章 总结
这份作业其实做了很久,我觉得关键还是编程,一直没有编好程序,所以其他的所有东西都不能做。即使老师分析过一通道和八通道的程序,还是不会啊。然后后来写出来的程序有又很多的错误。最后请教同学,帮助我改错,最后终于对了。所以,以后要好好学习。不然写个程序都不会。还要多一点的实际操作,对程序的输入还要更加仔细点。不然每次都把时间花费在找错误上面。细心,细心,在细心啊。第六章 附录
#include reg51.h
unsigned char code dispcode[4]={0x10,0x20,0x40,0x80};
unsigned char dispbuf[3];
unsigned char M[8]={0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07};
unsigned char N[8]={0,1,2,3,4,5,6,7};
unsigned char i,g;
unsigned char t=0;
sbit DP=P3^5;
sbit CLK=P3^7;
sbit ST=P3^0;
sbit OE=P3^1;
sbit EOC=P3^2;
void bcd();
void main()
{
TMOD=0x02;
IE=0x86;
TC
您可能关注的文档
最近下载
- 面向2025年商业银行的金融科技人才金融科技产品运营能力培养策略.docx
- 【50页PPT】数据治理平台与数据运营体系建设方案.pptx VIP
- E5071B网络分析仪指导书.pdf VIP
- 汽车售后经理年终总结.pptx VIP
- 操作考核标准:简易呼吸气囊.pdf VIP
- 高标准基本农田建设项目竣工验收报告.docx VIP
- 人力资源控制程序.doc VIP
- 2020年美工理论题库4.docx VIP
- 国标图集05s502图集阀门井-国家建筑标准设计图集电子版下载 1.docx VIP
- 第2讲 一心跟着共产党(第一课时)没有共产党就没有新中国(课件)-《学生读本(小学低年级)》.pptx VIP
文档评论(0)