单片机课程设计---基于单片机的简易数字电压表设计内容摘要:
转换数据放在数组中,测量数据在显示时须经过转换成为十进制 BCD 码放在对应的数组中。 主程序流程图 . A/D 转换测量子程序 A/D 转换测量子程序用来控制对 ADC0809 的 8路模拟输入电压的 A/D 转换,并将对应的数值放在数组中。 A/D 转换测量子程序流程图如图所示。 开始 初始化 调用 A/D 转换测量子程序 调用显示子程序 基于单片机的简易数字电压表设计 单片机原理及应用课程设计 7 转换测量子程序流程图 5. 系统调试 硬 件组装基本完成后,上电后发现数码管根本就不亮。 用数字电压表检测个芯片发现有些芯片的电源和接地线没连接。 通过一一检测,找出了其中漏掉的线。 线路连接完整后数码管亮了,但跟其他同学数码管显示的规律不一样即有错误,自己检测大半个上午未果。 请同学帮我检查最后发现是有跟连线接错了。 最后硬件连线完全正确后发现所编程序并不能安要求是数码管显示。 通过思考调试最后找出其中的错误,在 KEIL 软件中编译调试后没问题。 最后生成 HEX 文件烧入单片机中,最后数码管完全按要求显示,整个课程设计成功。 ( 字体小 4号,宋体 ) 开始 启动测试( TESTART) A/D 转换结束。 ( =1?) ADC0809 地址加 1 取数据( =1) 地址数小于 8。 结束 N Y N Y 基于单片机的简易数字电压表设计 单片机原理及应用课程设计 8 6. 设计总结 经过 一段时间的努力, 基于单片机的简易数字电压表基本完成。 通过这次设计学会了 Proteus 和 Keil 软件的使用方法,掌握了从系统的需要、方案的设计、功能模块的划分、原理图的设计和电路图的仿真的设计流程,积累了不少经验。 本次设计采用了 AT89S52 单片机芯片,与以往的单片机相比增加了许多新的功能,使其功能更为完善,应用领域也更为广泛。 设计中还用到了模 /数转换芯片ADC0809,以前在学单片机课程时只是对其理论知识有了初步的理解。 通过这次设计,对它的工作原理有了更深的理解。 在调试过程中 遇到很多问题,硬件上的理论知识学 得不够扎实,对电路的仿真方面也不够熟练。 在以后的实践中,我将继续努力学习电路设计方面的理论知识,并理论联系实际,争取在电路设计方面能有所提升。 7. 附 录 . 源程序代码。 ************************。 八路电压测量显示电路。 ************************。 测量电压最大为 5V,显示最大值为。 70H— 77H存放采样值, 78H— 7BH存放显示 数据,依次为个位、十位、百位、通道标志。 循环显示转换用,。 ?。 *************************************。 * *。 * 主程序和中断程序入口 *。 * *。 ************************************* ORG 0000H LJMP START ORG 0003H RETI ORG 000BH RETI ORG 0013H RETI ORG 001BH 基于单片机的简易数字电压表设计 单片机原理及应用课程设计 9 RETI ORG 0023H RETI ORG 002BH RETI。 *************************************。 * *。 * 初始化程序中的各变量 *。 * *。 ************************************* CLEARMEMIO: CLR A MOV P2,A MOV R0,70H MOV R2,0DH LOOPMEM: MOV @R0,A INC R0 DJNZ R2,LOOPMEM MOV 20H,00H MOV A,0FFH MOV P0,A MOV P1,A MOV P3,A RET。 *************************************。 * *。 * 主 程 序 *。 * *。 ************************************* START: LCALL CLEARMEMIO。 初始化 MAIN: LCALL TEST。 测量一次 LCALL DISPLAY。 显示数据一次 AJMP MAIN NOP。 PC值出错处理 NOP NOP LJMP START。 *************************************。 * 显 示 控 制 程 序 *。 *************************************。 DISPLAY: JB 00H,DISP11。 基于单片机的简易数字电压表设计 单片机原理及应用课程设计 10 MOV R3,08H。 8路信号循环显示控制 MOV R0,70H。 显示数据初址 70H。单片机课程设计---基于单片机的简易数字电压表设计
相关推荐
平,从而来控制相应 LED 灯的亮灭。 本次实验我们采用的是查 表法和循环移位法,这两个方法要比位控法要复杂些,但是程序要简略的多。 6 第四章 硬件系统设计 硬件系统是指构成微机系统的实体和装置,通常由运算器、控制器、存储器、输入接口电路和输入设备、输出接口电路和输出设备等组成。 单片机实质上是一个硬件的芯片,在实际应用中,通常很难直接和被控对象进行电气连接,必须外加各种扩展接口电路、外部设备
亦适于常规编程器。 在单芯片上, AT89S52 拥有灵巧的 8 位 CPU 和在系统可编程 Flash,使得 AT89S52 为 众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 复位电路设计 MCS52 单片机通常采用上电自动复位、按钮电平复位、外部脉冲复位、上电 +按钮电平复位、程序运行监视复位等方式。 AT89S52 需要外加复位电路,本设计采用按键 +上电复位
6 3 软件 设计 软件设计规划 数字频率计是一个将被测频率显示出来的计数装置,它主要由单片机 89C52 控制、复位电路 、 晶振、 LCD 液晶显示屏 、电源等组成。 该系统的功能是将信号输入 口,通过单片机程序控制,对 LCD显示器进行 控制 ,实现动态显示。 数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。 在进行有关电子技术的设计、安装、调试过程中
nop_()。 _nop_()。 //空操作两个机器周期,给硬件反应时间 P0=dictate。 //将数据送入 P0 口,即写入指令或地址 _nop_()。 _nop_()。 _nop_()。 _nop_()。 //空操作四个机器周期,给硬件反应时间 E=1。 //E 置高电平 _nop_()。 _nop_()。 _nop_()。 _nop_()。 //空操作四个机器周期,给硬件反应时间
块 按 键 状 态 河南理工大学本科课程设计报告 8 LED 显示模块如图 22 所示,利用 AT89S51 单片机的 P0端口的 - 连接到一个 七段 数码管的 a- h 的笔段上,数码管的公共端接 电源。 矩阵扫描显示当前按键模块如 下: 2. 2. 2 子 系统 模块二 播放模块是 喇叭构 成。 它几乎不 存在噪声 , 音响效果较 好 , 而且 由于所需驱动功率较 小 , 且价格低廉 ,
LED 彩 灯 系统将暂停运行,全部的灯都被点亮; K7 弹起后,系统继续之前的运行状态。 8 第 4 章 软件设计 单片机的应用系统由硬件和软件组成,上述硬件原理图搭建完成上电之后,我们还不能看到多控制、多闪烁方式的 LED 灯系统循环点亮的现象,我们还需要编写程序控制单片机管脚电平的高低变化,来控制发光二极管的亮 灭。 软件编程是多控制、多闪烁方式的 LED灯系统中的一个重要的组成部分