- 1、本文档共22页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机实验报告微固学院熊万安.doc
电子科技大学 微固 学院
实 验 报 告
实验名称 单片机原理与应用
姓名:
学号:
评分:
教师签字
电子科技大学教务处制电 子 科 技 大 学
实 验 报 告
学生姓名: 学号: 指导教师:熊万安
实验地点: 实验时间:
实验室名称: 电子技术综合实验室
实验项目名称: 数码管显示A/D转换的电压值
实验学时: 12
实验目的与任务:
熟悉系统设计与实现原理
掌握KEIL C51的基本使用方法
熟悉实验板的应用
连接电路,编程调试,实现各部分的功能
完成系统软件的编写与调试
实验器材
PC机一台
实验板一块
实验原理、步骤及内容
试验要求:
1.数码管可在第2位到第4位显示A/D转换的电压值,可调电压,数码管第5位显示“-”号,第6、7位显示2位学号;
2.再按按键key1进行切换,此时数码管第6、7位显示从学号值+5秒到学号值的循环倒计时秒表,时间间隔为1秒。按按键key2时,秒表停止计数,再按按键key2时,秒表继续计数。按按键key1可切换回任务1的显示。
3.当电压值大于2伏时,按按键不起作用。
硬件设计
各部分硬件原理
(相关各部分例如:数码管动态扫描原理;TLC549的特征及应用等)(四号字体)(所有原理含图)
TLC549的特征及应用:
当/CS变为低电平后,TLC559芯片被选中,同时前次转换结果的最高有效位MSB(A7)自DAT端输出,接着要求自CLK端输入8个外部时钟信号,前7个CLK信号的作用,是配合TCL549输出前次转换结果的A6-A0位,并为本次转换做准备:在第4个CLK信号由高至低的跳变之后,片内采样、保持电路对输入模拟量采样开始,第8个CLK信号的下降沿使片内采样/保持电路进入保持状态并启动A/D开始转换。转换时间为36个系统时钟周期,最大为17us。直到A/D转换完成前的这段时间内,TLC549的控制逻辑要求:或者/CS保持高电平,或者CLK时钟保持36个系统时钟周期的低电平。由此可见,在自TLC549的CLK端输入8个外部时钟信号期间需要完成以下工作:读入前次A/D转换结果;对本次转换的输入模拟信号采样并保持;启动本次A/D转换开始。
数码管动态显示原理:
先把第一个数码管的显示数据送到数据线,同时选通DIS_COM1,而其他数码管的DIS_COMx信号禁止;延迟一段时间(通常不超过10ms),再把第二个数码管的显示数据送到数据线,同时选通DIS_COM2,而其他数码管的DIS_COMx信号禁止;延时一段时间,在显示下一个。(注意:整个数码管的扫描频率应当大于50Hz,防止出现明显的闪烁。)
矩阵键盘扫描原理:
按键逻辑是连接在P2.0到P2.7之间的。当按钮不按下的时候,输入为高电平,当按下按键后,P2.x与地相连,输入为低电平,所以按钮低电平有效。
软件设计
(完成程序框图,手写画出框图)
状态转换
状态转换
key2按键
Key3按键
key1按键
电压值大于2V?
开始
初始化显示
键盘扫描
思考题: 按键改用外部中断模式,电路如何修改(画示意图)?程序如何修改,写出中断服务程序。
答:如果按键改用外部中断模式,可以使用外部中断、,需要将按钮分别用导线连接到、外部中断接口。如
图所示:
程序在系统总的初始化函数中,需要进行外部中断的初始化:
EA=0; //禁止总中断
EX0=1;//使能INT0中断
EX1=1;//使能INT1中断
EA=1;//使能总中断
添加中断服务处理函数:
Void T0INTSVC() interrupt 0
{
...
}
总结及心得体会
通过这几次的实验实践加深了对单片机原理和应用的理解,掌握了KEIL C51开发环境的基本使用方法,熟悉了单片机开发板的基本应用。同时通过实验掌握了数码管动态显示、矩阵键盘扫描、A/D转换的基本原理。
对本实验过程及方法、手段的改进建议
1.建议增加实验课时,通过更多的动手实践来加深对单片机的理解。
2.建议增加串行口通信等方面的实验。
附录
程序
(五号字体)
/*
利用TLC549 A/D转换器实现电压测量与显示
*/
#include reg51.h //包含8051的SFR寄存器定义头文件
#include absacc.h //扩展并行接口所需的绝对地址访问库函数
#define LED_dig XBYTE[0x9000] //8位数码管显示器的位选输出控制
#define LED_seg XBYTE[0x8000] //8位数码管显示器的段码(字形码)输出控制
#define KEY_IN XBYTE[0x8000]
#define STUDENT_NUMBER_MIN 4
#define STU
文档评论(0)