单片机课程设计实验报告数字电压表Word格式文档下载.docx
《单片机课程设计实验报告数字电压表Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《单片机课程设计实验报告数字电压表Word格式文档下载.docx(16页珍藏版)》请在冰豆网上搜索。
(1)进一步巩固和加深对“单片机原理及应用”课程基本知识的理解和掌握,了解51系列单片机在项目开发中的应用。
(2)学习单片机硬件和软件设计开发的一般方法,了解和掌握项目开发过程及方式,培养正确的设计思想和分析问题、解决问题的能力,特别是项目设计能力。
(3)通过对标准化、规范化文档的掌握并查阅有关技术资料等,培养项目设计开发
能力,同时提倡团队合作精神。
2.课程设计的任务及要求
1)基本要求:
(1)对系统功能进行需求分析;
(2)提出系统的设计方案;
(3)完成硬件设计和编写源程序代码并进行必要的调试。
2)创新要求
ADC0832是双通道,由程序可以任意的选取通道进行显示。
3)课程设计报告撰写及装订要求
课程设计报告的撰写要求表述简明,图表准确。
报告按如下内容和顺序用A4纸进行打印并装订成册。
(1)封面
采用统一的课程设计封面,并按要求填写好封面要求的个人信息和选题。
(2)设计任务书
(3)评阅书
(4)目录
(5)正文
(6)主要参考文献
4)课程设计完成标准要求:
每人按指定题目进行设计,严禁抄袭,要求每人自己动手编写程序,采取同一组同时检查程序及运行结果,检查时同组成员每人陈述自己的分工,同一选题不同组如发现代码完全一样,则双方都作不及格处理。
(1)达到课程设计的目的与要求,程序的可读性较好,并调试正确;
(2)能正确回答设计的中老师所提问题;
(3)课程设计报告书写规范整齐;
(4)心得体会认真总结;
(5)程序有创新性;
成绩评定实行优秀、良好、中等、及格和不及格五个等级。
不及格者需重做。
5)课程设计进度安排
(1)准备阶段(3学时):
选择设计题目、了解设计目的要求、查阅相关资料。
(2)程序模块设计分析阶段(4学时):
程序总体设计、详细设计。
(3)代码编写调试阶段(10学时):
程序模块代码编写、调试、测试。
(4)撰写论文阶段(3学时):
总结课程设计任务和设计内容,撰写课程设计论文。
6)课程设计题目具体要求:
利用所学的知识,或通过上网查询或书籍资料,来完成测量0—5V电压的数字电压表并且用三个数码管显示出来。
通过ADC0832完成数模转换,本次课程设计使用的单片机为AT89S52增强型单片机,带有ADC0832转换器,输入口为P3.6口,给单片机送入数据,完成对数据的收集。
输出端用p3.7口。
P1口用于实现频率的设计,给单片机一个12MHz的频率。
用六个七段数码管来完成数据显示,分别控制各位,小数点后一位,小数点后两位。
数码管的段选接p0口,位选接p2口,因为数码管是共阳极,所以需要电源来提供高电压,当是低电平时,数码管亮,当是高点平时,则不亮。
编写c语言或者汇编语言程序,在程序中实现对0832通道的选择,而且可以采用滤波的原理保证数据的稳定性和准确性。
学生签名:
20年月日
摘要
本设计基于AT89C52单片机为核心,以ADC0832数模转换芯片采样,以数码显示管显示的具有电压测量的功能的具有一定的精度的双路的数字电压表。
采用单片机的数字电压表,由精度高,抗干扰能力强,可扩展性强,集成方便。
目前,由各种单片A/D转换器构成的额数字电压表,已被广泛用于电子及电工测量、工业自动化仪表,自动测试系统等智能化测量领域,示出强大的生命力。
介绍单片A/D转换器以及由它们构成的基于单片机的数字电压表的工作原理。
关键词:
AT89C51、ADC0832、RS232、显示
目录
一、需求分析1
二、概要设计3
三、硬件设计6
四、软件设计和分析9
五、调试结果10
六、读书心得10
七、参考文献…………………………………………….................11
一、芯片简介
1、内部框图
2、AT89C52
AT89C52提供以下标准功能:
8k字节Flash闪速存储器,256字节内部RAM,32个I/O口线,3个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。
同时,AT89C52可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。
空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。
掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。
3、单片机引脚
4、ADC0832
ADC0832是美国国家半导体公司生产的一种8位分辨率、双通道A/D转换芯片。
由于它体积小兼容性强性价比高而深受单片机爱好者及企业欢迎,其目前已经有很高的普及率。
学习并使用ADC0832可是使我们了解A/D转换器的原理有助于我们单片机技术水平的提高。
芯片接口说明
CS_片选使能低电平芯片使能。
CH0模拟输入通道0或作为IN+/-使用。
CH1模拟输入通道1或作为IN+/-使用。
GND芯片参考0电位地。
DI数据信号输入选择通道控制。
DO数据信号输出转换数据输出。
CLK数据信号输出转换数据输出。
Vcc/REF电源输入及参考电压输入复用。
5、芯片引脚
6、接口
P3.5对应ADC0832的CS
P3.6对应ADC0832的DI
P3.7对应ADC0832的DO
P2.1对应的ADC0832的CLK
二、第2章系统总体结构与工作原理
2.1系统结构框图
根据项目要求确定该系统的设计方案图3-1为该系统设计方案的结构框图。
硬件电路由6各部分组成即单片机、时钟电路、复位电路、LED显示电路、A/D装唤器和测量电压输入电路。
2.2工作原理
系统采用12M晶振产生脉冲做AT89C52的内部时钟信号通过软件设置单片机的内部定时器T0产生中断信号。
利用中断设置单片机的P2.4口取反产生脉冲做AT89C51的时钟信号。
通过键盘选择八路通道中的一路将该路电压送入ADC083相应通道单片机软件设置ADC0832开始A/D转换,转换结束ADC0832的DO端口产生高电平,同时将ADC0832的CS端口置为高电平,单片机将转换后结果存到片内RAM。
系统调出显示子程序将保存结果转化为0.00-5.00V分别保存在片内RAM;
系统调出显示子程序将转化后数据查表输出到LED显示电路,将相应电压显示出来程序进入下一个循环。
三、硬件设计说明
3.1单片机AT89C52
图3-1
数码管LED_6(笔段A—H)与单片机CPU的p0.0—p0.6一一对应
数码管LED_6(位)与单片机CPU的p2.7—p2.2一一对应
P3.0对应RS232的RX端
P3.1对应RS232的TX端
3.2、数码管显示
Dpy_Amber_ca是共阳极
共阳数码管是指将所有发光二极管的阳极接到一起形成公阳极(COM)的数码管。
共阳数码管在应用时应将公极COM接到+5V,当某一字段发光的二极管的阴极为低电平时,相应字段就点亮。
当某一字段阴极为高电平时,形影字段不亮。
数码管电路原理图
图3-2
3.3、A/D转换模块及转化电路设计
ADC0832为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。
其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在0~5V之间。
芯片转换时间仅为32μS,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。
独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。
通过DI数据输入端,可以轻易的实现通道功能的选择
电路图如下
图3-3
3.4、RS232
RS-232-C是美国电子工业协会EIA(ElectronicIndustryAssociation)制定的一种串行物理接口标准。
RS是英rs232文“推荐标准”的缩写,232为标识号,C表示修改次数。
RS-232-C总线标准设有25条信号线,包括一个主通道和一个辅助通道。
电路图
图3-4
第4章软件设计与说明
1、进行应用软件设计时可以采用模块化结构设计
其优点是①每个模块的程序结构简单任务明确、易于编写、调试和修改
②程序可读性好对程序的修改可局部进行其他部分可以保持不变,易于
功能扩充和版本升级
③易于使用频繁的子程序可以建立子程序便于多个模块调用
④便于分工合作多个程序员同时进行程序的编写和调试工作加
快软件研制进度。
2、程序的设计
①主程序的设计主程序的内容一般包括主程序的起始地址、
中断服务额程序的起始地址、有关内存单元及相关部件的初始化和
一些子程序调用等。
根据设计要求设计出如图4-2所示的主程序
流程图。
②A/D转换子程序的设计A/D转换程序的功能是采集数据
再整个系统设计中占有很高的地位。
当系统置好后单片机扫描转
换结束管脚P2.6的输入电平状态当输入为高电平则转换完成将
转换的数值转换并显示输出。
若输入为低电平则继续扫描。
程序
流程图如图4-3所示。
③数码转换及显示子程序的设计由于人们日常习惯使用十进
制数而计算机的键盘输入、输出以及显示常采用二进制编码的十
进制数即BCD码或ASCII码。
因此在程序设计中经常要进行
数码转换。
第5章调试结果及其说明
首先采用Keilμ
Vision编译器进行源程序编译及仿真调试调
试好程序后将目标文件导入Proteus进行软件调试。
六、读书心得
通过这次课程设计我也发现了自身存在的不足之处虽然感觉理论上已经掌握但在运用到实践的过程中仍有意想不到的困惑经过一番努力才得以解决。
这也激发了我今后努力学习的兴趣我想这将对我以后的学习产生积极的影响。
总体来说这次实习使我受益匪浅。
在摸索该如何设计电路使之实现所需功能的过程中特别有趣培养了我的设计思维增加了实际操作能力。
在让我体会到了设计电路的艰辛的同时更让我体会到成功的喜悦和快乐。
通过这两个星期的学习让我把书本上的知识转换成实际可操作的东西,虽然也做过实验但课程设计这种系统和具有一定规模收获是更多的。
7、参考文献
[1]彭为《单片机典型系统设计实例精讲》北京电子工业出版社2006
[2]张毅刚《单片机原理与应用设计》北京电子工业出版社2008
[3]王迎旭《单片机原理与应用》北京机械工业出版社2004.7
[4]周向红《52系列单片机应用与实践教程》北京北京航空航天大学出版社2008.5
程序附录:
LEDEQUP0
AD_CSBITP3.4
AD_CLKBITP3.3
AD_DATBITP3.2
SDATABITP0.1
SCLKBITP0.0
K1BITP3.0
CH_XZBIT40H
;
ORG0000H
AJMPSTART
START:
MOVSP,#60H
MOVA,#00H
MOV20H,A
MOV30H,A
MOV31H,A
MOV32H,A
MOV33H,A
MOVP0,#0FFH
START2:
JBK1,START3
CPLCH_XZ
JNBK1,$
START3:
LCALLAD_CONV
LCALLAD_CHULI
LCALLADPLAY
AD_CONV:
SETBAD_CS
CLRAD_CLK
NOP
CLRAD_CS
SETBAD_DAT
SETBAD_CLK
CLRAD_DAT
CLKAD_CLK
JBCH_XZ,CH1_IN
MOV33H,#0AH
AJMPNEXT
CH1_IN:
SETBAD_DAT
MOV33H,#0BH
NEXT:
NOP
MOVR1,#8
AD_READ:
CLRAD_CLK
MOVC,AD_DAT
RCL,A
DJNZR1,AD_READ
SETBAD_CS
RET
AD_CHULI:
MOVA,20H
MOVB,$51
DIVAB
MOVA,B
CLRF0
SUBBA,#1AH
MOVF0,C
MOVA,#10
MULAB
MOVB,#51
JBF0,AD_CHULI1
ADDA,#5
AD_CHULI1:
MOV31H,A
JBF0,AD_CHULI2
AD_CHULI2:
MOV30H,A
ADPLAY:
MOVR0,#30H
MOVR4,#7FH
MOVDPTR#TAB
DISP:
MOVLED,#0F0H
MOVA,@R0
MOVCA,@A+DPTR
MOV21H,R4
JB21H.5,WORD
SETBACC.7
WORD:
MOVR5,#8
NEXTB:
RLCA
MOVSDATA,C
SETBSCLK
CLRSCLK
DJNZR5,NEXTB
INCR0
MOVA,R4
ANLLED,A
LCALLDELAY1MS
RRA
MOVR4,A
JBACC.3,DISP
DELAY1MS:
MOVR6,#5
DEL1:
MOVR7,#100
DJNZR7,$
DJNZR6,DEL1
TAB:
DB31H,06H,5BH,4FH,66H
DB6DH,7DH,07H,7FH,6FH
DB01H,08H
END