340 likes | 516 Views
项目 5 万年历的设计、仿真. 5.1 工作任务 5. 2 理论基础 5. 3 工作过程 5. 4 能力拓展. 5. 1 工作任务. (1) 具有实时显示年、月、日和时、分、秒功能 ; (2) 走时准确,具备年、月、日、星期、时、分、秒校准功能 ; (3) 时间与阴、阳历能够自动关联 ; (4) 采用市电通过电源适配器供电,当市电停电时,不但万年历所有数据不丢失,且万年历照常运行 ( 有后备电池供电,可供数年 ); (5) 万年历设置运行到 2030 年。. 返回. 5. 2 理论基础.
E N D
项目5 万年历的设计、仿真 • 5.1 工作任务 • 5. 2 理论基础 • 5. 3 工作过程 • 5. 4 能力拓展
5. 1 工作任务 • (1)具有实时显示年、月、日和时、分、秒功能; • (2)走时准确,具备年、月、日、星期、时、分、秒校准功能; • (3)时间与阴、阳历能够自动关联; • (4)采用市电通过电源适配器供电,当市电停电时,不但万年历所有数据不丢失,且万年历照常运行(有后备电池供电,可供数年); • (5)万年历设置运行到2030年。 返回
5. 2 理论基础 • 80C51单片机内部设有两个可编程的16位定时/计数器,简称定时器O(TO)和定时器1(T1)。它们均可用作定时控制、延时以及对外部事件计数。在定时/计数器中除了两个16位的计数器之外,还有两个特殊功能寄存器(控制寄存器和方式寄存器)。其逻辑结构如图5一1所示。 • 由图可见,16位定时/计数器分别由两个8位专用寄存器组成,即TO由THO和TLO构成,T1由TH1和TL1构成,地址分别为8AH一8DH。 • 当定时/计数器被设定为某种工作方式后,它就会按设定的工作方式独立运行,不再占用CPU的操作时间,直到加1计数器计满溢出,才向CPU申请中断。 上一页 下一页 返回
5. 2 理论基础 • 5. 2.1定时/计数器 • 定时/计数器是一种可编程的部件,在其工作之前必须将控制字写入工作方式寄存器和控制寄存器,这个过程称为定时/计数器的初始化。 • 1.工作方式寄存器TMOD • TMOD用于控制TO和T1的工作方式,其各位定义如下: • TMOD中各位功能如下: • (1)MO,M1:工作方式控制位。可构成如表5一1所示的4种工作方式: 上一页 下一页 返回
5. 2 理论基础 • (2) c/T:功能选择位。c/T -0为定时器方式,c/T = I为计数器方式。 • (3) GATE:选通控制位。当(ATE = 0时,只用软件对TRO(或TR1)置1即可启动定时器开始工作,当(ATE = 1时,只有在INTO(或INT1)引脚为1,且用软件对TRO(或TR1)置1才能启动定时器工作。 • TMOD不能位寻址,只能用字节方式设置工作方式。复位时,TMOD所有位均为O。 • 2.控制寄存器TCON • TCON的作用是控制定时器的启动、停止以及标志定时器的溢出和中断情况。定时器控制字TCON的格式如下: 上一页 下一页 返回
5. 2 理论基础 • 3.定时/计数器的工作方式 • 由上节可知,对TMOD中M1,M0的设置,可选择4种工作方式,这4种工作方式中除了工作方式3以外,其他3种工作方式的基本原理都是一样的。下面介绍这4种工作方式的结构、特点及工作情况。 • (1)工作方式0 • 方式0是一个13位的定时/计数器。其逻辑结构如图5一2所示,以TO为例进行说明。 • (2)工作方式1 • 方式1是一个16位的定时/计数器。其逻辑结构如图5一3所示,其操作几乎与方式0完全相同,唯一的差别是在方式1中,定时器是以16位二进制数参与操作,且定时时间为: 上一页 下一页 返回
5. 2 理论基础 • (3)工作方式2 • 方式2是能重置初值的8位定时/计数器。其逻辑结构如图5一4所示。 • 工作方式2的定时时间为: • (4)工作方式3 • 方式3只适用于定时器TO。定时器TO在方式3下被拆成两个独立的8位计数器TLO和THO(见图5一5). 上一页 下一页 返回
5. 2 理论基础 • 5. 2. 2定时/计数器应用举例 • 使用定时/计数器前,需对其进行初始化。初始化的大致步骤如下: • ①确定工作方式:对TMOD赋值; • ②向定时/计数器THO,TLO或TH1 ,TL1写入初值; • ③根据需要开放定时/计数器的中断:直接对允许控制寄存器IE的位赋值; • ④启动定时/计数器工作:若用软件启动(GATE = 0 ),则对TRO或TR1置“1";若由外部中断引脚电平启动(GATE -1),则尚需给INTO或INT1加高电平才能启动。 上一页 下一页 返回
5. 2 理论基础 • 5. 2. 3与本项目相关的指令 • 1.逻辑或运算指令 • 这组指令的功能是两操作数所确定的内容按位相或后,结果送到日的操作数地址中。同与逻辑一样,对于最后两条指令,当直接地址为I/o口时,也进行“读一改一写”操作。 上一页 下一页 返回
5. 2 理论基础 • 与、或逻辑运算结合使用,可以实现对某单元内容的某些位进行交换,而其余位保持不变。 • 2.逻辑异或运算指令 • 同样,最后两条指令,也具有“读一改一写”功能。 • 异或操作也是按位进行的,当两操作数相同时结果为0,不同时结果为1. 上一页 下一页 返回
5. 2 理论基础 • 任一操作数与它自身相等的数异或,结果为0;任一操作数与00 H异或,结果为操作数本身;任一操作数与OFFH异或,结果为操作数的非。 • 3.累加器清“0”与取反指令 • 清“0”指令:CLR A ; A←0 • 取反指令:CPL A ;A←(A) • 清“0”与取反指令只对累加器A操作,它们都是单字节指令,若用上述异或指令也可以对某操作数清“0”或取反,但至少要二字节指令。 • 80C51没有求补指令,若需进行求补计算,可用“取反加1”实现。 • 4.移位指令 • RL A; 左小循环 • RR A; 右小循环 上一页 下一页 返回
5. 2 理论基础 • R TC A;左大循环 • RRC A;右大循环 • 同样,移位指令也只对累加器A进行操作。前两条指令分别将A中内容循环左移或石移一位,后两条指令分别将A中内容连同进位位CY一起循环左移或右移一位。以上移位指令的操作过程,可以用图5 -7说明。 上一页 返回
5. 3 工作过程 • 5. 3. 1构思 • 学生查阅该项目相关资料,如教材、参考书目、图书、网络资源等,收集万年历信息;教师采用多媒体课件讲授该项目理论知识相关内容,为学生制作万年历奠定理论基础;学生通过与指导教师交流确定总体设计方案和各模块的设计方案。解决该项目设计,仿真和制作的疑难问题。最终完成学生工作页(如表5-2)的填写。 • 5. 3. 2设计 • 各小组集中讨论,汇总信息并整理,确定该项目的设计方案,要保证项目的可行性和可操作性。电路设计枢图如图5一8所示,万年历的硬件电路图参见图5一9. 下一页 返回
5. 3 工作过程 • 1.单片机选型 • 2.电源、时钟电路和复位电路 • 3.显示模块设计 • 4.时钟模块设计 • 5.调时模块 • 6.软件程序设计 • 项目的程序流程图如图5一10、图5一11所示。 • 5. 3. 3项目实施 • 1.制作秒表的电路板 • 列出所需元件清单,如表5 -3所示。 上一页 下一页 返回
5. 3 工作过程 • 2.硬件测试 • 3.软件测试 • 5. 3. 4 项目评价 • 以教师为主,通过教师评价、学生自评、学生互评、成果评定等四个方面对学生的项目完成情况进行综合评价;同时对项目报告进行评价;按项目的技术指标进行评价;对实施记录和实训报告进行评价;以及对学生的学习态度、工作态度、团结协作精神、出勤率、敬业爱岗和职业道德进行评价。以专兼教师为主,按以下几个方面对学生完成项目的整个过程进行评价,项目考核具体内容见表5 -4所示。 上一页 返回
5. 4 能力拓展 • 在设计出的万年历的基础上,可以设计一款具有上、下课响铃功能;具有防御报警功能;具有温度计功能的多功能万年历,其硬件原理图如图5一14所示。 返回
表5一1 4种工作方式 返回
表5 -2 学生工作页 返回
图5一8 电路设计框图 返回
图5一10主程序流程图 返回
图5-12 万年历仿真图 返回
表5 -3元件清单 返回
表5 -4 项目考核表 返回
图5一14 硬件原理图 返回