毕业论文:应用单片机电子闹钟的设计与制作.doc_第1页
毕业论文:应用单片机电子闹钟的设计与制作.doc_第2页
毕业论文:应用单片机电子闹钟的设计与制作.doc_第3页
毕业论文:应用单片机电子闹钟的设计与制作.doc_第4页
毕业论文:应用单片机电子闹钟的设计与制作.doc_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业论文:应用单片机电子闹钟的设计与制作 湖州职业技术学院应用电子技术专业毕业论文应用单片机电子闹钟的设计与制作学 生 姓 名毕 业 班 级电子80503班指 导 教 师摘 要51电子闹钟是集电子技术数字显示技术为一体的高产品具有按时闹铃使用方便等优点本论文从51电子闹钟系统的功能硬件电路设计软件设计和产品介绍四部分分别论述这一系统本系统51电子闹钟硬件部分结构简单成本低具有比较好的市场前景现代的快节奏生活给人们的精神上带来了很大压力如何排解或缓解这些压力已经成为很多人和探索者多年来的一个重要研究项目电子闹钟减压正是应此而生目 录第一章 绪论111概述1111 51电子闹钟发展趋势1112 本课题研究的主要内容1 12 51电子闹钟简介2121 开发的目的和意义2122 51电子闹钟的优点212 3 51电子闹钟的特点2第二章 系统方案的设计321系统概述3211系统功能描述3212系统方案的确定3213系统设计思路与步骤322芯片基本工作原理及其应用5221 AT89S51简介5222引脚介绍5223电源6224存储器6225应用6 23 LM386简介6231 LM386介绍7232 LM386特点7第三章 系统的设计8 31 系统硬件设计8311单片机系统的设计8312 按键电路的设计9313复位电路的设计10314显示电路的设计11 32 系统软件的设计12321软件设计12322整个系统软件部分的总体设计16第四章 系统的调试和性能分析16 41 系统的调试方法16411输入按键的调试16412复位电路的调试17413显示电路的调试17414整个系统的联调17第五章 结论18参考文献19附录1 原理图20附录2 实物图21附录3 程序22第一章 绪论11概述电子闹钟在科学技术高度发展的今天千家万户都少不了它所以很多家庭个人都需要有一个电子闹钟为人们提供报时方便但普通电子闹钟不够方便实用本文给出了一种以51芯片电子闹钟设计方法从而给人们带来更为方便的工作与生活111 51电子闹钟发展趋势现代的快节奏生活给人们的精神上带来了很大压力如何排解或缓解这些压力已经成为很多人关心的问题单片机电子闹钟是具发前闹钟创新性的系统它代表了时代的发展趋势2007年无论从国内外行业发展趋势还是从闹钟市场准入的要求来看节能环保创新都已成为中国家电企业无法回避的大问题在原材料价格不断上涨下游渠道商实力膨胀价格战越来越激烈行业利润日趋微薄的背景下日前中国的电子闹钟在节能化环保化创新型转变过程中正进行新一轮闹钟赛跑目前国内专业51电子闹钟厂家的数量正在迅速增长51电子闹钟市场在未来的三五年内会高速增长新技术新产品也会不断出现并投入应用112本课题研究的主要内容设计一个51电子闹钟 能随意设定走时起始时间 2 12小时24小时两种制式可选以适应不同的需要3 能指示秒节奏即秒指示4 采用交直流供电电源与石英钟不同的是电子钟一般采用数码管等显示介质因而必须以交流供电为主以直流电源为后备辅助电源并能自动切换该设计主要包括按键显示程序单元部分AT89S51单片机芯片74HC245驱动LED显示电路集成电路74HC245和LM386各1个12 51电子闹钟简介121开发的目的和意义目的 设计一个51电子闹钟的该闹钟可由使用者自己设定一个时间若想设置闹铃应先按下复位按键然后长时间按下设置按键第一个数码管会显示C然后变为00-00-00此时进入闹铃设置状态设置方法跟上面一样闹铃设置完后下一步要设置当前时间调整方法跳到第一步这样设置好后她就能按照主人的意思定时的把你闹醒啦意义电子闹钟已经是现代生活中经常用到的工具之一传统的电子闹钟只是机械控制另外体积也很大又不美观也不实用而现在我设计的电子闹钟是用单片机做的只要简单的设置好后她就能按照主人的意思定时的把你闹醒啦也能给人们的生活带来方便122 51电子闹钟的优点1简单好用美观体积小实用2用电量少电压低节能环保创新按键显示程序单元部分AT89S51单片机芯片74HC245驱动LED显示电路外接3个按钮组成键盘AT89S51为51内核另外AT89S51本身无专门的液晶驱动接口因此本时钟采用数码管显示方式数码管作为一种主动显示器件具有亮度高价格便宜等优点而且市场上也有专门的时钟显示组合数码管 51电子闹钟的用途我设计的电子闹钟是用单片机做的只要简单的设置好后她就能按照主人的意思定时的把你闹醒啦也能给人们的生活工作学习带来方便123 51电子闹钟的特点1帮助您排解或缓解那些来自现实生活的压力2数码管作为一种主动显示器件亮度高价格便宜等显示数字清晰3简单好用可任意设24式时间4使用LED发光省电灯泡寿命长第二章 系统方案的设计21系统概述211系统功能描述本系统是利用AT89S51为51内核集成电路74HC245和LM386各1个制作完成一个电子闹钟该设计中采用液晶显示或数码管显示因此本时钟采用数码管显示方式充分体现系统的简易性使我们了解简易闹钟的设计方法并自己动手设计电路和编写实现闹钟功能的程序简易闹钟要实现以下功能1能正确显示闹钟的走时2可以进行当前时间的设置3可以设置闹钟时间并在时间到时发出响声整个系统的任务要求1输入数字按键的功能保证数字的输入2复位电路的功能所有时间回到初始化状态用于启动设定时间参数对时或定闹3显示电路的功能当输入数字时显示24小时时间功能闹铃功能 设置好闹铃时间后能按设置好的时间准时闹铃212系统方案的确定根据以上各模块并结合显示屏的功能及元器件材料的情况决定采用AT89S51为51内核显示设计方案213系统设计思路与步骤先进行系统的整体规划确定整个系统的功能然后按照每个功能的具体要求进行各个模块的实物设计并逐个调试待全部通过后进行整个系统的联调最终实现一个完整的系统并制成印刷线路板整个系统的设计步骤如下在单片机最小系统的基础上完成按键电路和复位电路的设计完成显示电路数字按键复位电路具有3个功能按键在复位后的待机状态下用于启动设定时间参数对时或定闹在设定时间参数状态而且不是设定最低位即分个位的状态下用于结束当前位的设定当前设定位下移 3在设定最低位分个位的状态下用于结束本次时间设定2 键用于对当前设定位编辑位进行加1操作根据1224小时工作模式和正在编辑的当前位的含义时十位时个位分十位分个位自动进行数据的上限和下限判断例如对12小时制小时的十位只能是01如果当前值为0则按1键后为1再按1键则又回复到0把以上各个模块联结起来整体调试功能整个系统的原理框图如图2-1所示 图2-1 整个系统的原理图22芯片基本工作原理及其应用221 AT89S51简介AT89S51是一个低功耗高性能CMOS 8位单片机片内含4k Bytes ISP In-system programmable 的可反复擦写1000次的Flash只读程序存储器器件采用ATMEL公司的高密度非易失性存储技术制造兼容标准MCS-51指令系统及80C51引脚结构芯片内集成了通用8位中央处理器和ISP Flash存储单元功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案222引脚介绍 AT89S51具有如下特点40个引脚4k Bytes Flash片内程序存储器128 bytes的随机存取数据存储器RAM32个外部双向输入输出IO口5个中断优先级2层中断嵌套中断2个16位可编程定时计数器2个全双工串行通信口看门狗WDT电路片内时钟振荡器图2-2 引脚图 此外AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式空闲模式下CPU暂停工作而RAM定时计数器串行口外中断系统可继续工作掉电模式冻结振荡器而保存RAM的数据停止芯片其它功能直至外中断激活或硬件复位同时该芯片还具有PDIPTQFP和PLCC等三种封装形式以适应不同产品的需求 主要功能特性兼容MCS-51指令系统32个双向IO口2个16位可编程定时计数器全双工UART串行中断口线2个外部中断源中断唤醒省电模式看门狗WDT电路灵活的ISP字节和分页编程4k可反复擦写 1000次ISP Flash ROM45-55V工作电压时钟频率0-33MHz128x8bit内部RAM低功耗空闲和省电模式3级加密位软件设置空闲和省电功能双数据寄存器指针223电源89S51有很宽的工作电源电压电源范围宽达455V224存储器89S51支持ISP在线可编程写入技术串行写入速度更快稳定性更好烧写电压也仅仅需要45V即可225应用就目前中国市场的情况来看89S51有很大的市场其原因有下列几点1AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式2AT89S51是一个低功耗高性能CMOS 8位单片机3芯片内集成了通用8位中央处理器和ISP Flash存储单元功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案4同时该芯片还具有PDIPTQFP和PLCC等三种封装形式以适应不同产品的需求23 LM386简介LM386是美国国家半导体公司生产的音频功率放大器主要应用于低电压消费类产品为使外围元件最少电压增益内置为20但在1脚和8脚之间增加一只外接电阻和电容便可将电压增益调为任意值直至200输入端以地位参考同时输出端被自动偏置到电源电压的一半在6V电源电压下它的静态功耗仅为 24mW使得LM386特别适用于电池供电的场合专为低损耗电源所设计的功率放大器231LM386介绍LM386适用于电脑仪器汽车电子电源通信开关电源等电子产品232LM386特点静态功耗低约为4mA可用于电池供电 工作电压范围宽4-12V or 5-18V 外围元件少 电压增益可调20-200 低失真度24 74HC245简介 由于通过数码管公共及的电流较大因此用三极管来驱动位码为了避免过多地使用分立元件采用了一片74HC245来驱动段码第三章 系统的设计一个完整的系统离不开硬件和软件的设计硬件与软件各有所长如何合理的安排软硬件的任务是系统设计的第一步31系统硬件设计系统硬件的设计可以根据系统的各个功能把整个系统划分成若干个模块分别对这些模块来进行设计然后在通过单片机程序来实现对各个硬件模块功能的调度本系统涉及到的硬件模块有按键电路复位电路显示电路311单片机系统的设计 单片机最小应用系统实际上就是一个内置程序存储器的单片机可由单片机芯片配以必要的外部器件构成这些外部功能器件无法集成到芯片内部主要有按键电路显示电路等 图3-1 单片机系统图312 按键电路的设计作为一个按键从没有按下到按下以及释放是一个完整的过程也就是说当我们按下一个按键时总希望某个命令只执行一次而在按下的过程中不要有干扰进来因为在按下的过程中一旦有干扰过来可能造成误触发过程因此我们在设计按键电路的时候应注意不要有干扰进来以用在焊接时应注意独立式按键如果设置过多按键将会占用较多IO口而且会给布线带来不便因此此方案适用于按键较少的情况如果选择此方案由于按键较少在修改时间或设置闹铃时间时就不能直接输入只能通过加或减完成稍为麻烦一些但其程序简单1执锡补焊时应按照从左到右由上到下的顺序避免检查时漏检或焊接时漏修2焊接时要经常清洗烙铁头防止烙铁头的杂物造成虚焊针孔加焊等不良发生3不要在基板上给烙铁头加焊锡生产过程中不能抖锡敲锡甩锡防止焊锡渣焊锡珠掉到基板上面4在压件或拆件时要先在线路板的铜箔面上加焊锡要求均匀加热避免松香失效或铜箔翘皮造成线路破坏考虑到电路不要复杂性因而设计成3个按键一个为复位其它2个为按数字时间的按键和确定设好的时间确定后2个按键要接89C2051端若想设置闹铃应先按下复位按键然后长时间按下设置按键第一个数码管会显示C然后变为00-00-00此时进入闹铃设置状态设置方法跟上面一样闹铃设置完后下一步要设置当前时间调整方法跳到第一步在复位后的待机状态下用于启动设定时间参数对时或定闹在设定时间参数状态而且不是设定最低位即分个位的状态下用于结束当前位的设定当前设定位下移在设定最低位分个位的状态下用于结束本次时间设定2 键用于对当前设定位编辑位进行加1操作根据1224小时工作模式和正在编辑的当前位的含义时十位时个位分十位分个位自动进行数据的上限和下限判断例如对12小时制小时的十位只能是01如果当前值为0则按1键后为1再按1键则又回复到0313复位电路的设计目前为止单片机复位电路主要有四种类型1微分型复位电路2积分型复位电路3比较器型复位电路4看门狗型复位电路另外im等公司也推出了专用于复位的专用芯片复位电路的基本功能是系统上电时提供复位信号直至系统电源稳定后撤销复位信号为可靠起见电源稳定后还要经一定的延时才撤销复位信号以防电源开关或电源插头分-合过程中引起的抖动而影响复位当输入的复位信号延续两个机器周期以上的高电平时即为有效用完成单片机的复位初始化操作单片机目前已被广泛地应用于家电医疗仪器仪表工业自动化航空航天等领域市场上比较流行的单片机种类主要有Intel公司Atmel公司和Philip公司的8051系列单片机Motorola公司的M6800系列单片机Intel公司的MCS96系列单片机以及Microchip公司的PIC系列单片机无论用户使用哪种类型的单片机总要涉及到单片机复位电路的设计而单片机复位电路设计的好坏直接影响到整个系统工作的可靠性许多用户在设计完单片机系统并在实验室调试成功后在现场却出现了死机程序走飞等现象这主要是单片机的复位电路设计不可靠引起的图1是一个单片机与大功率LED八段显示器共享一个电源并采用微分复位电路的实例在这种情况下系统有时会出现一些不可预料的现象如无规律可循的死机程序走飞等而用仿真器调试时却无此现象发生或极少发生此现象又如图2所示在此图中单片机复位采用另外一种复位电路在此电路的应用中用户有时会发现在关闭电源后的短时间内再次开启电源单片机可能会工作不正常这些现象都可认为是由于单片机复位电路的设计不当引起的图3-2 复位电路图314显示电路的设计就时钟而言通常可采用液晶显示或数码管显示由于一般的段式液晶屏需要专门的驱动电路而且液晶显示作为一种被动显示可视性相对较差对于具有驱动电路和微处理器接口的液晶显示模块字符或点阵一般多采用并行接口对微处理器的接口要求较高占用资源多另外89C2051本身无专门的液晶驱动接口因此本时钟采用数码管显示方式数码管作为一种主动显示器件具有亮度高价格便宜等优点而且市场上也有专门的时钟显示组合数码管基于AT89S51单片机的控制系统包括四部分数据采集控制系统时钟电路语音录音电路和报音提示信息电路用数码管作为显示器数码管的驱动电路简单使用方便如果选择了此方案那么在夜间看时间的时候就不需要有光源非常方便其缺点是功耗较大由于数码管使用起来较为方便在夜间看时间也很方便因此我们选择了数码管作为显示器发音部分 用软件方法产生方波输出通过三极管放大后驱动蜂鸣器发音这样就可以省去硬件振荡电路降低成本32系统软件的设计系统软件的设计方法与硬件设计的方法是相同的也是根据系统的各个功能划分成各个子模块分别对每个模块来进行设计然后在通过各个模块之间的调用来实现整个系统的功能系统软件部分的设计模块有按键电路的软件设计复位电路的软件设计显示电路的软件设计共3个模块 发音部分用软件方法产生方波输出通过三极管放大后驱动蜂鸣器发音这样就可以省去硬件振荡电路降低成本 电源如果是用电池供电就比较方便携带但是本系统采用了数码管作为显示器功耗较大需要经常更换电池况且本系统的体积较大即使使用电池供电也不能随身携带因此用电池供电不大合适所以用外部稳压电源来供电321软件设计软件功能1检测按键当系统检测到某个案件被按下时转到相应子程序处理可实现校时设定闹铃时间的功能 2 显示系统通过调用显示子程序可将显示缓冲区里的内容通过动态扫描方式输出到数码管显示器 3 计时系统通过中断和软件计数器可产生秒信号每到1s系统将会调整时间存储单元的内容从而实现计时功能 4 比较每当秒存储单元的内容为0时系统通过调用比较子程序可判断当前时间是否符合闹铃条件若符合则调用发音子程序使蜂鸣器发出闹铃声音 5 产生音频方波输出系统通过软件产生音频方波输出使蜂鸣器发声这样可以省去硬件振荡电路 6 拆分为了提高存储单元的利用率本系统将时间数据压缩成压缩BCD码后再送入显存才能显示 7 合并为了提高修改时间的速度可先对现存内容逐位修改然后调用合并子程序把显存内容合并后送入指定存储单元 8 设定系统进入设定状态后可通过按设定键改变闪亮位位置和按或-键来加1或减1闪亮位内容从而达到报时和设定闹铃时间的目的 软件设计 图 T0中断服务程序流程图 电路流程图系统功能及使用方法 系统上电后自动进入时钟状态若在此时按下设定键显示器上将出现闪亮位再按或-则可以加或减闪亮位内容修改完一位后再按设定可改变闪亮位位置继续修改下一位修改完成后按确定键即可退出设定状态进入正常显示时钟状态 在正常显示时钟状态时按下闹钟键可进入闹钟状态此时按或-可上下翻动闹钟表按设定键可修改当前显示的闹钟时间修改方法与修改时钟相同在查看闹钟表状态下按闹钟键可以开关当前显示的闹钟时间当显示器第5位显示-时表示闹铃已开按时钟键返回正常显示时钟状态若想设置闹铃应先按下复位按键然后长时间按下设置按键第一个数码管会显示C然后变为00-00-00此时进入闹铃设置状态设置方法跟上面一样闹铃设置完后下一步要设置当前时间调整方法跳到第一步这样设置好后她就能按照主人的意思定时的把你闹醒啦 我们先了解简易闹钟的设计方法并自己动手设计电路和编写实现闹钟功能的程序简易闹钟要实现以下功能1能正确显示闹钟的走时2可以进行当前时间的设置3可以设置闹钟时间并在时间到时发出响声 设计中我们利用仪器中所提供的以上提到的芯片和软件编程结合的思路本设计的软件编程由四部分构成下面将对照程序的构成来阐述我们组对简易闹钟的方案设计具体设计方案如下一在主程序中填写中断向量表应用8255A的IRQ7和IRQ5端利用8253A和8259A完成计时一秒的功能然后通过更新时间的子程序完成时间跳变的功能待到新的时间判断是否到达设定的闹钟的时间如果是则启动扬声器如果否则继续进行显示时间二闹钟的时间是变化的在更新时间的子程序中首先判断更改后的秒数是否小于10如果是则返回主程序如果否则秒的个位跳变成0秒的十位加一再次判断秒的十位过程同判断秒的个位相同三简易闹钟最重要的功能就是Its time to do something在这部分主要要考虑的也是判断当前时间是不是设定的闹钟时间如果跳变后的时间的四位完完全全的和设定的闹钟时间相同则扬声器应该响起提示闹钟的主人Time is up从闹钟的分钟的十位开始依次判断如果前一个闹钟位的显示与设定的闹钟时间对应位相同则转入判断下一位如果不相同则返回主程序都判断后如果都相同则设置启动闹钟的对应位为1启动扬声器四在显示时间的子程序中时间从0000开始显示四位数字的显示各由一段程序完成322整个系统软件部分的总体设计在各个模块的软件设计完成后便可以对整个系统进行整体的软件设计其根本的设计思路是通过设置一些联系信号把原本功能独立的各个模块联结在一起从而实现整体系统的功能第四章 系统的调试和性能分析41系统的调试方法整个系统调试的主要思想是先每个模块进行调试然后整个系统一起调试先软硬件分开调试然后一起调试遵循先部分后整体的原则系统的在调试过程中要注意以下几点1硬件电路焊完之后在上电之前一定要先用万用表检测电源和地之间是否短路2上电之后要用示波器观察信号的在电路中变化的情况与设计当初的情况相比较找出差别并进行分析3软件调试过程中可以使用断点单步执行等常用的方法4软硬件联调时要注意软件部分要一个功能一个功能的调试411输入按键的调试输入按键的调试只要按键按下去时按键有相应的反应就行通过程序来判断单片机IO是否能够识别出412复位电路的调试当电源刚接通时接通电源就完成了系统的初始化413显示电路的调试在本设计中显示电路只需完成当输入数字时能正确显示数字414整个系统的联调在系统各个部分都调试完毕之后即可以进行整个系统的调试由于前面各个部分的调试做的都比较充分所以在实际调试过程中能够较顺利的实现整个系统预期的功能42系统的性能分析系统能在设定的时间内闹铃但声音有点沙哑这是因为控制蜂鸣器的IO口每次取反后必须调用一次显示子程序后才能再次取反否则在发音期间不能显示而调用一次显示子程序需要的时间大约为6ms6位每位1ms所以振荡频率f 1T 126ms83Hz显然这个频率过低这就是造成声音沙哑的原因经测试其时钟误差约为3秒天这是因为从定时器向CPU发出中断申请信号到重装定时初值的过程需要一定的时间 本系统通过测试能够实现以下功能1按键输入2闹铃声音3LED显示第五章 结论本次毕业设计我很早就开始准备并且先自己买器件动手制作因此能够较早的完成全部的设计任务通过本次设计使自己在单片机应用系统设计方面的能力有了长足进步本次毕业设计应用单片机电子闹钟的设计与制作作为一种智能化产品具有成本低使用方便可靠性高和可扩展性强的特点参考文献1李捷陈典涛等一种应用单片机电子闹钟的设计与制作设计J农机化研 究20052陈明荧8051单片机课程设计实训教材 北京清华大学出版社 20043胡汉才单片机原理及其接口技术 北京清华大学出版社 19954徐淑华 程退安 姚万生 单片机微型机原理及应用 哈尔滨工业大学出版社19945丁元杰单片机原理与应用机械工业出版社出版2003年2月58-67 6 朱定华单片机原理及接口技术电子工业出版社出版2004年5月32-46 7 何立民单片机应用系统设计系统配置与接口技术北京航空航天大学出版社出版2005年2月16-45 8 江晓安董秀峰模拟电子技术西安电子科技大学出版社2003年 9月46-110 9 陆坤电子设计技术 成都电子科技大学出版社1996年5月31-76附录2 原理图附录3 实物图附录4程序定义变量S1EQUP34按键JIAEQUP35SECLEQU24H各个显示单元SECHEQU25HHENGXIANEQU26HMINULEQU27HMINUHEQU28HHENGEQU29HHOURLEQU2AHHOURHEQU2BHSECONDEQU2DH秒变量单位COUNTEQU2EH溢出中断计数器SETFLAGEQU20HHHEQU00H移位时用到的单元HLEQU01HMHEQU02HMLEQU03HWARNSLEQU2FHWARNSHEQU30HWARNMLEQU32H报警分低位WARNMHEQU33H报警分高位WARNHLEQU35H报警时低位WARNHHEQU36H报警时高位WARNCNTEQU37H已设定闹铃时间标志WARNINGBIT0CH闹铃标志WARNSETTEDBIT0DH已设定闹铃时间标志误差修正TFIXBIT0EH开始修正标志NEQU60误差值单位110s默认为0即不修正程序入口地址 ORG0000H LJMPMAIN ORG000BH定时器T0溢出中断入口 LJMPTIMER0 ORG0030H主程序MAINMOVSP60H堆栈设置CLRTFIX误差开始修正标志初始化MOVCOUNT0LCALLSYS_INIT系统初始化LCALLT0_INIT定时器初始化LCALLSETTIME等待设置当前时间MAIN_0MOVIE80H设置完后开始走时启动定时器T0SETBTR0允许T0溢出中断LCALLDELAY10MSLCALLDISPLAY1系统初始化子程序SYS_INITMOVIE00H关中断MOVR020清变量MOVR110HMOVA00HSYS_0MOVR0AINCR0DJNZR1SYS_0RET定时器串口初始化T0_INITMOVTMOD01HMOVTH03CHMOVTL00B0HRET闹铃时间设定SETWARNMOVWARNHH0MOVWARNHL0MOVWARNMH0MOVWARNML0MOVWARNSH0MOVWARNSL0MOVSETFLAG00SETBHHKAISHI_NAOLCALLDISPLAYNEW1SETW_1JBS1LOOP3LCALLDELAY10MSJBS1LOOP3JNBS1JBMLLOOPW1MOVASETFLAG RLA 当前位右移 l 位标志左移 1 位 MOV SETFLAGA 回存SJMP SET_W2LOOP3LJMPSET_W2LOOPW1LJMPKAISHI1SET_W2LCALLDISPLAYNEW1JBJIASETW_1LCALLDELAY10MSJBJIASETW_1JNBJIAJNBHHSHI_W2为真则当前位灭INCWARNHHMOVAWARNHHXRLA3JZSET_W1_1LJMPKAISHI_NAOSET_W1_1MOVWARNHH0LJMPKAISHI_NAOSHI_W2JNBHLFEN_W1INCWARNHLMOVAWARNHHCJNEA2SHI_W2_1MOVAWARNHLXRLA05H小时低位只能是0-4JZSET_W21LJMPKAISHI_NAOSHI_W2_1MOVAWARNHLXRLA0AHJZSET_W21LJMPKAISHI_NAO SET_W21MOVWARNHL0LJMPKAISHI_NAOFEN_W1JNBMHFEN_W2INCWARNMHMOVAWARNMHXRLA6JZSET_W22LJMPKAISHI_NAOSET_W22MOVWARNMH0LJMPKAISHI_NAOFEN_W2INCWARNMLMOVAWARNMLXRLA0AHJZSET_W23LJMPKAISHI_NAOSET_W23MOVWARNML0LJMPKAISHI_NAO设置时间闹铃扫描DISPLAYNEW1MOVA0AHMOV31HAMOV34HAMOVR02FHMOVR30FEHPLAYNEW1MOVAR3MOVP2AMOVAR0MOVDPTRTABLEMOVCAADPTRMOVP0ALCALLDELAY1MSINCR0MOVAR3JNBACC7LOOP2RLAMOVR3ASJMPPLAYNEW1LOOP2RET时间调整SETTIMEMOVHOURH0MOVHOURL0MOVMINUH0计时无保存可能是闹铃没进去MOVMINUL0MOVSECH0MOVSECL0MOVSETFLAG00SETBHHPANLINGLCALLDISPLAYNEWJBS1PANLINGLCALLDELAY100MSLCALLDELAY100MSLCALLDELAY100MSLCALLDELAY100MSLCALLDELAY100MSJBS1KAISHI1LCALLDELAY10MSJNBS1SETC_1按住时间更长为设置闹铃第一个数码管显示为CSETNAOSETBWARNSETTEDLCALLSETWARNSETC_1LCALLSETCKAISHI1MOVHOURH0MOVHOURL0MOVMINUH0MOVMINUL0MOVSECH0MOVSECL0MOVSETFLAG00SETBHHKAISHILCALLDISPLAYNEWSET_1JBS1SET_2LCALLDELAY10MSJBS1SET_2JNBS1JBMLLOOP1MOVASETFLAG RLA 当前位右移 l 位标志左移 1 位 MOV SETFLAGA 回存SJMP SET_2LOOP1LJMPMAIN_0SET_2LCALLDISPLAYNEWJBJIASET_1LCALLDELAY10MSJBJIASET_1JNBJIAJNBHHSHI_2为真则当前位灭INCHOURHMOVAHOURHXRLA3JZSET_1_1LJMPKAISHISET_1_1MOVHOURH0LJMPKAISHISHI_2JNBHLFEN_1INCHOURLMOVAHOURHCJNEA2SHI_2_1MOVAHOURLXRLA05H小时低位只能是0-4JZSET_21LJMPKAISHISHI_2_1MOVAHOURLXRLA0AHJZSET_21LJMPKAISHI SET_21MOVHOURL0LJMPKAISHIFEN_1JNBMHFEN_2INCMINUHMOVAMINUHXRLA6JZSET_22LJMPKAISHISET_22MOVMINUH0LJMPKAISHIFEN_2INCMINULMOVAMINULXRLA0AHJZSET_23LJMPKAISHISET_23MOVMINUL0LJMPKAISHI闹铃标志SETCMOVP27FHMOVP039HJNBS1SETCLJMPSETNAO设置时间扫描DISPLAYNEWMOVA0AHMOV29HAMOV26HAMOVR024HMOVR30FEHPLAYNEWMOVAR3MOVP2AMOVAR0MOVDPTRTABLEMOVCAADPTRMOVP0ALCALLDELAY1MSINCR0MOVAR3JNBACC7LOOPRLAMOVR3ASJMPPLAYNEWLOOPRET走时扫描DISPLAY1MOVA0AHMOV29HAMOV26HAMOVR024HMOVR40FEHJNBP34BAOHULCALLDELAY5PLAYJNBWARNINGLINGJNBP35QINGLING CPLP10LJMPLINGLCALLDELAY10MSLCALLDELAY10MSQINGLINGCLRWARNINGLINGLCALLDELAY10MSLCALLDELAY5MSJNBP34BAOHUMOVAR4MOVP2AMOVAR0MOVDPTRTABLEMOVCAADPTRMOVP0ALCALLDELAY2MSINCR0MOVAR4JNBACC7DISPLAY1RLAMOVR4ASJMPPLAYBAOHUMOVP20FFHLCALLDELAY100MSLCALLDELAY100MSLCALLDELAY100MSBAOHU1JNBWARNINGBAOHU2LJMPLINGBAOHU2JNBP34PLAY1BAOHUJNBP34PLAYLCALLDELAY10MSJBP34LCALLDELAY10MSJBP34PLAYLJMPBAOHU1PLAY1LCALLDELAY10MSLCALLDELAY10MSLCALLDELAY10MSLCALLDELAY10MSJBP34PLAYLJMPBAOHU1计时TIMER0PUSHACCA压栈保护MOVTH03CH100MS定时常数MOVTL00B0HINC

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论