单片机实验简介.docx

单片机实验简介

PAGE 1 PAGE  综合性、设计性实验报告 姓名 陶建敏 学号 201308002107 姓名 贺鹤 学号 201308002118 专业 通信工程 班级 13 级 通信1班 实验课程名称 单片机原理与应用 指导教师及职称 赵全友 副教授 开课学期 2013 至 2014 学年 上 学期 上课时间 2013年 11 月 2 日 湖南科技学院教务处编印 PAGE  一、实验设计方案 实验名称:可调节数字电子钟设计实验时间: 2013-11-2小组合作: 是● 否○小组成员:陶建敏 贺鹤 1、实验目的: 1)学习数码管的基本知识。 2)学会如何控制动态数码管扫描显示。2、实验设备及材料: 硬件设备:计算机 机器配置:AT89C51 操作系统:windows 7 开发工具:Keil uVision3 Proteus 7 Professional 3、实验内容: ①问题描述 利用共阴极的6位LED数码管进行显示,然后用定时器T0实现定时,实现一个数字电子钟,实现时、分、秒,并用“.”隔开显示。 ②编程任务 1. 利用通过修改电路实现对数字电子钟实现控制,即能适时地设置时间,并完成相应的程序。 2.利用通过修改电路实现一个电子秒表,启动秒表,暂停秒表,秒表清零,秒表显示到毫秒。 ③样例 定时1秒,采用16位定时50ms,共定时20次才可达到1秒,进一步可实现分时。 利用小延时或者另一个定时器实现对8个数码管的动态扫描显示。 时间设置采用外部中断。  4、实验方法步骤及注意事项: ①实验步骤 先查看老师所给的电路图,判断我们所需要用到的IO口以及IO口是用来控制数据形状还是控制哪个二极管发光。查看电路图二,我们知道是用P0来控制数据的显示,而P1则是来控制哪个发光。 分析可知道,我们可以需要用到一个延时程序以及定时器,所以我们定义了一个Delay()函数,开了一个定时器T0. 而我们这个时钟设置时间,我们则是用到了两个外部中断。中断T0连接一个按键,用一个zhuangtai来控制按键次数。按一下,则可以修改秒钟;而按两下则可以修改分钟,而按三下则可以修改时钟,按第四下则回到时钟显示状态。 4. 最后,我们进行了调试,以及修改,成功运行了程序. ②解题思路 如何实现定时1秒,1分,1小时 如何实现对动态数码管的动态扫描显示 如何实现多功能的电子表。 1:定时1秒由定时器中断一次就是10ms 一共中断100次就是1000ms,即1s;1秒到了后秒单元就加1,中断次数要清零;如果到了60秒,分单元就加1,并把秒单元清零;如果分单元到了60分,就把分单元清零,把时单元加1;如果时单元到了24,就把时单元清零; 2:依次选中一个数码管然后令其显示,延迟一定时间,动态扫描由定时器通过定时一段时间扫描一次,整个扫描时间在20ms内 3:实现多功能电子时钟,那就要设定好一个外部中断,用在中断的中的变量去控制和定义其所处的状态也即是其功能按键,键值不同相应的功能就不同;还有中断要控制时间设置的加和减,还有秒表定时时间和时钟定时时间由定时器完成等 5.参考文献: 《单片机原理与接口技术》张毅刚主编,人民邮电出版社,2008 《单片机原理及应用》(第二版), 曹巧媛 主编,电子工业出版社, 2004 指导老师对实验设计方案的意见: 指导老师签名: 年 月 日  实验报告 实验目的、设备与材料、实验内容、实验方法步骤见实验设计方案 2、实验程序 #include reg51.h #define uint unsigned int #define uchar unsigned char sbit P2_7=P2^7;//调节星期按钮 void init();//接口声明 void delay(uint n);//延时函数 void Display(uchar hour, uchar min, uchar sec);//时间显示函数声明 void Show2(uchar xingqi); void Flash(uchar hour, uchar min, uchar sec);//闪烁函数声明 void Time_transf();//时间转换函数声明 void Set_time();//时间调整

文档评论(0)

1亿VIP精品文档

相关文档