单片机数字式电子钟

Tianjin University of Technology and Education 专业课程设计学院:电子工程学院班级:应电1112学生:杰史娇娜于海旭胡玉纳指导教师:健倪晓昌2015年7月天津职业技术师大学课程设计任务书电子工程学院应用电子技术系1112 班学生杰课程设计课题:单片机数字式电子钟一、课程设计工作日自2015 年7 月 6 日至2015 年7 月24 日二、同组学生:史娇娜、于海旭、胡玉纳三、课程设计任务要求(包括课题来源、类型、目的和意义、基本要求、完成时间、主要参考资料等):1、课题来源:老师和学生共同拟订。

2、类型:实做。

3、目的和意义:掌握单片机微机系统的设计。

4、基本要求:设计以8952单片机为核心,设计单片机数字式电子钟(不采用日历时钟芯片)。

定时脉冲由单片机部的定时器编程产生。

人机接口包括键盘、显示器、闹钟指示灯和蜂鸣器等,显示器显示日历容,键盘可控制电子钟的启停、时钟预置和闹钟设置等。

蜂鸣器用作报警,整点报时和闹钟。

基本功能如下:●电子钟显示容包括年、月、日、星期、时、分、秒。

如果显示屏小无法显示全部容时,则平时显示时、分、秒,通过按键可以切换到显示年、月、日、星期,2S之后自动返回显示时、分、秒状态。

按指定键后,显示器会进入相应的设置界面,再按下一次按键超1min后,系统自动退出设置界面。

●键盘控制功能初始化,时---分---秒初始化为00—00—00,年—月—日和星期初始化为09年—1月—1日星期四。

启动,电子钟开始计时。

停止,电子钟停止计时。

设置日期-年月日星期,软件应有判断日期输入错误的能力,若输入有错,则声光报警。

设置时分秒,软件应有判断日期输入错误的能力,若输入有错,则声光报警。

设置闹钟设置如下闹钟种类:设置每日指定时间闹,如每天13:34分闹铃。

设置每周指定日指定时间闹,如每周三3:24闹每次闹钟时长30秒,30秒之按任意键闹钟结束。

5、完成时间:2015年7月24日6、主要参考资料:朝青.《PC机及单片机数据通信技术》[M].航空航天大学,2000年.何立民.《单片机应用技术选编[M].航空航天大学,1993年.洪润,蓝清华.《单片机应用技术教程》[M].清华大学,1998年.马家辰,玉德,颖.《MCS–51单片机原理及接口技术》[M].工业大学,1998年. 广弟.《单片机基础》[M].航空大学,1994年6月.指导教师签字:教研室主任签字:- --目录1设计任务 (2)1.1基本要求 (2)1.2基本功能 (2)2方案论证及选择 (2)2.1单片机的论证与选择 (2)2.2显示电路论证与选择 (3)2.3系统最终设计方案 (3)3电路原理图与程序设计 (3)3.1系统电路图设计 (3)3.1.1 单片机主控电路原理图 (4)3.1.2 显示电路原理图 (5)3.1.3 外围电路原理图 (5)3.1.4电源 (6)3.2程序的设计 (6)3.2.1程序功能描述与设计思路 (6)3.2.2程序流程图 (6)4测试方案与测试结果 (8)4.1测试方案 (8)4.2 测试条件与仪器 (8)5元件清单 (9)6参考文献 (9)个人课程设计总结 (10)单片机数字式电子钟1设计任务1.1基本要求设计以8952单片机为核心,设计单片机数字式电子钟(不采用日历时钟芯片)。

定时脉冲由单片机部的定时器编程产生。

人机接口包括键盘、显示器、闹钟指示灯和蜂鸣器等,显示器显示日历容,键盘可控制电子钟的启停、时钟预置和闹钟设置等。

蜂鸣器用作报警,整点报时和闹钟。

1.2基本功能●电子钟显示容包括年、月、日、星期、时、分、秒。

如果显示屏小无法显示全部容时,则平时显示时、分、秒,通过按键可以切换到显示年、月、日、星期,2S之后自动返回显示时、分、秒状态。

按指定键后,显示器会进入相应的设置界面,再按下一次按键超1min后,系统自动退出设置界面。

●键盘控制功能初始化,时---分---秒初始化为00—00—00,年—月—日和星期初始化为09年—1月—1日星期四。

启动,电子钟开始计时。

停止,电子钟停止计时。

设置日期-年月日星期,软件应有判断日期输入错误的能力,若输入有错,则声光报警。

设置时分秒,软件应有判断日期输入错误的能力,若输入有错,则声光报警。

●设置闹钟设置如下闹钟种类:设置每日指定时间闹,如每天13:34分闹铃。

设置每周指定日指定时间闹,如每周三3:24闹每次闹钟时长30秒,30秒之按任意键闹钟结束。

2方案论证及选择2.1单片机的论证与选择方案一:采用89C51芯片作为硬件核心,采用Flash ROM,部具有4KB ROM 存储空间,能于3V 的超低压工作,而且与MCS-51系列单片机完全兼容,但是运用于电路设计中时由于不具备ISP在线编程技术, 当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏。

方案二:采用STC89S52,片ROM全都采用Flash ROM;能以3V的超底压工作;同时也与MCS-51系列单片机完全该芯片部存储器为8KB ROM 存储空间,同样具有89C51的功能,且具有在线编程可擦除技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏。

综上所述:本课设中单片机芯片采用STC89C52。

2.2显示电路论证与选择方案一:LED数码管能在低电压下工作,而且体积小、重量轻、使用寿命长,但一个LED数码管只能显示一位的字符,如果字符位数不止一位,需要用几个数码管组成,LED数码管动态扫描,LED数码管价格适中,对于显示数字最合适,但无法显示图形文字,在显示星期是也只能用数字表示,而且采用动态扫描法与单片机连接时,在编程时比较复杂。

所以也不采用了LED数码管作为显示。

方案二:采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较适合,如采用在显示数字显得太浪费,且价格也相对较高,所以不用此种作为显示。

方案三:采用LCD液晶显示屏, 采用12864液晶显示屏的显示功能强大,可显示文字,图形,显示多样,清晰可见,所以在此设计中采用LCD液晶显示屏。

综上所述:采用12864液晶显示。

2.3系统最终设计方案综上各方案所述,本课程方案选定为: 采用STC89C52作为主控制系统;采用12864液晶显示屏作为数据显示装置;采用独立按键;采用蜂鸣器作为报警电路。

至此,系统最终方案确定。

3电路原理图与程序设计3.1系统电路图设计整个系统用单片机为中央控制器,由单片机执行采集时钟电路的时间信号并通过显示模块来输出信号及相关的控制功能。

时钟电路产生时钟信号,利用单片机的I/O口传给单片机;并通过其控制液晶屏显示时间,通过P1口外接按键对时间进行调整。

控制器采用单片机STC89C52,12864液晶显示屏作为数据显示装置,外围电路由蜂鸣器、指示灯等组成。

万年历时钟电路设计总体设计方框图如图所示。

- --图3-1 系统总体框图3.1.1 单片机主控电路原理图单片机最小化模块由时钟电路、复位电路和核心单片机芯片构成。

时钟电路由振荡电路和分频电路组成。

其中振荡电路由高增益反相器以及并联外接的石英晶体和电容产生振荡脉冲。

而分频电路则用于把振荡脉冲分频,已得到所需的时钟信号。

振荡电路由单片机芯片的XTAL1端输入,XTAL2输出。

通过这两个引脚并接一个石英晶体振荡器和两个电容。

而单片机中自带有分频电路所以不需要外接电路对脉冲进行分频。

复位是单片机的硬件初始化操作,经复位操作后,单片机系统才能开始正常工作。

复位电路用于产生复位信号,通过RET 引脚送入单片机,进行复位操作。

下图为单片机最小系统原理图。

图3-2单片机主控电路原理图3.1.2 显示电路原理图本设计显示电路采用带中文字库的128X64 是一种具有4 位/8 位并行、2 线或3 线串行多种接口方式,部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64, 置8192 个16*16 点汉字,和128 个16*8 点ASCII 字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。

可以显示8×4 行16×16 点阵的汉字. 也可完成图形显示.低电压低功耗是其又一显著特点。

由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。

本设计显示电路如下图所示:图3-3 显示电路原理图3.1.3 外围电路原理图图3-4 按键原理图图3-5 LED报警电路图3-6蜂鸣器报警电路3.1.4电源直流稳压电源一般由电源变压器、整流滤波电路及稳压电路组成。

直流稳压电源设计的主要容是根据性能指标,选择合适的电源变压器、集成稳压器、整流二极管及滤波电容。

本设计中所需要的电源有PC机的USB口直接供电。

3.2程序的设计3.2.1程序功能描述与设计思路程序设计思路:本设计采用的CPU是52系列单片机中的STC89S52芯片,STC89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程的Flash 存储器。

本电子钟的所有的软件、参数均存放在控制器的FLASH ROM和部RAM中,减少了芯片的使用数量简化了整体电路也降低了整机的工作电流。

利用单片机定时器及计数器产生定时效果通过编程形成数字钟效果,再利用LCD显示单片机部处理的数据,同时通过端口读入当前外部控制状态来改变程序的不同状态,实现不同功能。

从软件的功能不同可分为两大类:一是监控软件(主程序),它是整个控制系统的核心,专门用来协调各执行模块和操作者的关系。

二是执行软件(子程序),它是用来完成各种实质性的功能如测量、计算、显示、通讯等。

每一个执行软件也就是一个小的功能执行模块。

这里将各执行模块一一列出,并为每一个执行模块进行功能定义和接口定义。

各执行模块规划好后,就可以规划监控程序了。

首先要根据系统的总体功能选择一种最合适的监控程序结构,然后根据实时性的要求,合理地安排监控软件和各执行模块之间地调度关系。

3.2.2程序流程图图3-9主程序流程图图3-10按键扫描程序流程图4测试方案与测试结果4.1测试方案1、硬件测试:检查元器件好坏、检查电路板焊接完整,无虚焊,漏焊。

2、硬件软件联调:接通电路,进行实际测量。

4.2 测试条件与仪器测试条件:检查多次,仿真电路和硬件电路必须与系统原理图完全相同,并且检查无误,硬件电路保证无虚焊。

测试仪器:测试使用的仪器设备如表4-1所示。

表4-1测试使用的仪器设备5元件清单表5-1系统元件清单6参考文献1.朝青.《PC机及单片机数据通信技术》[M].航空航天大学,2000年.2.何立民.《单片机应用技术选编[M].航空航天大学,1993年.3.洪润,蓝清华.《单片机应用技术教程》[M].清华大学,1998年.4.马家辰,玉德,颖.《MCS–51单片机原理及接口技术》[M].工业大学,1998年.5.广弟.《单片机基础》[M].航空大学,1994年6月.个人课程设计总结本次课程设计持续了几周时间,通过上网和到图书馆查阅资料最终完成了数字电子钟课程设计。

合集下载

单片机制作的6位数字钟

单片机制作的6位数字钟

单片机制作的6位数字钟常见的电子钟程序由显示部分,计算部分,时钟调整部分构成。

时钟的基本显示原理:时钟开始显示为0时0分0秒,也就是数码管显示000000,然后每秒秒位加1 ,到9后,10秒位加1,秒位回0。

10秒位到5后,即59秒,分钟加1,10秒位回0。

依次类推,时钟最大的显示值为23小时59分59秒。

这里只要确定了1秒的定时时间,其他位均以此为基准往上累加。

开始程序定义了秒,十秒,分,十分,小时,十小时,共6位的寄存器,分别存在30h,31h,32h,33h,34h,35h单元,便于程序以后调用和理解。

6个数码管分别显示时、分、秒,一个功能键,可以切换调整时分秒、增加数值、熄灭节电等功能全部集一键。

以下是部分汇编源程序,购买我们产品后我们用光盘将完整的单片机汇编源程序和烧写文件送给客户。

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 中断入口程序;; (仅供参考);;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ORG 0000H ;程序执行开始地址LJMP START ;跳到标号START执行ORG 0003H ;外中断0中断程序入口RETI ;外中断0中断返回ORG 000BH ;定时器T0中断程序入口LJMP INTT0 ;跳至INTTO执行ORG 0013H ;外中断1中断程序入口RETI ;外中断1中断返回ORG 001BH ;定时器T1中断程序入口LJMP INTT1 ;跳至INTT1执行ORG 0023H ;串行中断程序入口地址RETI ;串行中断程序返回;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 主程序;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;START: MOV R0,#70H ;清70H-7AH共11个内存单元MOV R7,#0BH;clr P3.7 ;CLEARDISP: MOV @R0,#00H ;INC R0 ;DJNZ R7,CLEARDISP ;MOV 20H,#00H ;清20H(标志用)MOV 7AH,#0AH ;放入"熄灭符"数据MOV TMOD,#11H ;设T0、T1为16位定时器MOV TL0,#0B0H ;50MS定时初值(T0计时用)MOV TH0,#3CH ;50MS定时初值MOV TL1,#0B0H ;50MS定时初值(T1闪烁定时用)MOV TH1,#3CH ;50MS定时初值SETB EA ;总中断开放SETB ET0 ;允许T0中断SETB TR0 ;开启T0定时器MOV R4,#14H ;1秒定时用初值(50MS×20)START1: LCALL DISPLAY ;调用显示子程序JNB P3.7,SETMM1 ;P3.7口为0时转时间调整程序SJMP START1 ;P3.7口为1时跳回START1 SETMM1: LJMP SETMM ;转到时间调整程序SETMM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 1秒计时程序;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;T0中断服务程序INTT0: PUSH ACC ;累加器入栈保护PUSH PSW ;状态字入栈保护CLR ET0 ;关T0中断允许CLR TR0 ;关闭定时器T0MOV A,#0B7H ;中断响应时间同步修正ADD A,TL0 ;低8位初值修正MOV TL0,A ;重装初值(低8位修正值)MOV A,#3CH ;高8位初值修正ADDC A,TH0 ;MOV TH0,A ;重装初值(高8位修正值)SETB TR0 ;开启定时器T0DJNZ R4, OUTT0 ;20次中断未到中断退出ADDSS: MOV R4,#14H ;20次中断到(1秒)重赋初值MOV R0,#71H ;指向秒计时单元(71H-72H)ACALL ADD1 ;调用加1程序(加1秒操作)MOV A,R3 ;秒数据放入A(R3为2位十进制数组合)CLR C ;清进位标志CJNE A,#60H,ADDMM ;ADDMM: JC OUTT0 ;小于60秒时中断退出ACALL CLR0 ;大于或等于60秒时对秒计时单元清0 MOV R0,#77H ;指向分计时单元(76H-77H)ACALL ADD1 ;分计时单元加1分钟MOV A,R3 ;分数据放入ACLR C ;清进位标志CJNE A,#60H,ADDHH ;ADDHH: JC OUTT0 ;小于60分时中断退出ACALL CLR0 ;大于或等于60分时分计时单元清0 MOV R0,#79H ;指向小时计时单(78H-79H)ACALL ADD1 ;小时计时单元加1小时MOV A,R3 ;时数据放入ACLR C ;清进位标志CJNE A,#24H,HOUR ;HOUR: JC OUTT0 ;小于24小时中断退出ACALL CLR0 ;大于或等于24小时小时计时单元清0 OUTT0: MOV 72H,76H ;中断退出时将分、时计时单元数据移MOV 73H,77H ;入对应显示单元MOV 74H,78H ;MOV 75H,79H ;POP PSW ;恢复状态字(出栈)POP ACC ;恢复累加器SETB ET0 ;开放T0中断RETI ;中断返回;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 闪动调时程序;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;T1中断服务程序,用作时间调整时调整单元闪烁指示INTT1: PUSH ACC ;中断现场保护PUSH PSW ;MOV TL1, #0B0H ;装定时器T1定时初值MOV TH1, #3CH ;DJNZ R2,INTT1OUT ;0.3秒未到退出中断(50MS中断6次)MOV R2,#06H ;重装0.3秒定时用初值CPL 02H ;0.3秒定时到对闪烁标志取反JB 02H,FLASH1 ;02H位为1时显示单元"熄灭"MOV 72H,76H ;02H位为0时正常显示MOV 73H,77H ;MOV 74H,78H ;MOV 75H,79H ;INTT1OUT: POP PSW ;恢复现场POP ACC ;RETI ;中断退出FLASH1: JB 01H,FLASH2 ;01H位为1时,转小时熄灭控制MOV 72H,7AH ;01H位为0时,"熄灭符"数据放入分MOV 73H,7AH ;显示单元(72H-73H),将不显示分数据MOV 74H,78H ;MOV 75H,79H ;AJMP INTT1OUT ;转中断退出FLASH2: MOV 72H,76H ;01H位为1时,"熄灭符"数据放入小时MOV 73H,77H ;显示单元(74H-75H),小时数据将不显示MOV 74H,7AH ;MOV 75H,7AH ;AJMP INTT1OUT ;转中断退出;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 加1子程序;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ADD1: MOV A,@R0 ;取当前计时单元数据到ADEC R0 ;指向前一地址SWAP A ;A中数据高四位与低四位交换ORL A,@R0 ;前一地址中数据放入A中低四位ADD A,#01H ;A加1操作DA A ;十进制调整MOV R3,A ;移入R3寄存器ANL A,#0FH ;高四位变0MOV @R0,A ;放回前一地址单元MOV A,R3 ;取回R3中暂存数据INC R0 ;指向当前地址单元SWAP A ;A中数据高四位与低四位交换ANL A,#0FH ;高四位变0MOV @R0,A ;数据放入当削地址单元中RET ;子程序返回;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 清零程序;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.............;; 时钟调整程序;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;当调时按键按下时进入此程序SETMM: cLR ET0 ;关定时器T0中断CLR TR0 ;关闭定时器T0LCALL DL1S ;调用1秒延时程序JB P3.7,CLOSEDIS ;键按下时间小于1秒,关闭显示(省电)MOV R2,#06H ;进入调时状态,赋闪烁定时初值SETB ET1 ;允许T1中断SETB TR1 ;开启定时器T1SET2: JNB P3.7,SET1 ;P3.7口为0(键未释放),等待SETB 00H ;键释放,分调整闪烁标志置1SET4: JB P3.7,SET3 ;等待键按下LCALL DL05S ;有键按下,延时0.5秒JNB P3.7,SETHH ;按下时间大于0.5秒转调小时状态MOV R0,#77H ;按下时间小于0.5秒加1分钟操作LCALL ADD1 ;调用加1子程序MOV A,R3 ;取调整单元数据CLR C ;清进位标志CJNE A,#60H,HHH ;调整单元数据与60比较HHH: JC SET4 ;调整单元数据小于60转SET4循环LCALL CLR0 ;调整单元数据大于或等于60时清0CLR C ;清进位标志AJMP SET4 ;跳转到SET4循环CLOSEDIS: SETB ET0 ;省电(LED不显示)状态。

基于单片机的数字电子钟设计(含完整程序+PCB图)--课程设计

基于单片机的数字电子钟设计(含完整程序+PCB图)--课程设计

基于单⽚机的数字电⼦钟设计(含完整程序+PCB图)--课程设计基于单⽚机的数字电⼦钟设计(含完整程序+PCB图)--课程设计1 课题设计任务、功能要求及总体⽅案1.1 课题设计任务本课程设计选题⽬为:数字电⼦钟。

设计⼀个具有特定功能的电⼦钟。

1.2 功能要求设计的数字电⼦钟上电或按键复位后能⾃动显⽰系统提⽰符“P.”,进⼊时钟准备状态;第⼀次按数字电⼦钟启动/调整键,数字电⼦钟从0时0分0秒开始运⾏,进⼊时钟运⾏状态;再次按数字电⼦钟启动/调整键,则数字电⼦钟进⼊时钟调整状态,并且时间停⽌不动,此时可分别利⽤各调整键调整时、分、秒,调整结束后可按启动/调整键再次进⼊时钟运⾏状态。

1.3 设计总体⽅案介绍及⼯作原理说明本课程设计采⽤AT89S52单⽚机设计⼀个数字电⼦钟,通过两个4位LED数码管显⽰时、分、秒,并设有9个按键。

其中⼀个⽤于单⽚机的复位;⼀个为启动/调整键;两个分别为加,减键;其他键本课题暂不⽤。

电路分为5部分,分别为复位电路、键盘电路、时钟电路、显⽰电路和控制电路。

复位电路采⽤按键复位⽅式。

键盘电路采⽤独⽴式键盘。

时钟电路⽤12MHz的晶振产⽣时钟信号。

显⽰电路采⽤8个三极管驱动两个4位LED显⽰。

控制电路采⽤8位的AT89S52单⽚机作为CPU;原理是:时钟⽤T0为时钟秒加1中断,时间常数位50MS,每20次加1S,T0⽤为时间加1中断,时间常数为50MS,中断20次时间加1。

其设计框图如图1.1所⽰:复位电路AT89S52 显⽰时钟电路键盘电路下载电路图1.1 设计⽅案框图42 数字电⼦钟硬件系统的设计2.1 硬件系统各模块功能简要介绍2.1.1 复位电路复位是单⽚机的硬件初始化操作。

经复位操作后,单⽚机系统才能开始正常⼯作。

单⽚机上有复位引脚RST,⽤于外接复位电路,这⾥复位电路采⽤按键电平复位。

2.1.2 时钟电路单⽚机⼯作所需的同步时钟信号由以下两种⽅法获得:由单⽚机⽚内时钟电路结合外部晶振、电容产⽣和直接从单⽚机外部引⼊脉冲信号。

利用51单片机制作六位的电子数字钟

利用51单片机制作六位的电子数字钟

利用51单片机制作六位的电子数字钟关键字:电子钟,数字钟,51单片机摘要:对于学习单片机而言这个程序是一道门槛,掌握了电子钟程序,基本上51单片机就掌握了80%。

常见的电子钟程序由显示部分,计算部分,时钟调整部分构成,这样程序就有了一定的长度和难度。

时钟的基本显示原理:时钟开始显示为0时0分0秒,也就是数码管显示000000,然后每秒秒位加1 ,到9后,10秒位加1,秒位回0。

10秒位到5后,即59秒,分钟加1,10秒位回0。

依次类推,时钟最大的显示值为23小时59分59秒。

这里只要确定了1秒的定时时间,其他位均以此为基准往上累加。

开始程序定义了秒,十秒,分,十分,小时,十小时,共6位的寄存器,分别存在30h,31h,32h,33h,34h,35h单元,便于程序以后调用和理解。

电路原理图:为了节省硬件资源,电路部分采用6位共阳极动态扫描数码管,数码管的段位并联接在51单片机的p0口,控制位分别由6个2N5401的PNP三极管作驱动接在单片机的p2.1,p2.2,p2.3,p2.4,p2.5,p2.6口。

从标号star开始把这些位全部清除为0,从而保证了开始时显示时间为0时0分0秒。

然后是程序的计算部分:inc a_bit(秒位),这里用到了一个inc指令,意思是加1,程序运行到这里自动加1。

然后把加1后的数据送acc:mov a,a_bit (秒位),这时出现了一个问题,如果不断往上加数字不会加爆?所以有了下面的一句话cjne a,#10,stlop; 如果秒位到10那么转到10秒处理程序。

cjne是比较的意思,比较如果a等于10 就转移到10秒处理程序,实际上也就限定了在这里a的值最大只能为9,同时mov a_bit,#00h,这时a_bit(秒位)被强行清空为0,又开始下一轮的计数。

秒位处理完了到下面10秒的处理程序:inc b_bit,把10秒位b_bit加1,由于程序开始对各位的寄存器已经清0,这时10秒位就变成1 ,然后同样送到累加器ACC:mov a,b_bit 现在开始新一轮的10秒位计数cjne a,#6,stlop 如果10秒到了6那么到分位处理程序。

51单片机里电子时钟设计原理

51单片机里电子时钟设计原理

51单片机里电子时钟设计原理单片机是一种集成电路芯片,具有微处理器的所有功能。

电子时钟是一种通过数字化方式显示时间的装置,通常由时钟芯片、计时电路、显示电路、报警电路等组成。

在51单片机中设计电子时钟,主要包括以下几个方面的原理。

1.时钟芯片选择:选择一款适合的时钟芯片非常重要。

时钟芯片提供了计时的稳定性和精度,并且具有时间数据的存储功能。

在51单片机设计中,常常使用DS3231、DS1302等高性能的时钟芯片。

2.计时电路设计:计时电路是电子时钟的核心部分,它通过计数器实现时间的累加。

在51单片机设计中,可以使用定时器和计数器来实现计时功能。

通过设定定时器的工作模式和计数值,可以实现从1ms到秒、分、时的计时。

3.显示电路设计:显示电路用于将计时电路的计时结果以数字形式显示出来。

通常使用数码管或液晶显示屏作为显示装置。

在51单片机设计中,通过控制数码管或液晶显示屏的引脚,将对应的数字段点亮,实现数字的显示。

4.按键输入设计:电子时钟通常具有设置时间、调整时间、报警等功能。

这些功能需要通过按键来实现。

在51单片机设计中,可以使用矩阵按键,通过行列扫描的方式检测按键的按下,并根据按键的不同触发不同的功能。

5.报警电路设计:电子时钟通常具有报警功能,可通过蜂鸣器或其他音频输出装置实现。

在51单片机设计中,通过控制IO口的高低电平输出,控制蜂鸣器的工作状态,从而实现报警功能。

6.软件设计:单片机的设计离不开软件的支持。

在51单片机设计中,通常使用C语言编程,通过编写程序来实现各个功能的控制。

根据需求,设计相应的算法和逻辑,实现时间的计算、显示、设置和报警等功能。

以上是51单片机中设计电子时钟的一些原理。

通过合理的硬件设计和软件编程,可以实现功能齐全、稳定可靠的电子时钟。

单片机数字钟工作原理

单片机数字钟工作原理

单片机数字钟工作原理
单片机数字钟是一种通过单片机控制数字时钟的设备。

单片机是一种高度集成的电子芯片,具有非常强大的计算和控制能力。

在数字钟中,单片机负责控制时间数码管的显示和计时功能。

具体来说,单片机数字钟的工作原理如下:
1. 时钟电路:单片机数字钟中使用的时钟电路通常是晶体振荡器。

晶体振荡器会产生非常稳定的频率,用于单片机的计时和控制。

2. 计时功能:单片机通过时钟电路来计时。

当单片机启动时,它会从时钟电路中读取当前的时间,然后根据程序中设定的规则不停地更新时间。

单片机数字钟通常会具有秒、分、时等多个计时功能,可以显示当前的精确时间。

3. 显示功能:单片机数字钟通过数码管来显示时间。

数码管是一种常见的显示器件,可以显示数字、字母等信息。

单片机通过控制数码管的亮灭来显示当前时间。

4. 控制功能:单片机数字钟还具有控制功能。

例如,可以通过按钮来调整时间、闹钟等功能。

单片机还可以控制数码管的亮度、闪烁等效果,以及声光报警等功能。

综上所述,单片机数字钟是一种功能强大、精确可靠的电子设备,广泛应用于家庭、办公室、实验室等场合。

- 1 -。

基于单片机的数字电子时钟设计

基于单片机的数字电子时钟设计

基于单片机的数字电子时钟设计数字电子时钟是一种非常常见的电子产品,它可以帮助我们实现精确的时间显示,让我们的生活更加方便。

随着科技的不断发展,数字电子时钟也在不断更新和发展,基于单片机的数字电子时钟已经成为当前最先进的技术之一。

本文将介绍基于单片机的数字电子时钟的设计原理和实现方法。

一、数字电子时钟的设计原理数字电子时钟的实现原理就是把时间信号转换成数字信号,再通过计算机芯片来显示时间。

其中,时间信号可以是电缆信号或者无线信号,并且也可以通过外部的控制电路进行调节。

而计算机芯片可以采用单片机、PLC控制器等方案进行设计。

基于单片机的数字电子时钟,可以使用数字时钟芯片和定时器芯片来完成。

数字时钟芯片是一种能够实现数据的统计、时钟显示等功能的IC芯片,通过将其与定时器芯片相连,就能够实现精确的时间统计和显示。

此外,在设计时还需要进行软硬件电路的优化和调试。

二、基于单片机的数字电子时钟的实现方法1、硬件设计基于单片机的数字电子时钟的硬件设计,主要包含单片机控制电路、显示电路、外设接口电路、供电电路、时钟芯片和定时器芯片等部分。

其中,时钟芯片用于提供精准的时间信号,定时器芯片则用于进行计时,而单片机和外设接口电路则用于控制整个数字电子时钟的功能。

另外,数字电子时钟还需要进行外观设计,通常采用的是数码管或液晶屏幕显示时间。

通过优化电路布局和参数匹配,可以有效地提高整个数字电子时钟的稳定性和精度。

2、软件设计在数字电子时钟的软件设计中,主要包含固件设计和操作系统设计两部分。

固件设计是指对单片机系统进行程序编写、调试和优化,以实现时钟的各种功能;而操作系统设计,则是对固件进行封装,建立起一套完整的操作环境,方便用户进行操作。

在固件设计中,需要考虑到时钟的显示、调节、闹钟、定时等多种功能的实现。

通常,这些功能都会涉及到多个模块和数据结构的设计,需要通过循序渐进的方式逐步实现。

在操作系统设计中,需要对时钟的各种操作进行封装,形成一套完整的操作界面。

单片机多功能电子数字钟课程设计报告

多功能电子数字钟设计数字钟在日常生活中最常见, 应用也最广泛。

本文主要就是设计一款数字钟, 以89C52单片机为核心, 配备液晶显示模块、时钟芯片、等功能模块。

数字钟采用24小时制方式显示时间, 定时信息以及年月日显示等功能。

文章的核心主要从硬件设计和软件编程两个大的方面。

硬件电路设计主要包括中央处理单元电路、时钟电路、人机接口电路、信号处理电路、执行电路等几部分组成。

软件用C语言来实现, 主要包括主程序、键盘扫描子程序、时间设置子程序等软件模块。

关键词单片机液晶显示器模块数字钟一硬件电路设计及描述;1.MCS-51单片机单片机是在一块硅片上集成了各种部件的微型计算机。

这些部件包括中央处理器CPU、数据存储器RAM、程序存储器ROM、定时器/计数器和多种I/O接口电路。

8051单片机的结构特点有以下几点: 8位CPU;片内振荡器及时钟电路; 32根I/O线;外部存储器ROM和RAM;寻址范围各64KB;两个16位的定时器/计数器; 5个中断源, 2个中断优先级;全双工串行口。

定时器/计数器8051内部有两个16位可编程定时器/计数器, 记为T0和T1。

16位是指他们都是由16个触发器构成, 故最大计数模值为2 -1。

可编程是指他们的工作方式由指令来设定, 或者当计数器来用, 或者当定时起来用, 并且计数(定时)的范围也可以由指令来设置。

这种控制功能是通过定时器方式控制寄存器TMOD来完成的。

在定时工作时, 时钟由单片机内部提供, 即系统时钟经过12分频后作为定时器的时钟。

技术工作时, 时钟脉冲由TO和T1输入。

中断系统8051的中断系统允许接受五个独立的中断源, 即两个外部中断申请, 两个定时器/计数器中断以及一个串行口中断。

外部中断申请通过INTO和INT1(即P3.2和P3.3)输入, 输入方式可以使电平触发(低电平有效), 也可以使边沿触发(下降沿有效)。

2.8051的芯片引脚如图1-2所示VCC: 供电电压。

基于单片机的数字电子钟

基于单片机的数字电子钟随着科技的不断进步和人们生活水平的提高,数字电子钟作为电子技术的产物已经成为了现代家庭必备的钟表之一。

数字电子钟使用单片机作为控制中心,可靠、精准和智能化的特点逐渐受到了人们的喜爱和追捧。

在这篇文档中,我将详细介绍使用单片机的数字电子钟的设计原理、硬件和软件的实现、功能以及优点等方面的内容。

一、设计原理数字电子钟是使用数字电路和单片机芯片来实现的,其原理是将时钟信号转换成数字信号并进行处理,再将处理后的数字信号通过LED七段数码管显示出来。

二、硬件实现数字电子钟的硬件主要包括单片机芯片、晶振、数码管、按键、电容、电阻等。

1.单片机芯片单片机是数字电子钟最重要的部分,负责整个系统的控制管理。

常见的单片机型号有STC89C52、AT89S52、PIC16F877A等。

2.晶振为了保证时钟的准确性,数字电子钟需要使用高精度的晶振,常用的晶振型号有6M、12M等。

3.数码管数码管是数字电子钟显示时间的主要部分,主要有共阴极类型和共阳极类型两种。

共阴极型数码管需要与P-MOS管搭配使用,共阳极型数码管需要与N-MOS管搭配使用。

4.按键按键主要负责数字电子钟的校正和功能设置,在实现时需要使用矩阵式按键,可节省IO口。

5.电容电容主要用于消除干扰和稳定系统电压,应该选用高品质的电容。

6.电阻电阻主要用于限流、分压、调节电流等,在硬件的设计中应该合理使用电阻。

三、软件实现数字电子钟的软件主要由主程序、定时中断、计时器、按键扫描等部分组成。

1.主程序主程序主要负责时钟的初始化、时间读取和显示、功能设置等操作。

2.定时中断定时中断是数字电子钟的核心部分,它的作用是定时更新时钟、计时器和闹钟功能,并通过数码管进行显示。

3.计时器计时器主要负责时钟的记时工作,在定时中断的控制下,能够实现秒、分、时、日、月、年等时间的计时和显示。

4.按键扫描按键扫描负责检测按键输入并对按键进行响应,可以实现小时校正、分钟校正、闹钟设置等功能。

4位单片机数字钟电子钟制作


1
PCB
专用 PCB
1
21
4 位数字电子钟调试说明
代码(冒号左边两 位,按 S1 加 1)
功能名称
01秒显示与调整
调位试,内按容S(2 加冒号1)右边两说明
按 S2 秒加 1
可以作为秒表使用
02走时分钟调整
走时分钟调整
03走时小时调整
走时小时调整
走时小时调整
04整点报时设置调整
05时间快慢调整 06第 1 路闹铃分钟调整 07第 1 路闹铃小时调整 08第 2 路闹铃分钟调整 09第 2 路闹铃小时调整
元件清单如下:
元件名称
规格型号
瓷片电容
30P
瓷片电容
104
电解电容
10uF/16-50V
电解电容
220uF/10V
四位绿色阴数码管 ORS-5463BG
20P IC 座
DIP 20
写入程序的芯片 STC11F02
12mm 电磁无源蜂鸣
器
12RT04CC
9P 排阻
200-
0 为所有整点报时,1
为 7-22 点报时,2 为
不整点报时
有 1-5 档,默认 2 档,
数字越大走时越快
第 1 路闹铃分钟显示
并设定
第 1 路闹铃小时显示
并设定
第 2 路闹铃分钟显示
并设定
第 2 路闹铃小时显示 并设定
此状态后进入正常走时
1/4W 电阻
10K
编号 C1, C2 C5 C3 C4 DS IC1 IC1
数量 2 1 1 1 1 1 1
LS1
1
PR1
1
Q1
1
R1, R2, R3, 4 R4

51单片机数字钟设计程序

51单片机数字钟设计程序51单片机是一种常用的单片机芯片,它具有体积小、功耗低、性能稳定等特点,被广泛应用于各种电子设备中。

本文将以51单片机数字钟设计程序为主题,介绍如何使用51单片机设计并实现一个简单的数字钟。

我们需要了解一下数字钟的基本原理。

数字钟主要由时钟芯片、数码管、按键等组成。

时钟芯片负责计时和控制,数码管用于显示时间,按键则用于设置和调整时间。

在设计数字钟的程序时,我们需要考虑以下几个方面:1. 时钟设置:首先,我们需要设置时钟芯片的工作模式。

一般来说,时钟芯片有两种工作模式,分别是24小时制和12小时制。

我们可以通过按键来选择工作模式,并将选择结果保存到相应的寄存器中。

2. 时间显示:接下来,我们需要将时钟芯片中的时间数据通过数码管显示出来。

数码管通常由7段LED组成,每段LED对应一个数字或字符。

我们可以通过控制数码管的引脚状态来实现不同数字的显示。

同时,为了使时间显示更加清晰,我们可以在数码管之间加入冒号等分隔符。

3. 时间调整:为了保证时间的准确性,我们需要提供时间调整的功能。

可以通过按键来实现时间的增加和减少,从而调整时钟芯片中的时间数据。

当按键按下时,我们可以检测到相应的信号,并将其转换为时间调整的命令。

4. 闹钟功能:除了显示时间,数字钟还可以具备闹钟功能。

我们可以设置一个闹钟时间,并在达到闹钟时间时触发相应的报警信号。

一般来说,闹钟功能可以通过按键设置,并将设置结果保存在相应的寄存器中。

当时钟芯片中的时间与闹钟时间一致时,我们可以通过控制蜂鸣器等外设来发出报警信号。

通过以上的设计,我们可以实现一个简单的数字钟。

当然,如果我们希望数字钟具备更多的功能,比如温湿度显示、定时器等,我们还可以在程序中添加相应的代码来实现。

总结一下,本文以51单片机数字钟设计程序为主题,介绍了数字钟的基本原理以及设计过程。

通过对时钟芯片、数码管、按键等的控制,我们可以实现时间的显示、调整和闹钟功能。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档