文档库 最新最全的文档下载
当前位置:文档库 › 基于单片机的电子钟C语言程序

基于单片机的电子钟C语言程序

基于单片机的电子钟C语言程序
基于单片机的电子钟C语言程序

基于 5 1 单片机的电子钟 C 语言程序

#include

#include

#defineucharunsignedchar

#defineuintunsignedint

/* 七段共阴管显示定义*/

ucharcodedispcode[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F, 0xBF,0x86,0xCB,0xCF,0xEF,0xED,0xFD,0x87,0xFF,0xDF};

/* 定义并初始化变量*/

ucharseconde=0;

ucharminite=0;

ucharhour=12;

ucharmstcnt=0;

sbitP1_0=PM0;//seco nd 调整定义

sbitP1_ 仁P1A1;//mi nite 调整定义

sbitP1_2=P1A2;//hour 调整定义

/* 函数声明*/

voiddelay(uintk);// 延时子程序

voiddelay1(ucharh);

voidtime_pro();// 时间处理子程序

voiddisplay();// 显示子程序

voidkeyscan();// 键盘扫描子程序

/*****************************/

/* 延时子程序*/ voiddelay1(ucharh)

{

ucharj;

while((h--)!=0)

{ for(j=0;j<125;j++) {;}

}

}

voiddelay(uintk)

{

uinta,b,c;

for(c=k;c>0;c--) for(b=38;b>0;b--) for(a=130;a>0;a--);

} /************************* /* 时间处理子程序*/

*/

voidtime_pro(void)

{

if(seconde==60)// 秒钟设为60 进制

{seconde=0;

minite++;

if(minite==60)// 分钟设为60 进制

{minite=0;

hour++;

if(hour==24)// 时钟设为24 进制

{hour=0;}

}

}

}

/*****************************/

/* 显示子程序*/ voiddisplay(void)

{

P2=0xfe;

P0=dispcode[hour/10];// 显示小时的十位delay1(4);

P2=0xfd;

P0=(dispcode[(hour%10)])|0X80;// 显示小时的个位delay1(4); P2=0xfb;

P0=dispcode[minite/10];// 显示分的十位delay1(4);

P2=0xf7;

P0=(dispcode[minite%10])|0X80;// 显示分的个位delay1(4); P2=0xef;

P0=dispcode[seconde/10];// 显示秒的十位delay1(4);

P2=0xdf;

P0=dispcode[seconde%10];// 显示秒的个位delay1(4);

}

/*******************************/

/* 键盘扫描子程序*/

/*******************************/ voidkeyscan(void)

{

if(P1_0==0)// 按键 1 秒的调整

{

delay(2);

if(P1_0==0)

//delay(300);

{

seconde++;

if(seconde==60)

{seconde=0;}

}

}

if(P1_1==0)// 按键 2 分的调整

{

delay(2);

if(P1_1==0)

// delay(300);

{

minite++;

if(minite==60)

{minite=0;}

}

}

if(P1_2==0)// 按键 3 小时的调整

{

delay(2);

if(P1_2==0)

//delay(300);

{

hour++;

if(hour==24)

{hour=0;}

}

}

}

voidtimerO(void)interruptlusingO〃定时器0方式1, 50ms中断一次

{

TH0=0x3c;

TMOD=0x11;

mstcnt++;

if(mstcnt==20)

{

seconde++;

mstcnt=0;// 注意点。对计数单元的清零十分的重要,本次调试中就是

}// 因为忽略了这一点,给我早成了很大的被动。

}

/**************************/

/* 主函数*/

/**************************/ voidmain(void) {P1=0xff;// 初始化p1 口,全设为 1 TMOD=0x11;//time0 为定时器,方式 1 TH0=0x3c;// 预置计数初值

TL0=0xb0;

EA=1;

ET0=1;

TR0=1;

while(1)

{

keyscan();// 按键扫描time_pro();// 时间处理display();// 显示时间

}

}

数码显示电子钟实训报告

实训报告 实训名称:中夏牌ZX2042型 数码显示电子钟套件装配学院:电子信息工程学院 班级: 学号: 姓名: 地点:科技大楼B104 指导老师: 2013年5月4日 目录

一、实训目的 1、认识实验器材,了解器材性能,学会分析组装实验电路 2、把在课堂上学到的理论知识应用于生产实践 3、学会分析检查电路,排除故障 二、实训内容 按照电路原理图焊接好印刷电路板,并根据说明书安装好外壳。 三、实训仪器 万用电表、电烙铁 四、工作原理 电路原理图如下图所示。电路原理图如图,LM8560是50/60HZ的时基24小时专用集成电路,有28只管脚,1-14脚是显示比划输出15脚为正电源段,20脚为负电源端,27脚是内部振荡器RC输入端,16脚为报警输出. Tl 为降压变压器,经桥式整流及滤波后得到直流电,供主电路和显示屏工作。当交流电源停电时备用电池通过VD5向电路供电。 当调好定时时间后,并按下开关K1,显示屏有下方有绿点指示,到定时时间有驱动信号经R3使VT1工作,即可定时报警 从面板上从左到右,存在五个微动开关,分别是S4、S3、K1、S2、S1,S1调小时,S2调分钟,S3调时钟,S4调定时,K1定时报警开关 调时钟时,需按下S3的同时按动S1,即可调小时数,按下S3的同时按动S2课调分钟数 调定时报警时,需按下S4的同时按动S1调闹钟的小时数,按下S4同时按动S2可调实际上闹钟数 五、安装调试过程

先检查元器件,安装时先安装低矮和耐热的元件(如电阻),然后再装大一点的元件,最后安装怕热的元件(如三极管、集成电路等)。安装图如图所示。安装排线时,先去塑料皮上锡后,一端按原理图的序号接LED的显示屏,另一端接电路板。蜂鸣器安装时先在两端接红白导线,然后将导线接电路板上的BL+、BL-,另外还有6根跳线(J1-J4),用其他元件多余的铁线充当。安装变压器时,先将热缩管套在电源变压器初级线圈的导线上,然后与插头电源线焊接,移动热缩管至焊接处。 调试时,先认真检查有无焊错,焊漏,短路,在确保焊接正确的情况下,通电检查即可正确工作,时间显示并闪动,调整后就不闪动了。 六、实训总结 在整个课程设计完后,总的感觉是:有收获,比以前能更加熟练地组装及焊接。以前上课都是上一些最基本的东西,而现在却可以将以前学的东西做出有实际价值的东西。在这个过程中,我的确学得到很多在书本上学不到的东西,如:如何利用现有的元件组装得到设计要求,如何找到错误的原因,怎样检测元件等等。但也遇到了挫折,因为没有注意成品外壳与实验板的吻合,使得有些元件安装不合理,最终不能很好的组装。在实验中的小问题在课堂上不可能犯,在动手的过程中却很有可能犯。特别是在接电路时,一不小心就会犯错,而且很不容易检查出来。还有就是认识到自己的动手能力确实不够好,但现在回过头来看,还 是挺有成就感的,因为最终能将实验做成功。

基于单片机的电子钟C语言程序

基于 5 1 单片机的电子钟 C 语言程序 #include #include #defineucharunsignedchar #defineuintunsignedint /* 七段共阴管显示定义*/ ucharcodedispcode[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F, 0xBF,0x86,0xCB,0xCF,0xEF,0xED,0xFD,0x87,0xFF,0xDF}; /* 定义并初始化变量*/ ucharseconde=0; ucharminite=0; ucharhour=12; ucharmstcnt=0; sbitP1_0=PM0;//seco nd 调整定义 sbitP1_ 仁P1A1;//mi nite 调整定义 sbitP1_2=P1A2;//hour 调整定义 /* 函数声明*/ voiddelay(uintk);// 延时子程序 voiddelay1(ucharh); voidtime_pro();// 时间处理子程序 voiddisplay();// 显示子程序 voidkeyscan();// 键盘扫描子程序 /*****************************/ /* 延时子程序*/ voiddelay1(ucharh) { ucharj; while((h--)!=0) { for(j=0;j<125;j++) {;} } } voiddelay(uintk) { uinta,b,c; for(c=k;c>0;c--) for(b=38;b>0;b--) for(a=130;a>0;a--); } /************************* /* 时间处理子程序*/ */ voidtime_pro(void) { if(seconde==60)// 秒钟设为60 进制 {seconde=0; minite++; if(minite==60)// 分钟设为60 进制 {minite=0; hour++;

基于单片机的电子日历时钟设计

#include #define uchar unsigned char #define uint unsigned int //----端口定义--- sbit ACC_7=ACC^7; sbit RST1=P2^5; sbit IO=P2^6; sbit SCLK=P2^7; sbit k1=P3^2; sbit k2=P3^3; sbit k3=P2^2; sbit k4=P2^3; //uchar wei[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; // 数码的位选,左到右 uchar tab_1302[7]={45,50,11,19,1,1,15}; uchar tab_time[8]={0,0,10,0,0,10,0,0}; //时间 uchar tab_day[8]={0,0,10,0,0,10,0,0,}; //年月日 uchar tab_num[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf}; //0 1 2 3 4 5 6 7 8 9 - {"0123456789-"} ////////////=============函数声明============//////////////// void display_time(); void delayms(uint); void display_day(); void ds1302(); //获取DS1302的时间 void ds1302_init(); //DS1302的初始化 void write1302(uchar,uchar); //指定地址向DS1302写数据 uchar read1302(uchar); //指定地址向DS1302读数据 void ds1302(); void int0_init(); /////////=======中断初始化=======/////////// void int0_init() { EX0=1;

单片机实训报告范文精选5篇

单片机实训报告范文精选5篇 实训报告是展示自身实训收获成长的重要报告,那么实训报告该如何写呢?小编精选了一些关于实训报告的优秀范例,一起来看看吧。 单片机课程设计心得体会 在学校学习期间我有幸的参加了学校的单片机学习小组,在小组里我了解了什么是单片机,单片机有哪些用途,利用单片机可以实现哪些功能来方便人们的生活如交通灯,时钟,还有手机中,电子玩具等等,它们里面都有单片机的存在来实现某种功能。通过在单片机小组里的学习我简单总结了几点心得和体会: 第一:万事开头难,要勇敢的迈出第一步,不要总找借口说没有学习过就总推脱。凡事都有第一步可以先可简单的来,然后可以逐步的向深层次学习。可以从建项目开始,然后可以找一个简单的小程序先把它敲进单片机内然他运行起来,感觉一下单片机的运行,让自己了解单片机整个运行。 第二:对于知识点,学过的要掌握牢固,对于没有学的和暂时用不到的先不用学习。比如:小灯得点亮就没有用到中断可以先不用看。这样可以避免知识过多记不住的麻烦。对于程序这里的知识点不能只停留在理论层次上,一定要结合着程序进行学习这样才能掌握的很牢靠,当用到哪里的知识点不记得了可以去看书,对于用不到的可以不去看。 第三:程序不要只是看别人得,一定要自己写过才是自己的。开始

不懂可以参考别人的,看看每一句代表着什么意思,能够实现什么现象。明白之后自己再重新写一遍,你会发现看别人的能懂到自己写的时候很困难。当你自己能写出来的时候说明你真懂了。 第四:一定要学会程序调试的方法。有时候把程序写完了然后运行时不能实现理想的现象。这时有人就晕了不知该怎么办,然后就去问别人。当别人找出问题出在哪里时就会恍然大悟。其实当遇到问题一定要自己尝试着解决,不能遇到问题就去问别人。自己一定要掌握解决问的方法和思路。 第五:在学习初期看别人的代码,学习别人的思路这个很有用。通过看别人的代码特别是有多年编程经验的人的程序,可以迅速提高自己的编程水平。也可以结合着别人的手法,与自己的想法结合在一起写出更好的程序。但是切记将学习变成抄袭,不能认为抄袭别人的你就学会了,这样只能使你退步。第六:面对一个新项目时,自己一定要多想想,不要急着去看别人是怎么写的。有的人看到新项目时就去找别人的然后抄一小段,自己在写几句,放在一起完成任务,虽然省时间但不利你的学习。当你遇到一新项目时你应该先想一下程序的构架,想想如何来完成。然后自己动手去写,当你遇到实在是没办法解决的问题时再去请教别人,看他是怎么处理的,学习他的方法。这样起码你自己想过了,有自己的思路不会受到别人的影响,这样更容易提高自己。 在单片机的学习开始时感觉很吃力,在不断的学习过程中慢慢的对

电子钟实训报告

课程设计说明书课程名称:数字电子技术课程设计 专业:通信工程班级: 姓名:学号: 指导教师:成绩: 完成日期: 2012 年 1 月 12 日

任务书

摘要 数字钟是用数字集成电路构成,用数码管显示的一种现代化计数器。它一般由振荡器、分频器、计数器、译码器、显示器、较时电路等部分组成,这些都是数字电路中应用最广的基本电路。振荡器和分频器构成组成标准秒信号发生器,不同进制的计数器、译码器和显示器组成计时系统,通过校时校时校分电路实现对时、分的校准。数字钟实际上是一个对标准频率(1HZ)进行计数的计数电路。由于计数的起始时间不可能与标准时间(北京时间)一致,故需要在电路上加一个校时电路,同时标准的1HZ时间信号必须做到准确稳定。通常使用石英晶体振荡器电路构成数字钟。 关键词:电子钟数码管 PMOS集成电路

目录

1 电子元件的焊接技术 一个电子装置由若干个电子元件组成,各个电子元件通过焊接连接为一个完整的 电路,焊接技术的优劣直接影响电子装置是否正常运行和质量的好坏。 焊接工具和材料 电烙铁 电烙铁是焊接电子元器件的重要工具,直接影响着焊接的质量。电烙铁从结构上分为外热式和内热式两种。选择电烙铁要根据焊接任务的不同,选用不同功率的电烙铁。一般焊接半导体元器件选用20W电烙铁即可。 新的电烙铁使用前要进行“上锡”。首先将烙铁头锉干净,然后把电烙铁通电加热,预热一会儿后将烙铁头粘上松香,再用烙铁头将焊锡丝熔化,使烙铁头上薄薄的镀上一 层锡。防止电烙铁长时间加热因氧化使烙铁头被“烧死”,不再“吃锡”。如图焊料 焊料是将被焊物体牢固的焊接到电路板上。焊料熔点比被焊物熔点低很多,否则容易和被焊物连在一起。 一般的电子元件用焊料是锡铅比例为3:2的焊锡,其低熔点仅为180摄氏度左右,用25W-30W的电烙铁就可以熔化。焊锡通常制作成管状焊锡丝,内芯有松香做助焊剂。如图 图电烙铁图焊锡 助焊剂 助焊剂的作用是去除焊件表面的氧化物,加热时防氧化,帮助焊料流动,减少表面张力,提高焊接质量。一般用松香或松香水。 手工焊接方法 1 . 焊接操作姿势 操作姿势。手工操作时,应注意保持正确的姿势,有利于健康和安全。正确的操作姿势是:挺胸端正直坐,不要弯腰,鼻尖至烙铁头尖端至少应保持20cm以上的距离,通常以40cm时为宜 电烙铁拿法

基于单片机的电子闹钟设计

基于单片机的电子闹钟设计 摘要 本设计以AT89C51芯片为核心,辅以必要的外围电路,设计了一个结构简单,功能齐全的电子时钟,它由5V直流电源供电。 关键词:单片机;led;闹钟;定时器 Abstract This design, adopting AT89C51 chip as the core part with some necessary peripheral circuits, is a simple electronic clock which uses 5V DC as the power supply. Keywords:single chip machine ,in fixed time machine, alarm clock,LED 1 引言 1.1设计目的 此次课程设计是在学习先修课程《单片机原理与系统设计》之后,为加强对学生系统设计和应用能力的培养而开设的综合设计训练环节。本课程设计应结合《单片机原理与系统设计》课程的基础理论,重点强调实际应用技能训练,包括单片机系统设计的软件和硬件两部分。其课程设计任务是使学生通过应用单片机系统设计的基本理论,基本知识与基本技能,掌握单片机应用系统各主要环节的设计、调试方法,初步掌握并具备应用单片机进行设备技术改造和产品开发的能力,培养学生的创新意识,提高学生的动手能力和分析问题、解决问题的能力。 1.2设计要求 结合单片机知识,以AT89C51单片机为核心,利用七段LED数码管实现计时、校时及闹钟功能。 1.3设计方法 以AT89C51单片机为核心,外加晶振电路,使用8个七段数码管显示,LED 采用动态扫描,用74ls245芯片作为驱动电路。通过四个独立按键对时间进行定时、校时,从而实现闹钟提醒功能。 2 设计方案及原理 2.1设计方案 选AT89C51单片机作为系统核心,辅助外部产生时钟信号的晶振电路,再加上四个独立按键作为输入信号,使用8个七段数码管显示时间,芯片74ls245为数码管段选线的驱动,最后用蜂鸣器实现闹铃功能。使用单片机的定时器T0计时时间为50ms,计时20次作为1s的时间基准。第一部分,12MHz的晶振连接至单片机的时钟信号输入端;第二部分,四个独立按键加上四个上拉电阻连接至单片机

单片机电子时钟实验报告

一、实验任务及要求 在焊接的电路板中,4个LED数码管,设计带有闹铃功能的数字时钟,要求: 1、在4位数码管上显示当前时间。显示格式“时时分分”; 2、由LED闪动做秒显示; 3、利用按键可对时间及闹玲进行设置,并可显示闹玲时间。当闹玲时间到蜂鸣器发出声响,按停止键使可使闹玲声停止。 二、方案论证与比较 2.1数字时钟方案 数字时钟是本设计的最主要的部分。根据需要,可利用两种方案实现。 方案一:本方案采用Dallas公司的专用时钟芯片DS12887A。该芯片内部采用石英晶体振荡器,其芯片精度不大于10ms/年,且具有完备的时钟闹钟功能,因此,可直接对其以用于显示或设置,使得软件编程相对简单。为保证时钟在电网电压不足或突然掉电等突发情况下仍能正常工作,芯片内部包含锂电池。当电网电压不足或突然掉电时,系统自动转换到内部锂电池供电系统。而且即使系统不上电,程序不执行时,锂电池也能保证芯片的正常运行,以备随时提供正确的时间。 方案二:本方案完全用软件实现数字时钟。原理为:在单片机内部存储器设三个字节分别存放时钟的时、分、秒信息。利用定时器与软件结合实现5毫秒定时中断,每产生一次中断,存储器内相应的计数值加1;若计数值达到200,则将其清零,并将 方案一:静态显示。所谓静态显示,就是当显示器显示某一字符时,相应的发光二极管恒定的导通或截止。该方式每一位都需要一个8 位输出口控制。

静态显示时较小的电流能获得较高的亮度,且字符不闪烁。但当所显示的位数较多时,静态显示所需的I/O口太多,造成了资源的浪费。 方案二:动态显示。所谓动态显示就是一位一位的轮流点亮各个位,对于显示器的每一位来说,每隔一段时间点亮一次。利用人的视觉暂留功能可以看到整个显示,但必须保证扫描速度合适,字符才不闪烁。显示器的亮度既与导通电流有关,也于点亮时间与间隔时间的比例有关。调整参数可以实现较高稳定度的显示。动态显示节省了I/O口,降低了能耗。 从节省I/O口和降低能耗出发,本设计采用方案二。 三、各个部分的分析 1)显示电路:通过4个LED显示屏显示分钟和小时 两个两联的LED显示器,通过与单片机P1接口连接实现显示功能。而实现4个LED灯动态显示,靠的是位选电路 2)位选电路 四位共阳LED数码管,其标号分别为HourH,HourL,MinL,MinH,低电平选通,且任何时候仅有一位输出低电平,显示时对各显示器进行动态扫描,显示器分时轮流工作。虽然每次只有一个显示器显示,但是由于人的视觉暂留现象我们仍会感觉所有的显示器都在同时显示。P0口作为输出口控制8个发光二极管的亮灭,控制数码管的显示。因此,可以实现4个LED在我们看来同时亮,显示时间。 3)闹铃部分:使用蜂鸣器实现闹钟功能 其中,buzzer端口接到单片机的P1.7输出。(端口连接在最后介绍) 4)开关部分:使用了5个开关控制整个电路的启动,修改时间,设置闹钟,关闭电路等

数字电子钟课程设计实验报告

中北大学 信息与通信工程学院 通信工程专业 《电子线路及系统》课程设计任务书2016/2017 学年第一学期 学生姓名:张涛学号: 李子鹏学号: 课程设计题目:数字电子钟的设计 起迄日期:2017年1月4日~2017年7月10日 课程设计地点:科学楼 指导教师:姚爱琴 2017年月日 课程设计任务书

中北大学 信息与通信工程学院 通信工程专业 《电子线路及系统》课程设计开题报告2016/2017 学年第一学期 题目:数字电子钟的设计 学生姓名:张涛学号: 李子鹏学号:

指导教师:姚爱琴 2017 年 1 月 6 日 中北大学 信息与通信工程学院 通信工程专业 《电子线路及系统》课程设计说明书2016/2017 学年第二学期 题目:数字电子钟的设计 学生姓名:张涛学号: 李子鹏学号: 指导教师:姚爱琴 2017 年月日

目录 1 引言 (6) 2 数字电子钟设计方案 (6) 2.1 数字计时器的设计思想 (6) 2.2数字电路设计及元器件参数选择 (6) 2.2.2 时、分、秒计数器 (7) 2.2.3 计数显示电路 (8) 2.2.5 整点报时电路 (10) 2.2.6 总体电路 (10) 2.3 安装与调试 (11) 2.3.1 数字电子钟PCB图 (11) 3 设计单元原理说明 (11) 3.1 555定时器原理 (12) 3.2 计数器原理 (12) 3.3 译码和数码显示电路原理 (12) 3.4 校时电路原理 (12) 4 心得与体会 (12) 1 引言 数字钟是一种用数字电子技术实现时,分,秒计时的装置,具有较高的准确性和直观性等各方面的优势,而得到广泛的应用。此次设计数字电子钟是为了了解数字钟的原理,在设计数字电子钟的过程中,用数字电子技术的理论和制作实践相结合,进一步加深数字电子技术课程知识的理解和应用,同时学会使用Multisim电子设计软件。 2数字电子钟设计方案 2.1 数字计时器的设计思想 要想构成数字钟,首先应选择一个脉冲源——能自动地产生稳定的标准时间脉冲信号。而脉冲源产生的脉冲信号地频率较高,因此,需要进行分频,使得高频脉冲信号变成适合于计时的低频脉冲信号,即“秒脉冲信号”(频率为1Hz)。经过分频器输出的秒脉冲信号到计数器中进行计数。由于计时的规律是:60秒=1分,60分=1小时,24小时=1天,就需要分别设计60进制,24进制计数器,并发出驱动信号。各计数器输出信号经译码器、驱动器到数字显示器,是“时”、“分”、“秒”得以数字显示出来。 值得注意的是:任何记时装置都有误差,因此应考虑校准时间电路。校时电路一般

基于单片机的电子时钟设计报告(LCD显示)

单片机原理及应用课程设计任务书 题目:电子时钟(LCD显示) 1、设计要求以AT89C51单片机为核心的时钟,在LCD显示器上显示当前的时间: 使用字符型LCD显示器显示当前时间。显示格式为“时时:分分:秒秒”。用3个功能键操作来设置当前时间。功能键K1~K4功能下。 K1—设置小时。 K2—设置分钟。 K3—设置秒。 程序执行后工作指示灯LED发光,表示程序开始执行,LCD显示“23:59:00”,然后开始计时。 2、工作原理 本课题难点在于键盘的指令输入,由于每个按键都具有相应的一种功能,程序中有较多的循环结构用以判断按键是否按下,以及判断按键是否抬起,以及LCD显示器的初始化。 3、参考电路 硬件设计电路图如下图所示: 硬件电路原理图 单片机原理及应用课程设计任务书

题目:电子时钟(LCD显示) 1、设计要求以AT89C51单片机为核心的时钟,在LCD显示器上显示当前的时间: 使用字符型LCD显示器显示当前时间。显示格式为“时时:分分:秒秒”。用3个功能键操作来设置当前时间。功能键K1~K4功能下。 K1—设置小时。 K2—设置分钟。 K3—设置秒。 程序执行后工作指示灯LED发光,表示程序开始执行,LCD显示“23:59:00”,然后开始计时。 2、工作原理 本课题难点在于键盘的指令输入,由于每个按键都具有相应的一种功能,程序中有较多的循环结构用以判断按键是否按下,以及判断按键是否抬起,以及LCD显示器的初始化。 3、参考电路 硬件设计电路图如下图所示: 硬件电路原理图 基于AT89C51单片机的电子时钟设计报告

一、设计要求与目的 1)设计要求以AT89C51单片机为核心的时钟,在LCD显示器上显示当前的时间。 2)、使用字符型LCD显示器显示当前时间。显示格式为“时时:分分:秒秒”。3)、用3个功能键操作来设置当前时间。 4)、熟悉掌握proteus编成软件以及keil软件的使用 二、本设计原理 本设计以AT89C51单片机为核心,通过时钟程序的编写,并在LCD显示器上显示出来。该编程的核心在于定时器中断及循环往复判断是否有按键操作,并对每个按键的操作在LCD显示器上作出相应的反应。由于LCD显示器每八位对应一个字符,故把秒、分、时的个位和十位分开表示。 该课题中有三个控制开关KM1、KM2、KM3分别控制时、分、秒的调整,时间按递增的方式调整,每点一次按钮则相应的时间个位加以,且时间调整不干扰其他为调整时间的显示。 三、硬件设计原理(电路) 硬件电路原理图

单片机电子时钟课程设计实验报告

单片机电子时钟课程设 计实验报告 Pleasure Group Office【T985AB-B866SYT-B182C-BS682T-STT18】

《单片机原理与应用》课程设计 总结报告 题目:单片机电子时钟(带秒表)的设计 设计人员:张保江江润洲 学号: 班级:自动化1211 指导老师:阮海容 目录 1.题目与主要功能要求 (2) 2.整体设计框图及整机概述 (3) 3.各硬件单元电路的设计、参数分析及原理说明 (3) 4.软件流程图和流程说明 (4) 5.总结设计及调试的体会 (10) 附录 1.图一:系统电路原理图 (11) 2.图二:系统电路 PCB (12) 3.表一:元器件清单 (13) 4.时钟程序源码 (14)

题目:单片机电子时钟的设计与实现 课程设计的目的和意义 课程设计的目的与意义在于让我们将理论与实践相结合。培养我们综合运用电子课程中的理论知识解决实际性问题的能力。让我们对电子电路、电子元器件、印制电路板等方面的知识进一步加深认识,同时在软件编程、排错调试、焊接技术、相关仪器设备的使用技能等方面得到较全面的锻炼和提高,为今后能够独立完成某些单片机应用系统的开发和设计打下一个坚实的基础。 课程设计的基本任务 利用89C51单片机最小系统,综合应用单片机定时器、中断、数码显示、键盘输入等知识,设计一款单片机和简单外设控制的电子时钟。 主要功能要求 最基本要求 1)使用MCS-51单片机设计一个时钟。要求具有6位LED显示、3个按键输入。 2)完成硬件实物制作或使用Pruteus仿真(注意位驱动应能提供足够的电流)。 3)6位LED数码管从左到右分别显示时、分、秒(各占用2位),采用24小时标准计时制。开始计时时为000000,到235959后又变成000000。 4)使用3个键分别作为小时、分、秒的调校键。每按一次键,对应的显示值便加1。分、秒加到59后再按键即变为00;小时加到23后再按键即变为00。在调校时均不向上一单位进位 (例如分加到59后变为00,但小时不发生改变)。 5) 软件设计必须使用MCS-51片内定时器,采用定时中断结构,不得使用软件延时法,也不得使用其他时钟芯片。 6)设计八段数码管显示电路并编写驱动程序,输入并调试拆字程序和数码显示程序。7)掌握硬件和软件联合调试的方法。 8)完成系统硬件电路的设计和制作。 9)完成系统程序的设计。 10)完成整个系统的设计、调试和制作。

数字电子时钟实训报告

电子钟实训报告 课程名称:电气自动化 班级:电气S09-4班 指导老师:刘云芳 姓名:谷宇 一.实训目的: 完成基于CPLD的多功能数字钟设计。硬件界面为一个8位的LED数码管,时间显示方式为8位同时显示,即显示状态为:88-88-88。显示的时间制为24小时制。 1.设计一个具有“时”、“分”、“秒”的十进制显示计时器,要求为24小时循环。.具有校时、校分功能。 2、学会怎么样去焊接元器件较多的电子产品。 3.了解各集成块的功能,进一步加强该元件的使用。 二.实训要求: 1数字钟的功能要求;准确计时,以数字形式显示时,分,秒的时间,

小时要Array求为“24 翻1,”,分和秒的计时要求为60进位, 要求校正时间电路。 2直流稳压电源的功能要求:输入220v交流电压,输出+5v直流电压。 三.电路图的绘制: 、秒、分为00~59六十进制计数器。 3、时为00~23二十四进制计数器。 4、可手动校正:能分别进行分、时的校正。只要将开关置于手动位置,可分别对分、 时进行手动脉冲输入调整或连续脉冲输入校正础上绘制的,它是电路组装、调试和 维修的依据。绘制电路图时,注意以下几点: 1、元器件布局合理、排列均匀、图面清晰、便于阅读。 2、集成电路的型号不要标错,引脚要标明,不要遗漏。 3、线条要清晰,明了;在电气连接点的地方要注意区分。 基本设计思路:通过运用CD4518芯片来构成两个60进制的计数器做时钟的秒、分 电路和一个24进制的计数器做“时”电路;然后用CD4543芯片来将二进制数解码 驱动二极管发亮。前提中,运用4060和4040芯片分频来产生秒脉冲信号,和调时 的目的。

基于单片机电子时钟的设计说明

单片机课程设计 姓名:韶辉 学号: 1402250232 班级:自动化11402 成绩: 指导老师:吴玉蓉 设计时间:2016年12月26日~2017年1月5日

目录 1.设计要求 (1) 2.系统总体方案 (2) 3.硬件电路设计 (3) 4.系统软件设计. (4) 5.课程设计体会 (15) 6.参考文献 (15) 7.系统实物图 (16) 附录1 电路原理图 (17) 附录2 原件清单 (18)

一、设计要求 利用51单片机开发电子时钟,实现时间显示、调整功能。具体要求如下:(1)按以上要求制定设计方案,并绘制出系统工作框图; (2)按要求设计部分外围电路,并与单片机仿真器、单片机实验箱、电源等正确可靠的连接,给出电路原理图; (3)用仿真器及单片机实验箱进行程序设计与调试; (4)利用键盘输入调整秒、分和小时时刻,数码管显示时间; 二、系统总体方案 1.时钟计数:形成秒、分、小时,系统时间采用24小时制。利用单片机部的定时器/计数器来实现,它的处理过程如下:首先设定单片机部的一个定时器/计数器工作于定时方式,对机器周期计数形成基准时间(如10ms),然后用另一个定时器/计数器或软件计数的方法对基准时间计数形成秒(对10ms计数100次),秒计60次形成分,分计60次形成小时,小时计24次则计满一天。 (如12-25-09)。 2.显示:采用8个LED显示系统当前时间,显示格式为“时-分-秒” 3.设置功能:用户可以对系统的时间进行设置。没有按键时,则时钟正常走时。当按下K0键,进入调分状态,时钟停止走动,此时,按K1或K2键可进行加1或减1操作;继续按K0键可分别进行分和时的调整,此时,按K1或K2键可进行加1或减1操作;最后按K0键将退出调整状态,时钟开始计时运行。 4.系统框图

基于单片机电子闹钟的设计

西南石油大学 单片机课程设计 学院: 电气信息学院 专业年级: 通信工程2013级 姓名: 王昕铃 学号: 课题:基于单片机的定时闹钟设计 指导老师: 邓魁 日期: 2016 年 6月 30日 前言 20世纪末,电子技术获得了飞速的发展。在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高。同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。但是,一旦重要事情,一时的耽误可能酿成大祸。例如,许多火灾都是由于人们一时忘记了关闭煤气或是忘记充电时间。所以有必要制作一个定时系统。随时提醒这些容易忘记时间的人。而钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、定时启闭电路、定时开关烘箱、通断动力设备,甚至各种定时电气的自动启用等等。所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。 随着生活水平的提高,人们越来越追求人性化的事物。传统的时钟已不能满足人们的需求。而现代的时钟不仅需要模拟电路技术和数字电路技术而且更需要单片机技术,增加数字钟的功能。利用软件编程尽量做到硬件电路简单稳定,减小电磁干扰和其他环境干扰,减小因元器件精度不够引起的误差,但是数字钟还是可以改进和提高如选用更精密的元器件。但与机械式时钟相比已经具有

更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。 数字钟通过数字电路实现时、分、秒。数字显示的计时装置,广泛用于个人家庭、车站、码头办公室等公共场所成为人们日常生活中不可少的必需品。由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度远远超过老式钟表。 多功能数字钟的应用非常普遍。由单片机作为数字钟的核心控制器,通过它的时钟信号进行实现计时功能,将其时间数据经单片机输出,利用显示器显示出来。通过键盘可以进行校时、定时等功能。输出设备显示器可以用液晶显示技术和数码管来显示技术。 本系统利用单片机实现具有计时、校时等功能的数字时钟,是以单片机AT89C51为核心元件同时采用LED数码管显示器动态显示“时”、“分”、“秒”的现代计时装置。另外具有校时功能,秒表功能,和定时器功能,利用单片机实现的数字时钟具有编程灵活,便于功能的扩充等优点。 摘要 单片机自20世纪70年代问世以来,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。而51单片机是各单片机中最为典型和最有代表性的一种。 本设计以AT89C51芯片为核心,辅以必要的外围电路,设计了一个结构简单,功能齐全的电子时钟,它由5V直流电源供电。在硬件方面,除了CPU外,使用八个七段LED数码管来进行显示,LED采用的是动态扫描显示,使用74LS245芯片进行驱动。通过LED能够较为准确地显示时、分、秒。四个简单的按键实现对时间的调整。软件方面采用C语言编程。整个电子钟系统能完成时间的显示、调时、校时和三组定时闹钟的功能。 选用单片机最小系统应用程序,添加比较程序、时间调整程序及蜂鸣程序,通过时间比较程序触发蜂鸣,实现闹钟功能,完成设计所需求的软件环境。介绍并使用Keil单片机模拟调试软件,测试程序的可行性并用Proteus进行仿真。 关键词:单片机,定时器,中断,闹钟,LED

单片机电子时钟(LCD显示)综合实验报告

单片机综合实验报告 题目:电子时钟(LCD)显示 一、实验内容: 以AT89C51单片机为核心的时钟,在LCD显示器上显示当前的时间: ●使用字符型LCD显示器显示当前时间。 ●显示格式为“时时:分分:秒秒”。 ●用4个功能键操作来设置当前时间,4个功能键接在 P1.0~P1.3引脚上。 功能键K1~K4功能如下。 ●K1—进入设置现在的时间。 ●K2—设置小时。 ●K3—设置分钟。 ●K4—确认完成设置。 程序执行后工作指示灯LED闪动,表示程序开始执 行,LCD显示“00:00:00”,然后开始计时。 二、实验电路及功能说明 1)单片机主控制模块 以AT89C51单片机为核心进行一系列控制。 2)时钟显示模块

用1602为LCD显示模块,把对应的引脚和最小系统 上的引脚相连,连接后用初始化程序对其进行简单 的功能测试。测试成功后即可为实验所用,如图: 3)时间调整电路 用4个功能键操作来设置当前时间,4个功能键接在 P1.0~P1.3引脚上。功能键K1~K4功能如下。K1— 进入设置现在的时间。K2—设置小时。K3—设置 分钟。K4—确认完成设置。如图: 三、实验程序流程图: 主程序:

时钟主程序流程子程序:

四、实验结果分析

实验结果及分析:单片机的晶振可以根据要求设定。 6MHZ为和现实时间显示相同。实验采用12MHZ晶振采用方式1定时,选取50ms采用20次中断达到一秒,采用查表方式控制LCD显示。当烧入程序后开始运行,根据初始值设定可以观察到显示的时间,这里为了更明显观察显示数据变化把起始值设为23:59:50 运行后显示 ,K1为进入现在设置时间,当按下 K1后显示,和实验要求相比较,实现了按下K1进入现在时间设置,按下K4确认完成时间设置的功能;不同之处: 当进入时间设置时在按下K1设置小时,再次按下K1是设置分钟。增加功能:进入时间设置并选择设置位置后K2键位数字增加功能,K3键为数字减小功

基于单片机的电子时钟课程设计报告

目录 一、引言········ 二、设计课题········· 三、系统总体方案········· 四、系统硬件设计······ 1.硬件电路原理图 2.元件清单 五、系统软件设计········· 1.软件流程图 2.程序清单 六、系统实物图········ 七、课程设计体会········ 八、参考文献及网站········· 九、附录·········

一.引言 单片机因将其主要组成部分集成在一个芯片上而得名,就是把中央处理器、随机存储器、只读存储器、中断系统、定时器/计数器以及I/O接口电路等部件集成在一个芯片上。 基于单片机设计的数字钟精确度较高,因为在程序的执行过程中,任何指令都不影响定时器的正常计数,即便程序很长也不会影响中断的时间。 数字钟是采用数字电路实现对日期、时、分、秒,数字显示的计时装置,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表的报时功能。数字钟已成为人们日常生活中的必需品,广泛应用于家庭、车站、码头、剧院、办公室等场所,给人们的生活、学习、工作带来极大的方便。不仅如此,在现代化的进程中,也离不开电子钟的相关功能和原理,比如机械手的控制、家务的自动化、定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。而且是控制的核心部分。因此,研究数字钟及扩大其应用,有着非常现实的意义。 本设计使用12MHZ晶振与单片机AT89C51相连接,以AT89C51芯片为核心,采用动态扫描方式显示,通过使用该单片机,加之在显示电路部分使用HD74LS373驱动电路,实现在8个LED数码管上显示时间,通过4个按键进行调时、复位等功能,在实现各功能时数码管进行相应显示。软件部分用C语言实现,分为显示、延迟、调时、复位等部分。通过软硬件结合达到最终目的。

单片机电子时钟课程设计设计报告

单片机电子时钟设计 一、作品功能介绍 该作品是个性化电子钟设计,技术上主要用单片机(AT89S52)主控,6位LED数码显示,分别显示“小时:分钟:秒”。该作品主要用于24小时计时显示,能整时报时,能作为秒表使用,能定时闹铃1分钟。 功能介绍: (1)上电以后自动进入计时状态,起始于00:00:00。 (2)设计键盘调整时间,完成时间设计,并设置闹钟。 (3)定时时间为1/100秒,可采用定时器实现。 (4)采用LED数码管显示,时、分,秒采用数字显示。 (5)采用24小时制,具有方便的时间调校功能。 (6)具有时钟和秒表的切换功能。 使用方法: 开机后时钟在00:00:00起开始计时。 (1)长按P3.2进入调分状态:分单元闪烁,按P3.2加1,按P3.3减1.再长按P3.2进入时调整状态,时单元闪烁,加减调整同调分.按长按退出调整状态。 (2)(2)按P3.3进入设定闹时状态: 12:00: ,可进行分设定,按P3.4分加1,再按P3.2为时调整,按P3.4时加1,按P3.3调闹钟结束.在闹铃时可按P3.2停闹,不按闹铃1分钟。 (3)按下P3.4进入秒表状态:再按P3.4秒表又启动,按P3.4暂停,再按P3.4秒表清零,按P3.4退出秒表回到时钟状态。 二、电路原理图 如原理图所示,硬件系统主要由单片机最小应用系统、LED数码管显示模块、电源模块、晶振模块、按键模块等组成。

电子时钟原理图 各个模块设计 1.单片机系统 AT89S52 AT89S52概述:是一款非常适合单片机初学者学习的单片机, 它完全兼容传统的8051,8031的指令系统,他的运行速度 要比8051快最高支持达33MHz的晶体震荡器,在此系统中 使用12MHz的晶振。 AT89S52具有以下标准功能: 8k字节Flash,256字节 RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三 个16 位定时器/计数器,一个6向量2级中断结构,全双 工串行口,片内晶振及时钟电路。另外,AT89S52 可降至 0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模 式下,CPU停止工作,允许RAM、定时器/计数器、串口、中 断继续工作。掉电保护方式下,RAM内容被保存,振荡器被

单片机数字时钟实验报告

数字时钟实验报告 一、实验目的 1、熟悉单片机的结构和各引脚的的功能以及如何用程序控制。 2、学习用单片机对数字时钟控制、按键扫描及LED数码管显示的设计方法。 3、了解键盘的结构以及工作原理,通过单片机的定义实现对数码管时钟的调整。 二、实验要求 1、可以正常准确的显示时间. 2、可以通过键盘输入来对时间进行调整. 3、能够以两种时钟表示方式显示时间. 4、自由发挥其他功能. 三、实验基本原理 利用单片机定时器完成计时功能,定时器0计时中断程序每隔0.05s中断一次并当作一个计数,设定定时1秒的中断计数初值为0,每中断一次中断计数初值加1,当加到20时,则表示1s到了,秒变量加1,同理再判断是否1min钟到了,再判断是否1h到了。采用动态显示法实现LED显示,通过对每位数码管的依次扫描,使对应数码管亮,同时向该数码管送对应的字码,使其显示数字。由于数码管扫描周期很短,由于人眼的视觉暂留效应,使数码管看起来总是亮的,从而实现了各种显示。 利用键盘实现对时钟的调整,定义四个按键,按下第一个按键位置跳变到“分”,在按定义的第二个键每按一次数字加一,当数字到59时再按一次,直接跳变到00; 用第三个键控制“时”的12小时制还是24小时制,对键盘扫描,如果发现该键被按下,则表示为12进制,每按一次第四个按键数字加一,当到达12时,再按一次直接跳到1,如果没有发现该按键,则默认为24小时制,当数字是23时,再按一次跳变到00,再按一下第一个键退出对事件的调整。

四、实验设计分析 针对要实现的功能,采用AT89S51单片机进行设计,AT89S51 单片机是一款低功耗,高性能CMOS8位单片机,片内含4KB在线可编程(ISP)的可反复擦写1000 次的Flash只读程序存储器,器件采用高密度、非易失性存储技术制造,兼容标准 MCS- 51指令系统及80C51引脚结构。这样,既能做到经济合理又能实现预期的功能。 在程序方面,采用分块设计的方法,这样既减小了编程难度、使程序易于理解,又 能便于添加各项功能。程序可分为闹钟的声音程序、时间显示程序、日期显示程序, 秒表显示程序,时间调整程序、闹钟调整程序、定时调整程序,延时程序等。运用 这种方法,关键在于各模块的兼容和配合,若各模块不匹配会出现意想不到的错误。 首先,在编程之前必须了解硬件结构尤其是各引脚的用法,以及内部寄存器、存储 单元的用法,否则,编程无从下手,电路也无法设计。这是前期准备工作。第二部 分是硬件部分:依据想要的功能分块设计设计,比如输入需要开关电路,输出需要 显示驱动电路和数码管电路等。第三部分是软件部分:先学习理解汇编语言的编程 方法再根据设计的硬件电路进行分块的编程调试,最终完成程序设计。第四部分是 软件画图部分:设计好电路后进行画图,包括电路图和仿真图的绘制。第五部分是 软件仿真部分:软硬件设计好后将软件载入芯片中进行仿真,仿真无法完成时检查 软件程序和硬件电路并进行修改直到仿真成功。第六部分是硬件实现部分:连接电 路并导入程序检查电路,若与设计的完全一样一般能实现想要的功能。最后进行功 能扩展,在已经正确的设计基础上,添加额外的功能!

数字电子时钟实训报告

湖南乂塑职坐就求修院 电子钟实训报告 课程名称:电气自动化 班级:电气S09-4班 指导老师:刘云芳 姓名:谷宇 完成基于CPLD的多功能数字钟设计。硬件界面为一个8位的LED 数码管,时间显示方式为8位同时显示,即显示状态为:88-88-88。显示的时间制为24小时制。 1. 设计一个具有“时”、“分”、“秒”的十进制显示计时器,要求为24小时循环。.具有校时、校分功能。 2. 学会怎么样去焊接元器件较多的电子产品。 3. 了解各集成块的功能,进一步加强该元件的使用。 二.实训要求: 1数字钟的功能要求;准确计时,以数字形式显示时,分,秒的时间,

小时要 数字钟主体电路元器件清单求为“ 24翻1,”,分和秒的计时要求为60进位, 要求校正时间电路。 2直流稳压电源的功能要求:输入220v交流电压,输出+5v直流电压。 三.电路图的绘制: 、秒、分为00?59六十进制计数器。 3、时为00?23二十四进制计数器。 4、可手动校正:能分别进行分、时的校正。只要将幵关置于手动位置,可分别对分、时进行手动脉冲输入调整或连续脉冲输入校正础上绘制的,它是电路组装、调试和维修的依据。绘制电路图时,注意以下几点: 1、元器件布局合理、排列均匀、图面清晰、便于阅读。 2、集成电路的型号不要标错,引脚要标明,不要遗漏。 3、线条要清晰,明了;在电气连接点的地方要注意区分。 基本设计思路:通过运用CD4518芯片来构成两个60进制的计数器做时钟的秒、分电路和一个24进制的计数器做“时”电路;然后用CD4543芯片来将二进制数解码驱动二极管发亮。前提中,运用4060和4040芯片分频来产生秒脉冲信号,和调时 的目的

相关文档
相关文档 最新文档