89C51单片机60秒倒计时的模拟与仿真设计
60秒倒计时时钟 单片机AT89C51 C语言程序
#include<reg51.h>typedef unsigned char uint8;typedef unsigned int uint16;/*七段共阳管显示定义*/uint8 code dispcode[ ]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10};/*定义并初始化变量*/uint8 seconde=59;uint16 mstcnt=0;/*函数声明*/void delay(uint8 k ); //延时子程序void time_pro( ); //时间处理子程序void display( ); //显示子程序/*****************************//*延时子程序*//****************************/void delay (uint8 k){uint8 j;while((k--)!=0){for(j=0;j<125;j++){;}}}/**************************//*时间处理子程序*//**************************/void time_pro( void){if(seconde==0)//秒钟设为59进制{ seconde=59; }}/*****************************//* 显示子程序*//*****************************/void display(void){P1=dispcode[seconde/10]; //显示秒的十位delay(4);P2=dispcode[seconde%10]; //显示秒的个位delay(4);}/**************************//*1s定时定时*//**************************/void timer0(void) interrupt 1 using 0//定时器0方式1,250us中断一次{TH0=0xff;TL0=0x19;TMOD = 0x01;mstcnt++;if(mstcnt==4000){seconde--;mstcnt=0; //注意对计数单元的清零}}/**************************//*主函数*//**************************/void main(void){ P1=0xff; //初始化p0口,全设为1使数码管P2=0xff; //初始化p2口,全设为1使数码管TMOD = 0x01; //time0为定时器,方式1TH0=0xff; //预置计数初值TL0=0x19;EA=1;ET0=1;TR0=1;while (1){time_pro( ); //时间处理display( ); //显示时间}}。
基于89C51单片机的秒表课程设计(论文)
摘要随着电子技术的发展,电子技术在各个领域的运用也越来越广泛,人对它的认识也逐步加深。
秒表计时器秒表计时器常常用于体育竞赛及各种其他要求有较精确时间的各领域中。
其中启/停开关的使用方法与传统的机械计时器相同,即按一下启/停开关,启动计时器开始计时,再按一下启/停开关计时终止。
而复位开关可以在任何情况下使用,即使在计时过程中,只要按一下复位开关,计时应立即终止,并对计时器清零。
本设计就是利用所学到的电子元器件将脉冲源用数码管显示出来,以制承诺简易的秒表。
以单片机为核心,设计一个秒表,具有计时功能,按键有启动计时、数据清零、停止、时间显示。
采用3个LED数码管显示时间,计时范围设置为0~99.9秒,即精确到0.1秒,用按键控制秒表的“开始”、“暂停”、“复位”,按“开始”按键,开始计时;按“暂停”按键,系统暂停计时;再按“开始”键,系统继续计时;数码管显示当前计时值;按“复位”按键,系统清零。
毕业论文(设计)原创性声明本人所呈交的毕业论文(设计)是我在导师的指导下进行的研究工作及取得的研究成果。
据我所知,除文中已经注明引用的内容外,本论文(设计)不包含其他个人已经发表或撰写过的研究成果。
对本论文(设计)的研究做出重要贡献的个人和集体,均已在文中作了明确说明并表示谢意。
作者签名:日期:毕业论文(设计)授权使用说明本论文(设计)作者完全了解**学院有关保留、使用毕业论文(设计)的规定,学校有权保留论文(设计)并向相关部门送交论文(设计)的电子版和纸质版。
有权将论文(设计)用于非赢利目的的少量复制并允许论文(设计)进入学校图书馆被查阅。
学校可以公布论文(设计)的全部或部分内容。
保密的论文(设计)在解密后适用本规定。
作者签名:指导教师签名:日期:日期:注意事项1.设计(论文)的内容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论)、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。
60s倒计时实验
R3=0; //打开十位
P0=table[num/10];
delay(1);
P0=0XFF; //赋值完后将数码管设为不显示后在重新赋值
R3=1; //关闭十位
}
void main()
{
uchar count=0; //用来计数定时器中断次数
TMOD=0x01; //T0定时工作方式,16位定时器/计数器
广东海洋大学学生实验报告书
实验名称
60s倒计时实验
课程名称
微型计算机基础
课程号
学院(系)
信息学院
专业
软件工程
班级
软件1122
学生姓名
钟琳
学号
201211701232
实验地点
科技楼403
日期
11月26日
一、实验目的
1、通过AT89C51的定时器实现60s倒计时,显示采用两位数码管动态显示。
2、用PROTEUS设计,仿真基于AT89C51单片机的60s倒计时实验。
二图
2、用KEIL编写代码
三、实验过程
电路图:
代码:
#include<reg51.h>
#define uchar unsigned char
uchar table[10]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};
void delay(xms);
sbit R2=P1^2;
sbit R3=P1^3;
int num=60;
void display()
{
R2=0; //打开个位
P0=table[num%10];
60秒倒计时器-单片机课程设计
目录一、设计要求 (3)二、设计的作用目的 (3)三、具体设计 (4)1.问题分析 (4)2.总体设计思想 (5)3.具体实现方法 (7)四、Proteus调试过程及现象 (14)五、调试问题及解决方法 (15)六、设计的优缺点分析 (16)七、总结 (16)八、参考文献 (17)一、设计要求由单片机接收小键盘阵列设定倒计时时间,倒计时的范围最大为60分钟,由LED 显示模块显示剩余时间,显示格式为 XX(分):XX(秒).X,精确到0.1s的整数倍。
倒计时到,由蜂鸣器发出报警。
绘制系统硬件接线图,并进行系统仿真和实验。
画出程序流程图并编写程序实现系统功能。
二、设计的作用目的此次设计是我们更进一步了解基本电路的设计流程,提高自己的设计理念,丰富自己的理论知识,巩固所学知识,使自己的动手动脑能力有更进一步提高,为自己今后的学习和工作打好基础,为自己的专业技能打好基础。
通过解决实际问题,巩固和加深“单片机原理与应用”课程中所学的理论知识和实验能力,基本掌握单片机应用电路的一般设计方法,提高电子电路的设计和实验能力,加深对单片机软硬知识的理解,获得初步的应用经验,为以后从事生产和科研工作打下一定的基础。
本次设计注重对单片机工作原理以及键盘控制及显示原理的理解,以便今后自己在单片机领域的学习和开发打下基础,提高自己的动手能力和设计能力,培养创新能力,丰富自己的理论知识,做到理论和实践相结合。
本次设计的重要意义还在于对单片机的内部结构和工作状态做更进一步的了解,同时还对单片机的接口技术,中断技术,存储方式和控制方式作更深层次的了解。
三、具体设计1.问题分析:在电子技术飞速发展的今天,电子产品的人性化和智能化已经非常成熟,其发展前景仍然不可估量。
如今的人们需求的是一种能给自己带来方便的电子产品,当然最好是人性化和智能化的,如何能做到智能化呢?单片机的引入就是一个很好的例子。
单片机又称单片微型计算机,也称为微控制器,是微型计算机的一个重要分支,单片机是20世纪70年代中期发展起来的一种大规模集成电路芯片,是集CPU,RAM,ROM,I/O接口和中断系统于同一硅片上的器件。
基于89C51单片机的秒表设计说明
《单片机原理与应用》课程设计报告基于89C51单片机的秒表设计专业:学号:2015-12-25一、课题名称基于89C51单片机的秒表设计二、任务要求1、计时围:0~59分59.59秒,整数四位数和小数两位数显示;2、计时精度10毫秒;3、复位按钮,计时器清零,并做好下次计时准备;4、可以对两个对象(A、B)计时,具有启/停控制;3、设开始、停止A、停止B、显示A、显示B复位按钮。
三、任务分析1、设计中包括硬件电路的设计和系统程序的设计。
其硬件电路主要有主控制器,计时与显示电路和回零、启动和停表电路等。
主控制器采用单片机89C52显示电路采用共阳极LED数码管显示计时时间。
2、利用89C52单片机的定时器/计数器定时和记数的原理,使其能精确计时。
3、P0 口输出段码数据,P2.0-P2.4 口作列扫描输出,P1.1、P3.2、P3.3、P2.5 口接四个按钮开关,分别实现开始、暂停、清零和查看上次计时时间功能。
4、利用中断系统使其能实现开始暂停的功能。
四、设计方案1、硬件方案工作原理:计时采用定时器TO中断完成,定时溢出中断周期为1ms当一处中断后向CPL发出溢出中断请求,每发出一次中断请求就对毫秒计数单元进行加一,达到10次就对十毫秒位进行加一,依次类推,直到99.99秒重新复位。
再看按键的处理。
这四个键可以采用中断的方法,也可以采用扫描的方法来识别。
复位键和查看主要功能在于数值复位和查询上次计时时间,对于时间的要求不是很严格。
而开始和停止键则是用于对时间的锁定,需要比较准确的控制。
因此可以对复位和查看按键采取扫描的方式。
而对开始和停止键采用外部中断的方式。
设计中包括硬件电路的设计和系统程序的设计。
其硬件电路主要有主控制器,显示电路和回零、启动、查看、计次电路等。
主控制器采用单片机89C52显示电路采用共阳极LED数码管显示计时时间,四个按键均采用触点式按键。
程序流程图:2、软件方案使用keil软件编程,protues软件仿真五、具体实现1、硬件电路图及工作原理描述1 (屮JP■、51单片机51单片机是对所有兼容In tel 8031指令系统的单片机的统称。
毕业设计(论文)-基于at89c51单片机的倒计时系统设计[管理资料]
HUBEI UNIVERSITY OF EDUCATION 高等教育自学考试毕业设计(论文)题目基于单片机倒计时系统专业班级电子信息工程0703班学号姓名指导教师姓名、职称所属助学单位湖北第二师范学院2011年 02月 28日毕业论文开题报告书基于单片机倒计时系统摘要摘要:来随着计算机在社会领域的渗透,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。
在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。
模拟多通道压力系统是利用压力传感器采集当前压力并放映在显示器上,它可以分析压力过量程,并发出报警。
并采用电子秤原理可根据输入单价准确的计算出物体的金额。
本篇论文讨论了简单的倒计时器的设计与制作,对于倒计时器中的LED数码显示器来说,我为了简化线路、降低成本,采用以软件为主的接口方法,即不使用专门的硬件译码器,而采用软件程序进行译码。
关键词:单片机;AT89C51;LED数码管显示器;keil C;晶体振荡器目录绪论 (9)1 课题背景 (10) (10)国内外研究现状 (10)课题研究方法 (11)2 硬件设计 (12)单片机简介 (12)单片机技术的发展 (12)单片机系统的应用 (13).2 单片机AT89C51 (14)AT89C51 的基本结构和引脚功能 (14)机器周期和指令周期 (17)LCD简介 (18)LCD显示器的基本结构和特点 (18)本章小结 (19)3 软件设计 (20)中断机制 (20)硬件中断和软件中断 (20)定时器/计时器 (21)定时器/计时器的结构 (21)定时器/计数器的计数信号 (21)程序结构类型 (22) (22) (25) (26) (26)4 软件设计 (28) (28) (28)C软件 (28) (29)、软、硬联接 (31) (31)结束语 (32)总结 (33)致谢 (34)参考文献 (35)附录 (36)附录A (36)附录B (37)绪论随着人们生活水平的不断提高。
(完整)基于89C51单片机的秒表设计
目录1 课程设计的目的2 课程设计题目描述和要求2。
1实验题目2。
2设计指标2。
3设计要求2.4增加功能2.5课程设计的难点2。
6课程设计内容提要3 课程设计报告内容3.1设计思路3.2设计过程3。
3程序流程3。
4源程序及说明3。
5实验效果4 心得体会基于89C51单片机的秒表设计摘要:单片机控制秒表是集于单片机技术、模拟电子技术、数字技术为一体的机电一体化高科技产品,具有功耗低,安全性高,使用方便等优点。
本次设计内容为以89C51单片机为核心的秒表,并添加倒计时功能,采用单片机技术控制.设计内容以硬件电路设计和软件设计二部分来设计。
利用单片机的定时器计数器定时和计数的原理,用集成电路芯片、LED数码管以及按键来设计计时器。
将软、硬件有机地结合起来,使他拥有正确的计时、暂停、清零、并同时可以用数码管显示,在现实生中应用广泛.1 课程设计的目的《单片机原理与应用技术》课程设计是学好本门课程的实践性教学环节,课程设计的目的就是配合本课程的教学和平时实验,以达到巩固消化课程的内容,进一步加强综合应用能力及单片机应用系统开发和设计能力的训练,启发创新思维,使之具有独立单片机产品和科研的基本技能,是以培养学生综合运用所学知识的过程,是知识转化为能力和能力转化为工程素质的重要阶段。
2 课程设计题目描述和要求2。
1实验题目基于89C51设计秒表,可以实现计时功能,精确时间到0。
01秒2.2设计指标了解80C51芯片的工作原理和工作方式,使用该芯片对LED数码管进行显示控制,实现用单片机的端口控制数码管,显示分、秒,并能用按钮实现秒表起动、停止、倒计时清零等功能,精确到1秒。
要求选用定时器的工作方式,画出使用单片机控制LED数码管显示的电路图,并实现其硬件电路,并编程完成软件部分,最后调试秒表起动、停止、清零等功能.2.3设计要求(1)画出电路原理图(或仿真电路图)(2)软件编程与调试2。
4增加功能增加一个复位按键(即清零),一个“暂停”和“开始”按键,增加倒计时功能,可通过按键增加分秒倒计时时间,一个倒计时“逐渐自减”按键.2。
at89c51单片机led数字倒计时器课程设计论文__大学毕业论文设计
课题: AT89C51单片机LED数字倒计时器专业:班级:学号:姓名:指导教师:设计日期:成绩:重庆大学城市科技学院电气学院目录一、设计目的作用 (1)二、设计要求 (1)三、设计的具体实现 (1)1、设计原理 (1)(1)系统设计方案 (1)(2)功能模块 (2)(3)工作原理: (2)2、系统设计 (2)(1)显示模块 (2)(2)晶振模块 (3)(3)复位电路: (3)(4)按键模块: (4)(5)报警模块: (5)3、系统实现 (5)(1)实物图 (5)(2)分析 (6)四、总结 (6)五、附录 (7)附录1: (7)附录2: (8)附录3: (8)六、参考文献 (15)LED 数字倒计时器设计报告一、设计目的作用1、掌握51单片机最小系统的设计;2、掌握按键电路设计、LED 数码管的使用;3、掌握C51的编程方式。
二、设计要求基于AT89C51单片机的LED 数字倒计时器主要具有如下功能,具体要求如下:1、LED 数码管显示倒计时时间。
2、倒计时过程中能设置多个闹钟,当倒计时值倒计到设定值时会发出2s 的报警声音。
(K1设置小时,K2设置分钟,K3设置秒钟,K4完成退出)3、通过按键可以对倒计时设定处置。
倒计时初值范围在24:00:00~00:00:60之间,设置成功后复位初始值为成功设定值。
三、设计的具体实现1、设计原理(1)系统设计方案:基于AT89C51单片机的数码管显示模块显示的倒计时器。
主要是以单片机来控制,用按键来设定倒计时初始时刻的值,数码管作为显示模块来显示剩余的时间。
此电路对于倒计时器中的LED 数码管示器来说,采用以软件为主的接口方法,即不使用专门的硬件译码器,而采用软件程序进行译码。
显示模块晶振模块复位模块按键模块报警模块图1 LED数字倒计时器设计框图(2)功能模块:倒计时器的总体包括显示电路,按键电路,复位电路,晶振电路和报警电路等五个模块。
显示模块显示计数与灭灯,复位模块控制电路完成计数的直接清零,暂停/连续技术,用按键模块来设定倒计时初始时刻的值,报警模块实现定时时间到报警等功能。
单片机课程设计_基于89c51的倒计时牌设计
单片机系统课程设计单片机系统课程设计成绩评定表设计课题:基于89C51的倒计时牌设计学院名称:电气工程学院专业班级:学生姓名:学号:指导教师:设计地点:设计时间:指导教师意见:成绩:签名:年月日单片机系统课程设计课程设计名称:基于89C51的倒计时牌设计专业班级:学生姓名:学号:指导教师:课程设计地点:课程设计时间:单片机系统课程设计任务书学生姓名专业班级学号题目课题性质工程设计课题来源选题指导教师主要内容(参数)基于89C51的倒计时牌设计主要内容:•利用8位数码管能够显示日、时、分、秒倒计时。
•通过按键来实现倒计时时间的设定。
•倒计时时间到时,蜂鸣器报警并使LED点亮。
任务要求(进度)第1-2天:熟悉课程设计任务及要求,查阅技术资料,确定设计方案。
第3-4天:按照确定的方案设计单元电路。
要求画出单元电路图,元件及元件参数选择要有依据,各单元电路的设计要有详细论述。
第5-6天:软件设计,编写程序。
第7-8天:实验室调试。
第9-10天:撰写课程设计报告。
要求内容完整、图表清晰、文理流畅、格式规范、方案合理、设计正确,篇幅合理。
主要参考资料[1] 张迎新.单片微型计算机原理、应用及接口技术(第2版)[M].北京:国防工业出版社,2004[2]伟福LAB6000系列单片机仿真实验系统使用说明书[3] 阎石.数字电路技术基础(第五版).北京:高等教育出版社,2006审查意见系(教研室)主任签字:年月日目录1 概述 (1)1.1 研究背景 (2)1.2 设计思想及基本功能 (2)2 总体方案设计 (3)2.1 方案选取 (3)2.2 系统框图 (4)2.3 总体方案设计 (3)3 硬件电路设计 (4)3.1 电源电路设计 (4)3.2 晶振电路 (6)3.3 复位电路 (7)3.4 键盘电路 (7)3.5 显示电路 (7)3.6 蜂鸣器及LED电路 (12)4 系统软件设计 (12)4.1 主程序软件设计 (12)4.2 键盘程序设计 (13)4.3 定时程序设计 (13)4.4 报警程序设计 (15)5 总结 (15)参考文献 (16)附录A 系统原理图 (18)附录B 程序清单 (23)附录C机器码清单 (23)1概述•1.1研究背景随着2014年新年钟声的临近,一年一度的全球华人文化盛宴春节联欢晚会也正式进入了紧张的倒计时。
单片机控制的60s倒计时
单片机控制的60s倒计时一.实验目的1.用单片机AT89C51的定时/计数器实现60s倒计时。
两位数码管静态显示倒计时秒值。
2.用PROTEUS设计、仿真基于AT89C51单片机的60s倒计时。
二.PROTEUS电路设计(1)AT89C51.BUS:总线式单片机(2)RES:电阻;(3)7SEG-COM-AN-GRN:带公共端共阳七段绿色数码管(4)BUTTON:按钮(5)CAP、CAP-ELEC:电容、电解电容(6)CRYSTAL:晶振2. 放置元器件、放置电源和地、连线、元器件属性设置、电气检测图中与P1口相接的数码管(左)显示十位数,与P2口相接的数码管(右)显示个位数,两个共阳数码管为静态显示,其中个位数数码管为总线接法。
总线标注:由P2口的总线引脚引出总线,并标注为P2[0..7]。
单击电线标注按钮Label,单击该总线,在弹出的编辑对话框“Edit Wire Label”中的“String”一栏中输入标注名P2[0..7],如图所示PAT快速线标注:单击属性分配工具按钮或直接由键盘敲入快捷键“A ”,弹出如图所示的对话框,并按此图进行设置,设置完成后单击“OK”按钮退出。
其中“String”初值“Count”为0,增量“Increment”为1,即首次对电线单击,标注自动以P20开始,对电线每单击一次,便以P21、P22、…递增式自动标注。
在编辑区一次单击个位数数码管的限流电阻与总线P2[0...7]间的电线,由上向下,即数码管的a~g的限流电阻与总线的连接电线,便在各电线上自动标注为P20、P21……P26如图所示。
下图为60s倒计时的电路原理图三.源程序设计、生成目标代码文件1.流程图2.源程序设计3.生成目标代码四.PROTEUS仿真1.加载目标代码文件打开元器件单片机属性窗口,在“Program File”栏中添加上面编译好的目标代码文件,在“Clock Frequency”栏中输入晶振频率为12MHZ。
单片机60s倒计时c语言项目报告
倒计时项目报告电子08-1班组员:目录目录 (2)一.摘要 (3)二.项目要求 (3)三.方案选择 (4)3.1 LED显示方式的选择 (4)数码管的介绍 (4)动、静态的显示 (5)3.2定时计数器的工作方式和溢出判断方式的选择 (6)定时计数器的工作方式 (6)溢出判断方式 (7)3.3本项目的选择 (7)四.电路分析 (7)4.1AT89S51 (7)4.2LED数码管 (11)五.软件介绍 (12)5.1流程图 (12)5.2程序清单与解释 (13)六.电路仿真 (15)七.焊接调试 (17)7.1元件清单 (17)7.2调试过程 (17)7.3产品照片 (17)八.项目总结 (18)一.摘要随着计算机技术的发展,在后PC时代里,嵌入式得到了飞快的发展,同时已经渗透到各个领域。
作为嵌入式重要组成部分的单片机,以它的优势占领重要的地位。
当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未见的速度被单片机智能控制系统所取代单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机,目前,一个学习与应用单片机的高潮正在工厂、学校及企事业单位大规模地兴起学习单片机的最有效方法就是理论与实践并重,本项目用AT89S51单片机自制了一款简易倒计时,介绍了其软件编程方法,和一些简单的硬件电路。
软件应用了C语言编程,应用到AT89S51的一个定时计数器,一个外部中断,显示部分应用了LED动态扫描的方法。
应用到三极管的开关特性。
基本的功能是60秒循环倒计时,可以用一个开关来控制倒计时的停止与开始。
二.项目要求应用定时计数器及其中断实现60s倒计时,并将倒计时的过程显示在LED数码管上,倒计时循环进行。
三.方案选择3.1 LED显示方式的选择LED数码管的介绍数码管是一种半导体发光器件,其基本单元是发光二极管。
单片机设计60秒倒计时正计时+Proteus仿真
60秒倒计时设计一:1.目的课程设计是单片机课程教学的最后一个环节,是对学生进行全面的系统的训练。
2.要求单片机控制的60s倒计时(1)用单片机AT89C51的定时器实现60s倒计时。
(2)用PROTEUS设计,仿真基于AT89c51单片机的60s倒计时实验。
3. 目标通过课程设计,使自己深刻理解并掌握基本概念,掌握单片机的基本应用程序设计及综合应用程序设计的方法。
2:方案选择图2.1:60秒倒计时总体电路设计本设计由硬件设计和软件设计两部分组成,总电路框图如图2.1所示。
具体设计:通过AT89C51型号单片机,由P1和P2两组I/O引脚分别控制两个7SEG–COM –ANODE型号数码管,分十位控制和个位控制,达到显示60秒倒计时的目的。
通过复位电路,在仿真过程中点击开关实现60复位3.1 AT89C51外形及引脚排列如图3.1所示图3.1:89C51的核心电路框图主要特性·与MCS-51 兼容·4K字节可编程闪烁存储器·寿命:1000写/擦循环·数据保留时间:10年·全静态工作:0Hz-24MHz·三级程序存储器锁定·128×8位内部RAM·32可编程I/O线·两个16位定时器/计数器·5个中断源·可编程串行通道·低功耗的闲置和掉电模式·片内振荡器和时钟电路管脚说明(1)电源及时钟引脚(4个)Vcc: 电源接入引脚Vss:接地引脚XTAL1:晶振震荡器接入的一个引脚(采用外部振荡器时,此引脚接地);XTAL2:晶体振荡器的另一个引脚(采用外部振荡器时,此引脚作为外部振荡器信号的输入端)。
(2)控制线引脚(4个)RST/Vpd:复位信号输入引脚/备用电源输入引脚;ALE:地址锁存允许信号输出引脚/编程脉冲输入引脚:EA:内外存储器选择引脚/片外EPROM编程电压输入引脚;PSEN:外部程序存储器选通信号输出引脚。
单片机课程设计60秒倒计时
前言在生活和生产的各领域中,凡是有自动控制要求的地方都会有单片机的身影出现;从简单到复杂,从空中、地面到地下,凡是能想像到的地方几乎都有使用单片的需求。
现在尽管单片机的应用已经很普遍了,但仍有许多可以用单片机控制而尚未实现的项目,因此,单片机的应用大有想像和拓展空间。
单片机的应用有利于产品的小型化、多功能化和智能化,有助于提高劳动效率,减轻劳动强度,提高产品质量,改善劳动环境,减少能源和材料消耗,保证安全等。
但是,单片机应用的意义绝不仅限于它的广阔范围以及所带来的经济效益上,更重要的意义还在于:单片机的应用正从根本上改变着传统的控制系统设计思想和设计方法。
从前必须有模拟电路或数字电路实现的大部分功能,现在已能使用单片机通过软件(编程序)方法实现了。
这种以软件取代硬件并提高系统性能的控制系统“软化”技术,称之为微控制技术。
微控制技术是一种全新的概念,是对传统控制技术的一次革命。
随着单片机应用的推广普及,微控制技术必将不断发展、日益完善和更加充实。
近年来随着计算机在社会领域的渗透, 单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。
在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。
模拟多通道压力系统是利用压力传感器采集当前压力并反映在显示器上,它可以分析压力过量程,并发出报警。
并采用电子秤原理可根据输入单价准确的计算出物体的金额。
本篇论文讨论了简单的倒计时器的设计与制作,对于倒计时器中的四位LED数码显示器来说,我为了简化线路、降低成本,采用以软件为主的接口方法,即不使用专门的硬件译码器,而采用软件程序进行译码。
目录第1章方案论证1.1 课程设计的目的和要求 (1)1.2 总体设计 (1)第2章硬件设计 (2)2.1 AT89S51芯片概述 (13)2.2 LED数码管显示器概述 (15)2.3 其他元器件介绍及参数选择 (18)第3章软件设计 (28)3.1 程序框图 (28)3.2 定时/计数器初值计算 (2)3.3 软件程序…………………………………………………………………………………………………………………………………………………………第4章调试与仿真4.1 Keil软件介绍及使用 (30)4.2 Proteus软件介绍及使用 (30)课程设计心得体会………………………………………………………………………………………………………………………………………参考文献 (30)第一章方案论证1.1课程设计的目的和要求1.目的课程设计是单片机课程教学的最后一个环节,是对学生进行全面的系统的训练。
C51单片机60秒倒计时的模拟与仿真设计
C51单片机60秒倒计时的模拟与仿真设计C51单片机是一种非常常用的单片机型号,在许多嵌入式系统中都有广泛的应用。
60秒倒计时是一种简单但实用的计时功能,可以在各种场景下使用,比如比赛计时、实验计时等。
这里将介绍如何使用C51单片机来实现并仿真设计一个60秒倒计时。
接下来,我们详细说明60秒倒计时的设计步骤。
1.硬件连接:将4位共阳数码管的共阳极接到单片机的P1口(P1.0-P1.3),将数码管的a-g段分别接到单片机的P2口(P2.0-P2.6)。
在P1口和P2口之间加上适当的上拉电阻。
2.编写程序:使用Keil C51环境新建一个C语言项目,并编写以下程序:```c#include <reg51.h>sbit D1 = P2^0;sbit D2 = P2^1;sbit D3 = P2^2;sbit D4 = P2^3;void delay(unsigned int t)unsigned int i, j;for(i=0; i<t; i++)for(j=0; j<0x4e; j++); }void maiunsigned int i, j, k; while(1)for(i=5; i>=0; i--)for(j=9; j>=0; j--)for(k=9; k>=0; k--)D1=i;D2=j;D3=k/10;D4=k%10;delay(1000);}}}}```4.调试和仿真:将单片机开发板接上电源,程序将开始运行。
我们可以通过观察数码管的显示来判断程序是否正常运行。
在程序开始时,数码管将显示59:59~00:00的倒计时时间,每隔1秒钟更新一次。
经过60秒后,数码管将停留在00:00的状态。
使用C51单片机实现60秒倒计时模拟和仿真设计非常简单,只需几步即可完成。
这个简单的例子也可以帮助初学者更好地理解和掌握C51单片机的使用方法。
当然,实际应用中可能会有更复杂的需求,需要进一步扩展和优化程序,但整体框架和思路仍然是相似的。
单片机课程设计方案60秒倒计时.doc
前言在生活和生产的各领域中,凡是有自动控制要求的地方都会有单片机的身影出现;从简单到复杂,从空中、地面到地下,凡是能想像到的地方几乎都有使用单片的需求。
现在尽管单片机的应用已经很普遍了,但仍有许多可以用单片机控制而尚未实现的项目,因此,单片机的应用大有想像和拓展空间。
单片机的应用有利于产品的小型化、多功能化和智能化,有助于提高劳动效率,减轻劳动强度,提高产品质量,改善劳动环境,减少能源和材料消耗,保证安全等。
但是,单片机应用的意义绝不仅限于它的广阔范围以及所带来的经济效益上,更重要的意义还在于:单片机的应用正从根本上改变着传统的控制系统设计思想和设计方法。
从前必须有模拟电路或数字电路实现的大部分功能,现在已能使用单片机通过软件(编程序)方法实现了。
这种以软件取代硬件并提高系统性能的控制系统“软化”技术,称之为微控制技术。
微控制技术是一种全新的概念,是对传统控制技术的一次革命。
随着单片机应用的推广普及,微控制技术必将不断发展、日益完善和更加充实。
近年来随着计算机在社会领域的渗透 , 单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。
在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。
模拟多通道压力系统是利用压力传感器采集当前压力并反映在显示器上,它可以分析压力过量程,并发出报警。
并采用电子秤原理可根据输入单价准确的计算出物体的金额。
本篇论文讨论了简单的倒计时器的设计与制作,对于倒计时器中的四位 LED数码显示器来说,我为了简化线路、降低成本,采用以软件为主的接口方法,即不使用专门的硬件译码器,而采用软件程序进行译码。
目录第1章方案论证课程设计的目的和要求 1总体设计 1第2章硬件设计 2 AT89S51芯片概述 13 LED数码管显示器概述 15其他元器件介绍及参数选择 18第3章软件设计 28程序框图 28定时 / 计数器初值计算 2软件程序第4章调试与仿真Keil软件介绍及使用 30Proteus软件介绍及使用 30课程设计心得体会参考文献 30第一章方案论证课程设计的目的和要求1.目的课程设计是单片机课程教学的最后一个环节,是对学生进行全面的系统的训练。
基于protues的单片机课程设计60s倒计时及电子时钟
3、设计的大体分析: 这两个设计题目要求的硬件电路都主要由 AT89C51 芯片、LED 数码管显示器、晶
振产生电路、复位电路组成。其中电子时钟的课程设计外加了 8155 芯片的扩展电路。还 有 AT89C51 芯片主要由软件完成驱动。最终通过 Keil 与 Proteus 软件联调完成模拟仿真功 能。
限于,设计者的学识有限,缺点错误在所难免,殷切希望老师,同学给予批评、指正。 【关键词】 单片机;AT89S51; LED 数码管显示器;keil C51;倒计时器;电子时钟
英文摘要
Permeate in the social realm along with the calculator in recent years, single slice the application of the machine just at constantly alignment thorough, arouse a traditional control an examination a day a new moon benefit renewal in the meantime.In solidly the hour the examination the single slice that controls with auto the machine the application the system, single slice machine usually Be a core parts to use, only single slice the machine aspect knowledge is not enough, return should according to concrete the hardware structure, and aim at concrete application the software of[with] the object characteristics combine to make perfect.
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机结课设计论文学院:班级:姓名:学号:任课老师:二〇一二年五月目录1学习心得 (2)2结课设计 (2)3正文 (4)3.1 设计要求 (4)3.2 结课设计的目标 (4)3.3 设计方法和内容 (4)3.3.1硬件设计方法 (5)3.3.2软件设计方法 (9)3.4 软件调试过程 (11)3.4.1 系统调试工具keil C51 (11)3.4.2 系统调试工具PROTEUS (11)4设计总结 (12)5参考文献 (13)学习心得单片机课程是我们专业一个很重要的课程,因为单片机方面的很多知识都应用在机电一体化中。
现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。
了解到单片机的重要性,一开始我就决定了一定要好好学这门课。
刚开始接触单片机是很陌生的,当学到89C51单片机的结构及原理这一章的时候,感觉书本里面的内容抽象且难以理解,心里面本能地就有一股抵制情绪在作怪。
但是一想到单片机是如此的重要又不得不逼着自己去学去记。
学到指令系统这部分内容的时候,里面的很多指令往往让自己感到厌烦,面对一些冗长的汇编程序,往往不用看到最后就已经失去兴趣了。
感觉自己学习单片机的过程其实就是一个对陌生领域的本能的抵制而又渴望征服的过程!我意识到单片机的重要性也从心里面想过要学好这门课程,在学习的过程中我尽力的克服了由本能产生的对抽象知识的抵制情绪,上课认真听讲,做好笔记,最后总算对单片机有一个比较全面的了解。
特别是最后做的那七个实验的时候,每一次我都会认真的思考该怎么去实现这个功能,怎么样从书本中得到答案,怎么样去做好理论联系实际。
在实验的实践过程中,我发现要学好单片机不仅仅要认认真真学习书本上的理论知识,更要学得透彻,还要实际操作单片机。
理论联系实际,这样的学习才不会变得更加生动,更容易调动学习积极主动性。
虽然单片机这门课程已经结课了,但是老师传授给我的知识将使我终身受益!短短几十个学时的学习,老师作为领路者把我带入了单片机这一奇妙的领域。
让我感受到了单片机的强大,实用与前景。
我表示要把这门课程的结束当做是另外一个征程的开始,单片机的学习可以用这么一句话形容——路漫漫其修远兮,吾将上下而求索。
结课设计本结课设计题目:单片机控制60s倒计时,利用定时器和计数器的原理将倒计时过程显示在LED数码管上。
应用PROTEUS软件设计,仿真基于AT89c51单片机的60s倒计时实验。
通过做一个综合性结课设计题目,达到对课程内容的消化、理解并提高解决问题的能力的目的。
正文3.1 设计要求对于单片机控制的60s倒计时的要求如下:(1)用单片机AT89C51的定时器实现60s倒计时。
本结课设计中用两位数码管静态显示倒计时秒值。
(2)用PROTEUS软件设计,仿真基于AT89c51单片机的60s倒计时实验。
3.2 结课设计的目标通过结课设计,使自己深刻理解并掌握基本概念,掌握单片机的基本应用程序设计及综合应用程序设计的方法。
通过做一个综合性结课设计题目,达到对内容的消化、理解并提高解决问题的能力的目的。
3.3 设计方法和内容本设计由硬件设计和软件设计两部分组成,总电路如图1所示,硬件设计主要包括单片机芯片选择,数码管选择及晶振,电容,电阻等元器件的选择及其参数的确定;软件设计主要是实现60秒倒计时程序的编写,包括利用中断实现1秒的定时及60秒的倒计时。
具体设计:通过AT89C51型号单片机,由P1和P2两组I/O引脚分别控制两个7SEG –COM –ANODE型号数码管,分十位控制和个位控制,达到显示60秒倒计时的目的。
通过复位电路,在仿真过程中点击开关实现60复位。
图1 60秒倒计时总体电路设计3.3.1硬件设计方法AT89C51的芯片概述AT89C51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89C51可为许多嵌入式控制应用系统提供高性价比的解决方案。
AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
其工作电压在4.5-5V,一般我们选用+5V电压。
外形及引脚排列如图2所示:AT89C51主要特性图2:89C51的核心电路框图·与MCS-51 兼容·4K字节可编程闪烁存储器·寿命:1000写/擦循环·数据保留时间:10年·全静态工作:0Hz-24MHz·三级程序存储器锁定·128×8位内部RAM·32可编程I/O线·两个16位定时器/计数器·5个中断源·可编程串行通道·低功耗的闲置和掉电模式·片内振荡器和时钟电路AT89C51管脚说明(1)电源及时钟引脚(4个)Vcc: 电源接入引脚Vss:接地引脚XTAL1:晶振震荡器接入的一个引脚(采用外部振荡器时,此引脚接地);XTAL2:晶体振荡器的另一个引脚(采用外部振荡器时,此引脚作为外部振荡器信号的输入端)。
(2)控制线引脚(4个)RST/Vpd:复位信号输入引脚/备用电源输入引脚;ALE:地址锁存允许信号输出引脚/编程脉冲输入引脚:EA:内外存储器选择引脚/片外EPROM编程电压输入引脚;PSEN:外部程序存储器选通信号输出引脚。
(3)并行I/O引脚P0.0-P0.7:一般I/O口引脚或数据/低位地址总线复用引脚;P1.0-P1.7:一般I/O口引脚;P2.0-P2.7:一般I/O口引脚或高位地址总线引脚;P3.0-P3.7:一般I/O口引脚或第二功能引脚LED数码管显示器概述本设计中采用的是7SEG–COM –ANODE型号数码管,它是一种半导体发光器件,其基本单元是发光二极管。
数码管的分类数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按能显示多少个“8”可分为1位、2位、4位等等数码管;按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。
共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。
共阳数码管在应用时应将公共极COM 接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。
当某一字段的阴极为高电平时,相应字段就不亮。
共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。
共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。
当某一字段的阳极为低电平时,相应字段就不亮。
LED数码管有两种连接方法如下:共阳极接法。
把发光二极管的阳极连在一起构成公共阳极,使用时公共阳极接+5V,每个发光二极管的阴极通过电阻与输入端相连。
共阴极接法。
把发光二极管的阴极连在一起构成公共阴极,使用时公共阴极接地。
每个发光二极管的阳极通过电阻与输入端相连。
图3 LED数码管的两种连接方法测量数码管引脚,分共阴和共阳两类:找公共共阴和公共共阳:首先,我们找个电源(3到5伏)和1个1K(几百欧的也行)的电阻,VCC串接个电阻后和GND接在任意2个脚上,组合有很多,但总有一个LED会发光的,找到一个就够了,然后GND不动,VCC(串电阻)逐个碰剩下的脚,如果有多个LED(一般是8个),那它就是共阴的了。
相反用VCC不动,GND逐个碰剩下的脚,如果有多个LED(一般是8个),那它就是共阳的。
也可以直接用数字万用表,红表笔是电源的正极,黑表笔是电源的负极。
3.3.2软件设计方法图4 程序框图定时/计数器初值计算(1)本电路应用TIMER0 MODE 16位计数器的计时中断法。
(2)1秒等于1000000微秒,而每一计时脉冲是1微秒,因此需输入100000个计时脉冲,方可达到1秒的时间。
本设计中,设定中断每次溢出时间50ms。
(3)由上式得知,循环20次即可达到1秒定时,即:N=t/Tcy=0.05s/0.000001=5000X=65536-5000=15536=3CB0H(4)由上式得知5000个脉冲,首先需设定TL0=3CH,TH0=0B0H,此时第1次只要输入5000个脉冲输入,就会溢出;第2次至第20次,则需每1000000个计时脉冲,定时1秒。
(5)上电时,显示60,开始倒数计时按下开关实现复位。
软件程序ORG 00HSJMP STARORG 1BHSJMP T1S; 转T1中断服务程序ORG 30HSTAR: MOV R2,#60;倒计时初值MOV R4,#20;定时中断溢出计数器R4初值为20MOV IE,#88H;T1开中断MOV TMOD,#10H;T1方式1MOV TH1,#3CH;定时初值MOV TL1,#OBOH;定时初值SETB TR1;启动T1ACALL DIS;调用显示子程序SJMP $TIS: MOV TH1,#3CH; 中断程序MOV TL1,#0B0H; 重装初值DJNZ R4,T1S1; 定时1S到否MOV R4,#20; 到1S,重置R4=20DJNZ R2,T1S0; 倒计时递减CLR TR1; 倒计时结束,关定时器T1S0: ACALL DIS;调显示T1S1: RETI;中断返回SEG7: INC A;A的值加一MOVC A,@A+PC; 取显示断段RETDB 0C0H,0F9H,0A4H,0B0H;0至3的共阳型显示码DB 99H,92H,82H,0F8H;4至7的共阳型显示码DB 80H,90H,88H,83H;8至B的共阳型显示码DB 0C6H,0A1H,86H,8EH;C至F的共阳型显示码DIS: MOV A,R2;单字节十六进制数转为十进制数MOV B,#10DIV ABACALL SEG7MOV P1,A;显示十位MOV A,BACALL SEG7MOV P2,A;显示个位RET;子程序返回END3.4 软件调试过程3.4.1 系统调试工具keil C51Keil C51 仿真器是一款利用KEIL C51 的IDE 集成开发环境作为仿真环境的廉价仿真器,是利用SST公司具有IAP功能的单片机SST89C58制作而成,主要是利用了SST89C58的IAP功能,所谓IAP功能是In application program 的英文缩写,是在应用编程的意思,通俗一点讲就是:它可以通过串口将用户的程序下载到单片机中,可以通过串口对单片机进行编程。
它之所以具有这种功能,实际上它有两块程序flash区,其中一块flash中运行的程序可以更改另外的一块程序flash区中的程序,正是利用这一特性才用它作成了仿真器,我们把仿真器的监控程序事先烧入SST89C58,监控程序通过SST89C58的串口和PC通讯,当使用KEIL C51的IDE环境仿真时,用户的程序通过串口被监控程序写入flash程序区中,当用户设置断点等操作仿真程序时,flash程序中的用户程序也在相应的更改,从而实现了仿真功能。