单片机秒表系统设计课程设计

单片机秒表系统设计课程设计

ID:15234378

大小:552.50 KB

页数:12页

时间:2018-08-02

单片机秒表系统设计课程设计_第1页
单片机秒表系统设计课程设计_第2页
单片机秒表系统设计课程设计_第3页
单片机秒表系统设计课程设计_第4页
单片机秒表系统设计课程设计_第5页
资源描述:

《单片机秒表系统设计课程设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、单片机课程设计题目名称:基于8051的单片机秒表系统设计姓名学号:肖波(0805821)王学(08058119)王璐凯(08058117)王贤达(08058118)班级:电信0812011.6信息与电子工程学院共12页第12页单片机课程设计报告——单片机秒表系统设计信电学院2008级肖波(0805821)王学(08058119)王璐凯(08058117)王贤达(08058118)摘要:本实验是基于8051单片机所设计的,利用单片机的定时器/计数器定时和记数的原理可以实现秒表的计数以及计数的开启/暂停/继续与复位。使用LED数码七段

2、数码管予以显示。关键词:8051七段数码管秒表系统1.1目的:1、利用单片机定时器/计数器中断设计秒表,从而实现秒、十分之一秒的计时。2、综合运用所学的《单片机原理与应用》理论知识,通过实践加强对所学知识的理解,具备设计单片机应用系统的能力。3、通过本次系统设计加深对单片机掌握定时器、外部中断的设置和编程原理的全面认识复习和掌握,对单片机实际的应用作进一步的了解。4、通过本次系统设计,增强自己的动手能力。认识单片机在日常生活中的应用的广泛性,实用性。1.2用途与功能:共12页第12页本系统利用单片机的定时器/计数器定时和记数的原理

3、,通过采用protel仿真软件来模拟实现。模拟利用8051单片机、LED数码管以及控件来控制秒表的计数以及计数的开启/暂停/继续与复位!其中有两个数码管用来显示数据,一个数码管显示秒(两位),另一个数码管显示十分之一秒,十分之一秒的数码管计数从0~9,满十进一后显示秒的数码管的数字加一,并且十分之一秒显示清零重新从零计数。计秒数码管采用两位的数码管,当计数超过范围是所有数码管全部清零重新计数。二、硬件设计2.1硬件设计思想8051单片机芯片一个、LED数码显示管三个,低压电源、开关(按钮)两个、电阻、电容及导线若干。芯片介绍:80

4、51是一种带4K字节闪烁可编程可擦除只读存储器,8位微处理器,俗称单片机。主要特性:·4K字节可编程闪烁存储器·寿命:1000写/擦循环·数据保留时间:10年·全静态工作:0Hz-24Hz·三级程序存储器锁定·128*8位内部RAM·4*8共12页第12页可编程I/O线·两个16位定时器/计数器·5个中断源·可编程串行通道·低功耗的闲置和掉电模式·片内振荡器和时钟电路由于条件限制本系统采用软件模拟硬件系统,采用proteus软件进行模拟设计及调试工作。图1七段数码管引脚图共12页第12页图2 8051单片机外部引脚图三、试验设计原

5、理图 通过protel仿真画的原理图共12页第12页共12页第12页图3系统设计电路图四、软件设计分析程序流程图:共12页第12页是否是否定时器溢出中断对定时器重新赋值进行加一操作后重新计算时间往P0口和P2口送显示时间数码管显示中断返回主函数对定时器/计数器初始化始化程序开始判断P3^4口是否有低电平信号开中断并启动定时器开始、暂停或者继续计数置零判断P3^7口是否有低电平信号手动开关共12页第12页 实验程序:#include{sbitsta_end=P3^4;sbitreset=P3^7;unsignedc

6、harcodetable0[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};unsignedcharcodetable1[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};/*声明second10用于计数十分之一秒变化,second1用于记录秒的个*//*位,second2用于记录秒的十位*/unsignedintsecond10,second1,second2;bitbdataflag;/*以下是设置延时功能的函

7、数*/voiddelay(){unsignedchari,j;for(i=90;i>0;i--)for(j=200;j>0;j--);}}/*以下是设置时间的函数*/voidsetTime(){second10++;if(second10==10)/*当十分之一秒计数到十后从零重新计时*/{second10=0;/*同时秒计时个位加一*/second1++;if(second1==10)/*当秒计数个位到十后从零重新计时*/{second1=0;second2++;/*同时秒计时十位加一*/if(second2==6)second

8、2=0;}}}/*以下是向LED管输数据并使之显示的函数*/voiddispact(){共12页第12页P3=0xfe;P0=table1[second1];delay();P3=0xfd;P0=table1[second2];delay();P2

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

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

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