




已阅读5页,还剩22页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
淮 海 工 学 院测控技术与仪器专业专业综合课程设计报 告 书 题 目: 多动能六位电子钟 班 级: 拿我的文档再上传文库的死全家 姓 名: 拿我的文档再上传文库的死全家 学 号: 2013年 1 月 4 日目 录 第1章 数字电子钟的设计方案论证1.1数字电子钟的应用意义1.2数字电子钟设计的要求及技术指标1.3设计方案论证第二章 设计任务2.1设计题目及要求3 2.1.1主体电路与各电路原理3 2.1.2主体电路图3 2.1.3显示电路原理4 2.1.4键盘原理4 2.1.5迅响电路及输入、输出电路原理5 2.1.6单片机原理5 2.1.7译码显示单元电路7 校 1 2.1.8时基电路72.2 总体设计方案说明82.3 功能使用说明92.4 模块结构与方框图92.5 复位电路102.6时钟电路11第三章 设计方案3.1总体设计方案说明3.2功能使用说明3.3模块结构与方框图3.4复位电路原理3.5时钟电路第四章 软件设计与安装调试4.1 软件任务与安装调试124.1.1 软件流程与任务124.1.2 安装与调试144.1.3 元件清单14第五章 课程设计总结(心得体会)第六章 参考文献 引言数字钟是一个将“ 时”,“分”,“秒”显示于人的视觉器官的计时装置。它的计时周期为24小时,显示满刻度为23时59分59秒,另外应有校时功能。因此,一个基本的数字钟电路主要由译码显示器、“时”,“分”,“秒”计数器、校时电路、报时电路和振荡器组成。干电路系统由秒信号发生器、“时、分、秒”计数器、译码器及显示器、校时电路、整点报时电路组成。秒信号产生器是整个系统的时基信号,它直接决定计时系统的精度,一般用石英晶体振荡器加分频器来实现。将标准秒信号送入“秒计数器”,“秒计数器”采用60进制计数器,每累计60秒发出一个“分脉冲”信号,该信号将作为“分计数器”的时钟脉冲。“分计数器”也采用60进制计数器,每累计60分钟,发出一个“时脉冲”信号,该信号将被送到“时计数器”。“时计数器”采用24进制计时器,可实现对一天24小时的累计。译码显示电路将“时”、“分”、“秒”计数器的输出状态送到七段显示译码器译码,通过七位LED七段显示器显示出来。整点报时电路时根据计时系统的输出状态产生一脉冲信号,然后去触发一音频发生器实现报时。校时电路时用来对“时”、“分”、“秒”显示数字进行校对调整的。数字钟是以不同的计数器为基本单元构成的,它的用途十分广泛,只要有计时、计数的存在,便要用到数字钟的原理及结构;同时在日期中,它以其小巧,价格低廉,走时精度高,使用方便,功能多,便于集成化而受广大消费的喜爱 第一章 数字电子钟的设计方案论证 1.1数字电子钟的应用意义 数字电子钟是用数字电路实现“时”、“分”、“秒”数字显示的计时装置,主要由振荡器、分频器、计数器、译码显示器、校时电路、报时电路等六部分组成。这些都是数字电路中应用最广的基本电路。数字电子钟具有计时准确的功能。 1.2数字电子钟设计的要求及技术指标 1.设计数字电子钟实现准确计时,由六位数码管分别显示时、“分”、“秒”;附加 “星期”数码1位显示。 2.时与分与秒数字显示模块间各设置一对不同颜色发光二极管,时间单位数字变化时闪烁一次。 3计时误差不超过0.05秒。 4具有整点报时、手动设置修改时间功能控制功能。 1.3设计方案论证 石英晶体振荡器产生的时脉冲送到分频器,分频电路将时标信号分成每秒一次的方波信号。秒脉冲发生器产生频率稳定很高的秒脉冲,秒脉冲被送到一个六十进制秒计数器计数,将计数结果送至秒个位和十位译码器,译码结果分别由两只七段半导体数码管以十进制数形式显示来。当秒六十进制计数器累计到第59秒时,若再来一个秒脉冲,秒计数器的进位输出就产生进位脉冲(分计数脉冲),同时,秒计数器的十位和个位都复位到零。分计数脉冲又被送到分六十进制计数器计数,经译码电路译码后数码管显示相应的分数。当计满59分59秒时,若再来一个秒脉冲,则分计数器便向时计数器送出时计数脉冲,同时,分、秒计数器均复位到零。时计数器是一个二十四进制计数器,当计数显示23时59分59秒时,若再来一个秒脉冲,则时、分、秒计数器都应回到零,并显示(00 00 00)表示已到达午夜零点,第二天开始继续计数 第二章 设计任务2.1设计题目及要求AT89C2051多功能六位电子钟设计制作一个多功能六位电子钟。1、准时计时,数字形式显示时、分、秒的时间;2、小时的计时要求为“12翻1”分和秒的计时要求为60秒进位;3、校正时间。2.2主体电路逻辑2.2.1主体电路图 原理方框图如图(2.2.1):图(2.2.1)六位电子钟原理方框图2.2.2显示电路原理 显示部分主要器件为3只两位一体共阳极数码管,驱动采用 PNP 型三极管驱动,各端口配有限流电阻,驱动方式为动态扫描,占用 P3.0P3.5 端口,段码由P1.0P1.6输出。冒号部分采用 4 个 3.0的红色发光二极管,驱动方式为独立端口P1.7驱动。 图(2.2.2-1)共阳极LED 数码管的内部结构原理图LED数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数位,因此根据LED数码管的驱动方式的不同,可以分为静态式和动态式两类。1.静态显示驱动 静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单片机的I/O埠进行驱动,或者使用如BCD码二-十进位*器*进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O埠多,如驱动5个数码管静态显示则需要5840根I/O埠来驱动,要知道一个89S51单片机可用的I/O埠才32个呢。故实际应用时必须增加*驱动器进行驱动,增加了硬体电路的复杂性。2.动态显示驱动: 数码管动态显示介面是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp 的同名端连在一起,另外为每个数码管的公共极COM增加位元选通控制电路,位元选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位元选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位元就显示出字形,没有选通的数码管就不会亮。透过分时轮流控制各个LED数码管的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位元数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极体的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示资料,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O埠,而且功耗更低。 图(2.2.2-2) 数码管显示 2.2.3键盘原理:如下图;按键 S1S3 采用复用的方式与显示部分的 P3.5、P3.4、P3.2 口复用。其工作方式为,在相应端口输出高电平时读取按键的状态并由单片机消除抖动并赋予相应的键值。 图(2.2.3)键盘原理图计算:由于LED数码管典型静态电流为10mA左右,如果不接上拉电阻的话,电流将会过大烧坏数码管,所以要加上拉电阻,经计算电阻值需R=10V/10mA=1000欧姆=1K2.2.4迅响电路及输入、输出电路原理如下图示;迅响电路由有源蜂鸣器和 PNP 型三极管组成。其工作原理是当 PNP 型三极管导通后有源蜂鸣器立即发出定频声响。驱动方式为独立端口驱动,占用P3.7端口。输出电路是与迅响电路复合作用的,其电路结构为有源蜂鸣器,5.1K定值电 图(2.2.4 -1) 迅响电路及输入、输出电路原理阻R6,排针J3并联。当有源蜂鸣器无迅响时J3输出低电平,当有源蜂鸣器发出声响时J3输出高电平,J3可接入数字电路等各种需要。驱动方式为迅响复合输出,不占端口。 输入电路是与迅响电路复合作用的,其电路结构是在迅响电路的 PNP 型三极管的基极电路中接入排针J2。引脚排针可改变单片机I/O口的电平状态,从而达到输入的目的。驱动方式为复合端口驱动,占用P3.7端口。2.2.5 本产品采用了单片机AT89C2051为核心器件,并配合所有的外围电路,具有上电复位的功能,无手动复位功能。 计算:蜂鸣器的驱动电流一般为20-42mA,从IO口输出接限流电阻R1,然后接PNP三极管基极,集电极接蜂鸣器一端,另一端接地,发射结接VCC,如果电流不是很大的话,R1取1k,经计算,另一端可接一电阻5.1k 图(2.2.4-1) 图(2.2.4-2)P3口引脚 功能 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 RXD(串行输入端口) TXD(串行输出端口) INT0(外中断0) INT1(外中断1) TO(定时器0外部输入) T1(定时器1外部输入) 表(2.2.5)管脚功能 AT89C2051是一带有2K字节闪速可编程可擦除只读存储体(EEPROM)的低电压,高性能8位CMOS微型计算机。如图10.2所示。它采用ATMEL的高密非易失存储技术制造并和工业标准MCS51指令集和引脚结构兼容。通过在单块芯片上组合通用的CPL1和闪速存储器,ATMEL AT89C2051是一强劲的微型计算机,它对许多嵌入式控制应用提供一高度灵活和成本低的解决办法。 2.2.5译码显示单元电路的介绍 图(2.2.5)译码显示电路 译码电路的功能是将秒、分、时计数器的输出代码进行翻译,变成相应的数字。用与驱动LED七段数码管的译码器常用的有74LS48。74LS48是BCD-7段译码器/驱动器,输出高电平有效,专用于驱动LED七段共阴极显示数码管。若将秒、分、时计数器的每位输出分别送到相应七段译吗管的输入端,便可以进行不同数字的显示。在译码管输出与数码管之间串联电阻R作为限流电阻。2.2.6校时电路原理校时电路是数字钟不可缺少的部分,每当数字钟与实际时间不符时,需要根据标准时间进行校时。K1、K2分别是时校正、分校正开关。不校正时,K1、K2开关是闭和的。当校正时位时,需要把K1开关打开,然后用手拨动K3开关,来回拨动一次,就能使时位增加1,根据需要去拨动开关的次数,校正完毕后把K1开关闭上。校正分位时和校正时位的方法一样。其电路图如下: 图2.2.6(校时电路)第三章 设计方案3.1总体设计方案说明AT89C2051是美国ATMEL公司生产的低电压、高性能CMOS 8位单片机,片内含2k bytes的可反复擦写的只读程序存储器(PEROM)和128bytes的随机数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,AT89C2051单片机在电子类产品中有广泛的应用。 图(3.1)总体设计说明数字电子钟是用数字电路实现“时”、“分”、“秒”数字显示的计时装置,主要由振荡器、分频器、计数器、译码显示器、校时电路等部分组成。而数字钟想准确的计时则是由振荡器产生的时脉冲送到分频器,分频电路将时标信号分成每秒一次的方波信号。秒脉冲发生器产生频率稳定很高的秒脉冲,秒脉冲被送到一个六十进制秒计数器计数,将计数结果送至秒个位和十位译码器,译码结果分别由两只七段数码管以十进制数形式显示来。当秒六十进制计数器累计到第59秒时,若再来一个秒脉冲,秒计数器的进位输出就产生进位脉冲(分计数脉冲),同时,秒计数器的十位和个位都复位到零。分计数脉冲又被送到分六十进制计数器计数,经译码电路译码后数码管显示相应的分数。当计满59分59秒时,若再来一个秒脉冲,则分计数器便向时计数器送出时计数脉冲,同时,分、秒计数器均复位到零。时计数器是一个二十四进制计数器,当计数显示23时59分59秒时,若再来一个秒脉冲,则时、分、秒计数器都应回到零,并显示(00:00:00)表示已到达午夜零点,第二天开始继续计数。其主要的功能模块如图2-1所示。3.2功能使用说明 1、功能按键说明: S1为功能选择按键,S2为功能扩展按键,S3为数值加一按键。 2、功能及操作说明: 操作时,连续短时间(小于1秒)按动S1,即可在以上的6个功能中连续循环。中途如果长按(大于2秒)S1,则立即回到时钟功能的状态。1)时钟功能:上电后即显示10:10:00 ,寓意十全十美。2)校时功能:短按一次 S1,即当前时间和冒号为闪烁状态,按动 S2 则小时位加 1,按动 S3则分钟位加1,秒时不可调。 3)闹钟功能:短按二次S1,显示状态为22:10:00,冒号为长亮。按动S2刚小时位加1,按动S3则分钟位加1,秒时不可调。当按动小时位超过23时则会显示-:-:-,这个表示关闭闹钟功能。闹铃声为蜂鸣器长鸣3秒钟。 4)倒计时功能:短按三次S1,显示状态为 0,冒号为长灭。按动S2则从低位依此显示高位,按动S3则相应位加1,当S2按到第6次时会在所设定的时间状态下开始倒计时,再次按动S2将再次进入调整功能,并且停止倒计时。 5)秒表功能:短按四次 S1,显示状态为 00:00:00,冒号为长亮。按动 S2 则开始秒表计时,再次按动S2则停止计时,当停止计时的时候按动S3则秒表清零。 6)计数器功能:短按五次S1,显示状态为00:00:00,冒号为长灭,按动S2则计数器加1,按动S3则计数器清零。3.3模块结构与方框图如图(3.3) 图(3.3)软件系统结构方框图3.4复位电路原理AT89C2051单片机的复位是由外部的复位电路来实现的。复位引脚RST通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,在每个机器周期的S5P2,斯密特触发器的输出电平由复位电路采样一次,然后才能得到内部复位操作所需要的信号。上电复位电路是种简单的复位电路,只要在RST复位引脚接一个电容到VCC,接一个电阻到地就可以了。上电复位是指在给系统上电时,复位电路通过电容加到RST复位引脚一个短暂的高电平信号,这个复位信号随着VCC对电容的充电过程而回落,所以RST引脚复位的高电平维持时间取决于电容的充电时间。为了保证系统安全可靠的复位,RST引脚的高电平信号必须维持足够长的时间。 图3.4复位电路电容充电时间的计算:设为电容初始电压值,为电容最终可充到或放到的电压值,为t时刻电容上的电压值。则,求充电到90的时间(=0,=,):代入上式:,, , ,,代入得:,12MHz的单片机的机器周期为1us,所以能可靠复位。 上电自动复位是通过外部复位电路的电容充电来实现的。只要VCC的上升时间不超过1ms,就可以实现自动上电复位。3.5时钟电路时钟是单片机的心脏,单片机各功能部件的运行都是以时钟频率为基准,有条不紊的一拍一拍地工作。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。常用的时钟电路有两种方式:一种是内部时钟方式,另一种为外部时钟方式。本文用的是内部时钟方式。 图(3.5)时钟电路 AT89C2051单片机内部有一个用于构成振荡器的高增益反相放大器,该高增益反向放大器的输入端为芯片引脚XTAL1,输出端为引脚XTAL2。这两个引脚跨接石英晶体振荡器和微调电容,就构成一个稳定的自激振荡器。第四章 软件设计与安装调试4.1软件任务与安装调试4.1.1软件流程与任务软件任务分析软件任务分析和硬件电路设计结合进行,哪些功能由硬件完成,哪些任务由软件完成,在硬件电路设计基本定型后,也就基本上决定下来了9。软件任务分析环节是为软件设计做一个总体规划。从软件的功能来看可分为两大类:一类是执行软件,它能完成各种实质性的功能,如测量,计算,显示,打印,输出控制和通信等,另一类是监控软件,它是专门用来协调各执行模块和操作者的关系,在系统软件中充当组织调度角色的软件。这两类软件的设计方法各有特色,执行软件的设计偏重算法效率,与硬件关系密切,千变万化。软件任务分析时,应将各执行模块一一列出,并为每一个执行模块进行功能定义和接口定义(输入输出定义)。在各执行模块进行定义时,将要牵扯到的数据结构和数据类型问题也一并规划好。各执行模块规划好后,就可以监控程序了。首先根据系统功能和键盘设置选择一种最适合的监控程序结构。相对来讲,执行模块任务明确单纯,比较容易编程,而监控程序较易出问题。这如同当一名操作工人比较容易,而当一个厂长就比较难了。软件任务分析的另一个内容是如何安排监控软件和各执行模块。整个系统软件可分为后台程序(背景程序)和前台程序。后台程序指主程序及其调用的子程序,这类程序对实时性要求不是太高,延误几十ms甚至几百ms也没关系,故通常将监控程序(键盘解释程序),显示程序和打印程序等与操作者打交道的程序放在后台程序中执行;而前台程序安排一些实时性要求较高的内容,如定时系统和外部中断(如掉电中断)。也可以将全部程序均安排在前台,后台程序为“使系统进入睡眠状态”,以利于系统节电和抗干扰。软件流程图图4.1.1程序设计流程图程序里先定义两个中断定时器T0和T1,一个作为秒记数用,另一个做为调整时闪烁用。编程时先将P1和P3口 数据清零,然后P1和P3口作动态扫描显示,由于人的眼睛有延迟性,当扫描频率非常高时人就感觉数码管一直亮着,而同时记数器在遵循时间的变化方式执行着秒到了60分加一,分到了60小时加一,小时到了24就归零。P3.7作为时间调整按钮当长按按住2秒以上进入校准时间状态及换档和退出,快速点触用于调节时间数值,归零是复位按钮。4.1.2安装与调试安装、焊接元件到电路板上按照先低后高,先小后大,先卧式后立式的顺序,正确插入元件,其高低、极性要符合规定。1.先从最低元件安装。应先安装、焊接跳线机及电阻,用电阻多余的脚做跳线,电阻引脚不分正负,焊接时间最好控制在2-3秒。2.安装、焊接瓷片电容。瓷片电容部分正负极。3.安装、焊接轻触开关4.安装、焊接三极管。三极管的外形基本一样,注意分青,且方向要和电路板上的方向一致。5.安装、焊接12MHZ晶振。晶振没有正负极。6.安装、焊接电解电容,装的时候要躺着安装,立着会影响发光二极管的显示不整齐。7.安装、焊接20脚IC插座,从用一小缺口或小圆点标记的地方以逆时针数依次为1-20脚,安装时要注意缺口和电路上的缺口相一致。20只引脚都插到位后,先用手指按住,固定对角两只引脚,防止插入的引脚掉出来,再把板放到桌面上把剩下的引脚焊好。焊好后不要急于插入单片机芯片,因为还有其他元件焊接,防止电烙铁带静电击坏单片机芯片。8.安装、焊接蜂鸣器。9.安装、焊接LED。LED和普通二极管一样,有正负极之分,不能装错。安装、焊接数码管。认识数码管内部结构。 表(4.1.2)原件清单表序号名称规格位号数量序号名称规格位号数量123456789101112单片机三端集成稳压2位共阳数码管发光二极管蜂鸣器瓷片电容2位排针集成电路插座电解电容晶振AT89C205178L05红色0.4寸红色35V有源30PF0.1uF间距2.5420P10uF100uF12MHzU1U2LED1LED3D1D4U3C2、C3C4、C5J1J3U1C1C6Y1113412231111131415161718192021222324三极管电阻按键电池盒DC插座电源线电路板说明书90122201K2K5.1K10K6*6*54节5号5.5*2.1双色2P105*55A4双面Q1Q7R3R9R2、R10R15R17、R18R16R1S1、S2、S3带热缩管777211311111 第五章 课程设计总结(心得体会)经过大量查找资料和老师的不断指点,我将所设计的六位数码管电子钟焊接成功,虽然不是很稳定,但在这个过程中,我了解了各个元器件的识别与测量,也了解了AT89C2051单片机及其引脚功能。同时明白了六位数码管电子钟的工作原理并实现了其功能。本程序设计时,只用了一个定时器T0,其他的中断全部关断,定时器工作在两个8位自动加载初始值状态。简短的定时中断程序只负责时间的计数和进位功能,这是保证走时精确。有三个轻触式按键:功能选择按键S1,功能扩展按键S2,数值加一按键S3。此数字钟采用了一只NPN型的三极管及蜂鸣器为闹时讯响电路。通过这次的课程设计,我对自己的动手能力有了信心。面临着就业,我将充分发挥我的主观能动性和在学校学到的一切知识。为母校添砖加瓦,为自己的前程奋斗!这次课程设计的顺利进行,我深刻明白了理论知识与社会实践相结合的道理,从中得到了以前书本知识所不曾得到的知识。更加明白了如今信息时代电子技能知识的重要性。增强了我对实际工艺技术、电子技术和设备技术等方面的认识,掌握了分析处理方法,调试、计算等基本技能的训练,并具备了一定程度的实际工作能力。 面对如此激烈的市场竞争体系,只有努力掌握好电子技能知识方可在竞争中立于不败之地,我对从事电子产品的开发和研究充满了兴趣。本次课程设计是我的电子研发之路的良好开端。我会以此为契机,在日后的工作中深入学习、加深研究,在实际工作中创造自己的价值。 第六章 参考文献实验电子技术电子技术基础课程设计电路基本分析电路基础单片机原理与应用技术单片机应用技术高级单片机教程李振声任为民石生徐熙文李全利刘守义何立民国防工业出版社中央广播电视大学出版社高等教育出版社高等教育出版社高等教育出版社西安电子科技大学出版社北航出版社程序 #includecode senen_seg10=0x81,0xe7,0x92,0xa2,0xe4,0xa8,0x88,0xe3,0x80,0xa0; /P1.7(冒号)口高电平bit key1_enter=0,key2_enter=0,key3_enter=0,countdown_mark=0,stopwatch_mark=0,count_mark=0,bell_mark=0; /状态标志unsigned char program=0,program_variable=0,count_bit=0,count=0;unsigned char hour=10,minute=10,second=0; /时间变量unsigned char delayed_hour=22,delayed_minute=10,delayed_second=0;/定时变量 unsigned char count_hour=0,count_minute=0,count_second=0; /计时计数变量unsigned char count_time=0,count_count=0; void delay(unsigned int t)/延时子程序 unsigned int i,j; for(i=0;it;i+) for(j=0;j=199) count_time=0; second+; if(second=60) second=0; minute+; if(minute=60) minute=0; hour+; if(hour=24)hour=0; if(delayed_hour=hour & delayed_minute=minute & second=199 & (count_second!=0|count_minute!=0|count_hour!=0)count_count=0;count_second-;if(count_second=60) count_second=59; count_minute-; if(count_minute=60) count_minute=59; count_hour-; if(count_hour=100) count_hour=99; if(count_second=0&count_minute=0&count_hour=0&count_count=15000) count_count=14000; if(stopwatch_mark=1) /秒表程序 count_count+; if(count_count=2)count_count=0;count_second+;if(count_second=100) count_second=0; count_minute+; if(count_minute=60) count_minute=0; count_hour+; if(count_hour=60) count_hour=0; unsigned char show_key (void)unsigned char x=0,y=0;switch (program)case 0: P1&=senen_segsecond%10; /时钟秒的个位 break;case 1: if(count_time=90) P1&=senen_segsecond%10; /校正秒的个位 break;case 2: if(delayed_hour=24) P1=0xfe;/闹钟秒的个位 else P1&=senen_segdelayed_second%10; break;case 3: if(count_bit=0) P1&=senen_segcount_second%10;/倒计时秒的个位 else P1=0xff; break;case 4: P1&=senen_segcount_second%10; /秒表秒的个位break;case 5: P1&=senen_segcount_second%10; /计数器个位break; P3_3=0; delay(10); if(P3_5=0)/功能键1识别 key1_enter=1;if(count=90) P1&=senen_segsecond/10; /校正秒的十位 break;case 2: if(delayed_hour=24) P1=0xfe; /闹钟秒的十位 else P1&=senen_segdelayed_second/10; break;case 3: if(count_bit=1) P1&=senen_segcount_second/10;/倒计时秒的十位else P1=0xff; break;case 4: P1&=senen_segcount_second/10; /秒表秒的十位break;case 5: P1&=senen_segcount_second/10; /计数器十位break; P3_1=0; delay(10); P3_1=1; P1|=0xff;switch (program) case 0: P1&=senen_segminute%10; /时钟分的个位break;case 1: if(count_time=90) P1&=senen_segminute%10; /校正分的个位break;case 2: if(delayed_hour=24) P1=0xfe;/闹钟分的个位 else P1&=senen_segdelayed_minute%10; break;case 3: if(count_bit=2) P1&=senen_segcount_minute%10;/倒计时分的个位else P1=0xff;break;case 4: P1&=senen_segcount_minute%10; /秒表分的个位break;case 5: P1&=senen_segcount_minute%10; /计数器百位break; P3_2=0; delay(10); P3_2=1; P1|=0xff;switch (program)case 0: P1&=senen_segminute/10; /时钟秒的个位break;case 1: if(count_time=90) P1&=senen_segminute/10; /校正秒的个位 break;case 2: if(delayed_hour=24) P1=0xfe;/闹钟秒的个位 else P1&=senen_segdelayed_minute/10; break;case 3: if(count_bit=3) P1&=senen_segcount_minute/10;/倒计时秒的个位else P1=0xff;break; case 4: P1&=senen_segcount_minute/10; /秒表秒的个位break;case 5: P1&=senen_segcount_minute/10; /计数器千位break; P3_5=0; delay(10); P3_5=1; P1|=0xff;switch (program)case 0: P1&=senen_seghour%10; /时钟时的个位break;case 1: if(count_time=90) P1&=senen_seghour%10; /校正时的个位break;case 2: if(delayed_hour=24) P1=0xfe; /闹钟时的个位 else P1&=senen_segdelayed_hour%10; break;case 3: if(count_bit=4) P1&=senen_segcount_hour%10;/倒计时时的个位else P1=0xff;break;case 4: P1&=senen_segcount_hour%10; /秒表时的个位break;case 5: P1&=senen_segcount_hour%10; /计数器万位break; P3_0=0; delay(10); if(P3_4=1 & key2_enter=1) x=3; /确认功能键2识别,返回3 key2_enter=0; P3_0=1; P1|=0xff;switch (program) case 0: P1&=senen_seghour/10; /时钟时的个位break;case 1: if(count_time=90) P1&=senen_seghour/10; /校正时的个位break;case 2: if(delayed_hour=24) P1=0xfe; /闹钟时的个位 else P1&=senen_segdelayed_hour/10; break;case 3: if(count_bit=5)P1&=senen_segcount_hour/10; /倒计时时的个位else P1=0xff;break;case 4: P1&=senen_segcount_
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 课件时间利用的好处
- 高压水射流清洗工协同作业考核试卷及答案
- 有色金属熔池熔炼炉工岗位操作技能考核试卷及答案
- 近代科技考试题及答案
- 金属学考试题及答案
- 蒸发浓缩结晶工适应性考核试卷及答案
- 三聚氰胺装置操作工基础知识考核试卷及答案
- 交通安全设施工测试考核试卷及答案
- 水产捕捞工工艺考核试卷及答案
- 合成洗涤剂制造工三级安全教育(公司级)考核试卷及答案
- 《灭火器维修》GA95-2015(全文)
- 纳米材料ppt课件精品课件
- 广东工业大学年《电机学》期末试题及答案解析
- 解读《义务教育体育与健康课程标准(2022年版)》2022年体育与健康新课标专题PPT
- 2019版外研社高中英语必修三单词默写表
- 食堂合作协议范本食堂档口合作协议.doc
- 直接还原铁生产工艺
- 建筑识图题库及答案
- 《幂的运算》习题精选及答案
- 异质结TCO设备:RPD与PVD比较分析(2021年).doc
- PPT汇报评分表(共1页)
评论
0/150
提交评论