实验四单片机秒表设计

上传人:ch****o 文档编号:143388175 上传时间:2022-08-26 格式:DOC 页数:10 大小:1.67MB
收藏 版权申诉 举报 下载
实验四单片机秒表设计_第1页
第1页 / 共10页
实验四单片机秒表设计_第2页
第2页 / 共10页
实验四单片机秒表设计_第3页
第3页 / 共10页
资源描述:

《实验四单片机秒表设计》由会员分享,可在线阅读,更多相关《实验四单片机秒表设计(10页珍藏版)》请在装配图网上搜索。

1、微控制器实验报告四 班 级: 15自动化 学 号: 姓 名: 指 导 教 师: 李素敏 实验四 秒表设计一. 实验目的(1)掌握利用单片机定时器实现定时。(2)熟悉单片机与数码管的接口技术及数码管动态显示的控制过程。(3)熟悉单片机与键盘的接口技术及按键识别过程。(4)学会如何编制含数码管显示,定时器中断及按键控制等多种功能的综合程序,体会大型程序的编制和调试技巧。二. 实验内容1、用6位数码管显示秒表时间,最左边2位显示分,中间2位显示秒,最右边2位显示秒的小数位(0.000.99秒),秒与小数位之间要显示小数点。 2、两个按键:(1)计时/停止按键:首次按下从0开始计时,再次按下暂停计时,

2、之后每次按下按键实现继续计时、暂停计时,继续计时、暂停计时。(继续计时即从上次暂停时的时间开始继续计时)(2)复位按键:按下后全部清0,等待下次按下计时/停止按键时重新开始计时。三实验仪器 PC机、单片机四实验步骤1.编写程序2.生成hex文件3.将程序烧录至单片机4.调试程序,知道得出正确的实验结果五. 实验结果与分析实验代码如下:#include #define uchar unsigned char#define uint unsigned intsbit dula=P26;sbit wela=P27;sbit key=P34;sbit reset=P35;Unsignedchardis

3、play1 ,display2,display3,display4,display5,display6,min,sec,decimal;unsigned char flag=0; unsigned char code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/数码管显示09不带小数unsigned char code table2=0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef;/数码管显示09带小数/延时函数void delay(unsigned int i) unsi

4、gned int j,k; for(j=i;j0;j-) for(k=125;k0;k-); /判断按键是否按下void KEY() if(key=0) delay(10); if(key=0) /按键消抖 flag+; if(flag=1) /按下一次,计数开始计数 TR0=1; /定时器TO开始工作 if(flag=2) /按下两次,计数暂停 TR0=0; /定时器T0停止 flag=0; /计数标志清零 if(reset=0) /复位键按下 delay(10); if(reset=0) TR0=0; /T0停止计时 flag=0; /所有数据清零 min=0; sec=0;decimal

5、=0;display1=0; display2=0;display3=0;display4=0;display5=0;display6=0;/显示函数void show() display1=min/10; /分 十位display2=min%10; /分 个位display3=sec/10; /秒 十位display4=sec%10; /秒 个位display5=decimal/10; /小数 十位display6=decimal%10; /小数 个位 dula=0;P0=tabledisplay1; dula=1;dula=0;wela=0;P0=0xfe;wela=1;wela=0;de

6、lay(2);P0=tabledisplay2; dula=1;dula=0;P0=0xfd;wela=1;wela=0;delay(2);P0=table2display3; dula=1;dula=0;P0=0xfb;wela=1;wela=0;delay(2);P0=tabledisplay4; dula=1;dula=0;P0=0xf7;wela=1;wela=0;delay(2);P0=tabledisplay5; dula=1;dula=0;P0=0xef;wela=1;wela=0;delay(2);P0=tabledisplay6; dula=1;dula=0;P0=0xdf;

7、wela=1;wela=0;delay(2);P0=0x80; dula=1;dula=0;P0=0xf7;wela=1;wela=0;delay(2);void main() TMOD=0x01;TH0=(65536-10000)/256;/向定时器写入初值的高8位TL0=(65536-10000)%256;/向TL0写入初值的低八位EA=1; /总中断允许ET0=1; /允许定时器T0工作 TR0=0; dula=0; wela=0;while(1) KEY(); show(); void T0_int(void) interrupt 1 TH0=(65536-10000)/256;/向定时器写入初值的高8位TL0=(65536-10000)%256;/向TL0写入初值的低八位decimal+;if(decimal=99) /小数部分进位 decimal=0; sec+; if(sec=60) /秒部分进位 sec=0; min+; if(min=60) min=0; sec=0; decimal=0; 实验截图如下:五、实验心得这次的实验相当于一个大设计,几乎综合了这学期所学的所有知识,中断、计数器、按键、数码管。程序编写时,应该弄清楚原理,如中断是如何工作的,弄清楚这些后,程序的编写就很容易了。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!