通道的数字电压表设计报告.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 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

文档评论(0)

ipad0b + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档