版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 单片机秒表设计(论文)题目名称: 单片机多功能秒表设计专业班级: 计本一班 学号: 201404052523 学生姓名: 你看 指导教师: 非驴非马 2016年 6月 4日一、 单片机的功能 单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器 RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。MCS-51系列单片机,其主要功能如下:8位CPU4kbytes 程序存储器(ROM)128bytes的数据存
2、储器(RAM)32条I/O口线111条指令,大部分为单字节指令21个专用寄存器2个可编程定时/计数器5个中断源,2个优先级一个全双工串行通信口外部数据存储器寻址空间为64kB逻辑操作位寻址功能双列直插40PinDIP封装单一+5V电源供电40个引脚按引脚功能大致可分为4个种类:电源、时钟、控制和I/O引脚。 电源: VCC - 芯片电源,接+5V; VSS - 接地端; 注:用万用表测试单片机引脚电压一般为0v或者5v,这是标准的TTL电平。但有时候在单片机程序正在工作时候测试结果并不是这个值而是介于0v-5v之间,其实这是万用表的响应速度没这么快而已,在某一个瞬间单片机引脚电压仍保持在0v或
3、者5v。 时钟:XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。 控制线:控制线共有4根, ALE/PROG:地址锁存允许/片内EPROM编程脉冲 ALE功能:用来锁存P0口送出的低8位地址 PROG功能:片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。 PSEN:外ROM读选通信号。 RST/VPD:复位/备用电源。 RST(Reset)功能:复位信号输入端。 VPD功能:在Vcc掉电情况下,接备用电源。 EA/Vpp:内外ROM选择/片内EPROM编程电源。 EA功能:内外ROM选择端。 Vpp功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源V
4、pp。 I/O线 80C51共有4个8位并行I/O端口:P0、P1、P2、P3口,共32个引脚。 P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线) 5. P3口第二功能 P30 RXD 串行输入口 P31 TXD 串行输出口 P32 INT0 外部中断0(低电平有效) P33 INT1 外部中断1(低电平有效) P34 T0 定时计数器0 P35 T1 定时计数器1 P36 WR 外部数据存储器写选通(低电平有效) P37 RD 外部数据存储器读选通(低电平有效)二、 设计思路1、使用单片机,设计秒表,能显示分分秒秒;2、使用八个按键停止,开始,复位,记录,上翻,下翻,一秒加
5、快,十秒加快。其中“开始”按键当开关由上向下拨时开始计时,此时若再拨“开始”按键则数码管暂停;“清零”按键当开关由上向下拨时数码管清零,此时若再拨“开始”按键则又可重新开始计时;记录键可以记录当前记录的时间,并保存。上翻和下翻可以查看保存的时间。一秒加快是一次摁下摁键可以在原时间基础上增加一秒,十秒加快是一次摁下可以在原时间基础上加快十秒。3、使用或数码管显示;4、使用定时器中断;三、功能实现及描述使用定时器中断产生50ms的时间;每次中断,使用全局变量,记录当时的时间;主函数检查按键,显示时间;按键MCS-51液晶显示秒表设计导向图四、 电路图及解释 解释:P10,P11,P12,P13,P
6、14,P15,P16,P17八个引脚分别接清零开关,停止开关,复位开关,记录开关,上翻开关,下翻开关,快进一秒开关,快进十秒开关P0口和p2口跟四段数码管相连,用来向四段数码管来发送数据。五、代码设计#includecode unsigned char tab=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; /共阴数码管 0-9 code unsigned char tab1=0xBF,0x86,0xDB,0xCF,0xE6,0xED,0xFD,0x87,0xFF,0xEF; /共阴数码管0-9带小数点 sbit key1 = P10; /
7、开始、暂停 sbit key2 = P11; /记数 sbit key3 = P12; /上翻 sbit key4 = P13; /下翻 sbit key5 = P14; /清零 sbit key6 = P15; /快进static unsigned char ms,sec; static unsigned char Sec8,Ms8; static int i ,j; void delay(unsigned int cnt) /延时程序 while(-cnt); void main() unsigned char key3_flag=0,key4_flag=0; TMOD |=0x01;/定
8、时器0 10ms in 12M crystal 用于计时 TH0=0xd8; TL0=0xf0; ET0=1; TR0=0; TMOD |=0x10; /定时器1用于动态扫描 TH1=0xF8; TL1=0xf0; ET1=1; TR1=1; EA =1; sec=0; /初始化 ms=0; P1=0xff; i=0; j=0; start: while(1) /开始、暂停 if(!key1) /判断是否按下 delay(50); /去抖 if(!key1) while(!key1) /等待按键释放 ; TR0=!TR0; /记录 if(!key2) /判断是否按下 delay(50); /去
9、抖 if(!key2) while(!key2) /等待按键释放 ; if(i=8) /8组数据记录完毕 TR0=0; goto start; Seci= sec; /将数据存入数组 Msi= ms; i+; /上翻 if(!key3) delay(50); if(!key3) while(!key3) ; TR0=0; key3_flag=1; /按键3标志 if(j=i) goto start; else if(key4_flag) j+=2; key4_flag=0; sec=Secj;ms=Msj; /显示数组里的内容 j+; /下翻 if(!key4) delay(50); if(!
10、key4) while(!key4) ; TR0=0; key4_flag=1; /按键4标志 if(j0) goto start; else if(key3_flag) j-=2; key3_flag=0; sec=Secj;ms=Msj; /显示数组里的内容 j-; /清零 if(!key5) delay(50); if(!key5) while(!key5) ; TR0=0; ms=0; sec=0; for(i=0;i8;i+) Seci=0;Msi=0; i=0; if(!key6) delay(50); if(!key6) while(!key6) ; TR0=0; sec+;/s
11、ec=Secj;ms=Msj; /*/ /* 定时中断1 */ /*/ void time1_isr(void) interrupt 3 using 0/定时器1用来动态扫描 static unsigned char num; TH1=0xF8;/重入初值 TL1=0xf0; switch(num) case 0: P2=0xfe;P0=tabsec/10;break;/显示秒十位 case 1: P2=0xfd;P0=tab1sec%10;break; /显示秒个位 case 2: P2=0xfb;P0=tabms/10;break;/显示十位 case 3: P2=0xf7;P0=tabm
12、s%10;break; /显示个位 default:break; num+; if(num=4) num=0; /*/ /* 定时中断0 */ /*/ void tim(void) interrupt 1 using 1 TH0=0xd8;/重新赋值 TL0=0xf0; ms+;/毫秒单元加1 if(ms=100) ms=0;/等于100时归零 sec+;/秒加1 if(sec=60) sec=0;/秒等于60时归零 六、实训总结通过这次的课程设计,使我对单片机程序设计的方法、要求有了初步的了解并且积累了一些实践经验,对软件的应用有了更进一步的了解,相信对以后进一步学习单片机知识,这对自己无论
13、是在感性上还是理性上都会有一定的帮助,而且通过这次的设计,激发了我对单片机课程浓厚的兴趣,增强了我对书本理论的运用。虽然现在对所涉及的知识和要求的综合分析能力较为复杂,可这其中体现了创新思想和知识的结合应用,今后我将更广泛地涉及这方面的知识,希望能在这一领域有所成就实验利用单片机的定时器/计数器定时和记数的原理,结合实验箱上的集成电路芯片LED数码管以及实验箱上的按键来设计计时器。将软、硬件有机地结合起来,使得系统能够正确地进行计时,数码管能够正确地显示时间。其中本实验设计了八个开关按键:其中一个按键按下一开始计时,即秒表开始键,另一个按键按下去时暂停计时,使秒表停留在原先的计时,第三个按键按
14、下去时清0(复位键),除此之外还可以快进一秒或十秒,并且可以通过上翻和下翻可以看到之前所记过的时间。本实验中开始时都要使各按键回到各初始位置,最终结果成功实现。代码:#includecode unsigned char tab=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; /共阴数码管 0-9 code unsigned char tab1=0xBF,0x86,0xDB,0xCF,0xE6,0xED,0xFD,0x87,0xFF,0xEF; /共阴数码管0-9带小数点 sbit key1 = P10; /开始、暂停 sbit key2 =
15、 P11; /记数 sbit key3 = P12; /上翻 sbit key4 = P13; /下翻 sbit key5 = P14; /清零 sbit key6 = P15; /快进sbit key7 = P16; /加快10秒sbit key8 = P17; /快退static unsigned char ms,sec; static unsigned char Sec8,Ms8; static int i ,j; void delay(unsigned int cnt) /延时程序 while(-cnt); void main() unsigned char key3_flag=0,k
16、ey4_flag=0; TMOD |=0x01;/定时器0 10ms in 12M crystal 用于计时 TH0=0xd8; TL0=0xf0; ET0=1; TR0=0; TMOD |=0x10; /定时器1用于动态扫描 TH1=0xF8; TL1=0xf0; ET1=1; TR1=1; EA =1; sec=0; /初始化 ms=0; P1=0xff; i=0; j=0; start: while(1) /开始、暂停 if(!key1) /判断是否按下 delay(50); /去抖 if(!key1) while(!key1) /等待按键释放 ; TR0=!TR0; /记录 if(!k
17、ey2) /判断是否按下 delay(50); /去抖 if(!key2) while(!key2) /等待按键释放 ; if(i=8) /8组数据记录完毕 TR0=0; goto start; Seci= sec; /将数据存入数组 Msi= ms; i+; /上翻 if(!key3) delay(50); if(!key3) while(!key3) ; TR0=0; key3_flag=1; /按键3标志 if(j=i) goto start; else if(key4_flag) j+=2; key4_flag=0; sec=Secj;ms=Msj; /显示数组里的内容 j+; /下翻
18、 if(!key4) delay(50); if(!key4) while(!key4) ; TR0=0; key4_flag=1; /按键4标志 if(j0) goto start; else if(key3_flag) j-=2; key3_flag=0; sec=Secj;ms=Msj; /显示数组里的内容 j-; /清零 if(!key5) delay(50); if(!key5) while(!key5) ; TR0=0; ms=0; sec=0; for(i=0;i8;i+) Seci=0;Msi=0; i=0; /加快 if(!key6) delay(50); if(!key6) while(!key6) ; TR0=0; sec+; if(sec=100) sec=0;/秒等于100时归零 if(!key7) delay(50); if(!key7) while(!key7) ; TR0=0; sec=sec+10; if(sec=
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年短视频代拍摄合同协议
- 2025摄影师劳动合同范文
- 2025年跨境电商产品翻译行业语言测试与质量评估指南
- 2025年新能源汽车充电桩行业投资回报率分析报告
- 2025年低空经济「空中城市」无人机农业喷洒技术应用与市场分析报告
- 2025技术转让合同样本标准版
- 2025年城市空中交通(UAM)票价体系成本效益与市场盈利能力研究报告
- 基于以太网的状态监测算法-洞察与解读
- 高级肥料营销方案
- 母婴喂奶活动方案策划
- 《非营利组织管理》第4章 人力资源管理
- 智能电网与电动汽车双向互动技术
- GB/T 41304.2-2022知识管理方法和工具第2部分:设计理性知识建模
- 中考语文非连续性文本阅读10篇专项练习及答案
- 24、小数加减法整理和复习课件苏教版五上数学
- 新生儿复苏现场抢救记录表doc资料
- 生物硫磺课件
- 化工管道讲座-石化概算指标2007版
- 《罗织经》全文及翻译
- 压力容器年度检查表
- 提高安装永久起搏器患者术后24h下床活动率品管圈
评论
0/150
提交评论