单片机秒表系统代码

单片机秒表系统代码

ID:40964359

大小:84.00 KB

页数:9页

时间:2019-08-12

单片机秒表系统代码_第1页
单片机秒表系统代码_第2页
单片机秒表系统代码_第3页
单片机秒表系统代码_第4页
单片机秒表系统代码_第5页
资源描述:

《单片机秒表系统代码》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实验内容及要求要求:1.设计一个精度为0.1s的秒表系统(显示分、秒、0.1秒);2.有启动按钮、暂停按钮及清零按钮;3.每到一秒钟有声音提醒功能,可通过按钮打开及关闭该提醒音。附加功能:1.倒计时功能。2.数据暂停存储功能#include#defineuintunsignedint#defineucharunsignedcharsbitsda=P2^0;sbitscl=P2^1;sbitdula=P2^6;sbitwela=P2^7;sbitbeep=P2^3;//蜂鸣器uchara

2、ddress=23;uchartemp;uinttime;//时间uchara=0;uchartt=0,beepc;//定时器溢出次数,表示蜂鸣器工作与否的变量ucharcodetable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};//数码管的编码voidinit();voiddelay(uintz);voiddisplay(uinttime);voiddisplay_fen(u

3、intfen);voiddisplay_miao(uintmiao);voiddisplay_num(uintnum);voidkeyscan();voiddelay1(){;;}voidstart()//开始信号{sda=1;delay1();scl=1;delay1();sda=0;delay1();}voidstop()//停止{sda=0;delay1();scl=1;delay1();sda=1;delay1();}voidrespons()//应答{uchari;scl=1;delay1()

4、;while((sda==1)&&(i<250))i++;scl=0;delay1();}voidinit_I2C(){sda=1;delay1();scl=1;delay1();}voidwrite_byte(uchardate){uchari,temp;temp=date;for(i=0;i<8;i++){temp=temp<<1;scl=0;delay1();sda=CY;delay1();scl=1;delay1();//scl=0;//delay1();}scl=0;delay1();sda=

5、1;delay1();}ucharread_byte(){uchari,k;scl=0;delay1();sda=1;delay1();for(i=0;i<8;i++){scl=1;delay1();k=(k<<1)

6、sda;scl=0;delay1();}returnk;}voidwrite_add(ucharaddress,uchardate){start();write_byte(0xa0);respons();write_byte(address);respons();write_byte(da

7、te);respons();stop();}ucharread_add(ucharaddress){uchardate;start();write_byte(0xa0);respons();write_byte(address);respons();start();write_byte(0xa1);respons();date=read_byte();stop();returndate;}voidinit(){tt=0;//定时器0溢出次数TMOD=0x01;//设置定时器0为工作方式1TH0=(655

8、36-50000)/256;//装入初值,设时钟频率12MHzTL0=(65536-50000)%256;EA=1;//开总中断ET0=1;//开定时器0中断beep=1;//蜂鸣器初始不响beepc=0;//初始蜂鸣器控制变量为0}voiddelay(uintz){uintx,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}voidtime0()interrupt1{TH0=(65536-50000)/256;//装入初值,设时钟频率12MHzTL0=(65536-5000

9、0)%256;tt++;if(tt==2){tt=0;if(a==0)time++;//多少个0.1elseif(time!=0)time--;elsetime=600;//当倒计时到0后开始一分钟倒计时}if((time%10)==0&&(time!=0)){if(beepc==1){beep=0;delay(20);beep=1;}}}voiddisplay(uinttime1){ucharnum,miao,fen;//0.1秒,秒,分

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。