资源描述:
《日时钟运行硬件原理.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、3.38253-5/8254-2的应用举例本节内容日时钟稳定定时发声器补充应用举例章内容提要1.日时钟节内容提要章内容提要1)要求设计一个计一天时间的日计时器——日时钟2)分析3)设计硬件设计软件设计新计时单位的建立统计计时单位的计数单元新计时单位的建立返回周期为(计时单位)方法:利用8253的T0对系统提供的时钟定时采用方式3,初值取0OUT0输出方波的频率为24小时包含新计时单位的个数:统计计时单位的计数单元返回思路:在BIOS数据区设置两个字单元TIMER_LO(40H:6CH)和TIMER_
2、HI(40H:6EH)用T0输出的方波产生中断,在服务程序中对双字单元加1,若TIMER_HI=0018H且TIMER_LO=00B0H,说明已计满24小时,双字单元清0,再开始第二天的计时日时钟硬件设计返回主要由T/C(8253/8254)和中断控制器8259A构成8254+5VGATE0OUT0CLK0DQQCPPCLK2.3863632MHz状态=000总线控制器S0S1S28259AIR0INTD0~7INTAT=54.9msIRQ0中断号8CPUINTRD0~7S0S1S2日时钟运行硬件原
3、理日时钟软件设计返回主要功能双字单元加1软驱马达关闭时间控制调用定时报时中断1CH中断服务程序框图开中断保护现场双字单元加1到24小时?TIMER_OFL=1双字单元清0关闭软驱马达计数值减1减为0?马达状态清0关闭马达调用定时报时中断1CH发EOI命令恢复现场中断返回YNYN2.稳定定时节内容提要章内容提要1)要求实现5秒钟的稳定定时(不依赖于机器速度)2)分析3)设计(只涉及软件)思路软中断INT1AH的0号功能日时钟的计时单位是稳定的,双字单元的内容若增加了91,就说明5s到了读取日时钟双字单
4、元的内容TIMER_HICX;TIMER_LODX稳定定时软件设计返回缺点:占用CPU时间MOVAH,0INT1AHADDDX,91MOVBX,DXDLY:MOVAH,0INT1AHCMPDX,BXJNZDLY;5秒钟到限1小时之内3.发声器节内容提要章内容提要1)要求2)分析3)设计利用8253发600Hz的声音,按任意键开始发声,长/短音交替,按ESC键停止8253的T2的输入时钟频率1.1931816MHz硬件设计:系统板上8253的地址40H~43H软件设计:由主程序和发声子程序组成发声
5、器分析返回发声控制包括:声音频率:由初值控制N=1.19106/6001983声音开关:由8255的PB口控制,PB0=PB1=1,开;PB0=0或PB1=0,关声音长短:由开放声音的延时时间控制,BL作延时子程序入口参数,BL=1,短音;BL=6,长音发声器硬件设计返回CLK2GATE2OUT2PB1PB08255A&滤波功放82531.19MHz发声器硬件原理图发声器软件设计返回INT21H的0BH号功能调用8255A的PB口地址为61H说明:AL=00H:无键按下;AL=FFH:有键按下,再
6、用8号调用取得该键的ASCII码主程序流程图发声子程序发声器主程序流程图返回8253初始化关闭扬声器关闭扬声器按任意键?发长音(BL=6)调发声子程序发短音(BL=1)调发声子程序按ESC键?结束开始NYNY发声器主程序发声器主程序返回CODESEGMENTASSUMECS:CODEORG100HBEGIN:MOVAL,0B6H;8253方式字OUT43H,ALMOVAX,1983;8253初值OUT42H,ALMOVAL,AHOUT42H,ALINAL,61HANDAL,0FCHOUT61H,AL
7、;关声音(PB0=PB1=0)WAIT:MOVAH,0BHINT21HCMPAL,0JZWAIT;无键按下,等待LONG:MOVBL,6CALLSOUND;发长音MOVAH,0BHINT21HCMPAL,0JESHORT;无按键发短音MOVAH,8INT21HCMPAL,27JNESHORT;非ESC,发短音EXIT:MOVAH,4CHINT21H;按ESC,结束SHORT:MOVBL,1CALLSOUND;发短音JMPLONG;转去发长音能否用8号调用能否用8号调用发声器发声子程序返回SOUNDP
8、ROCNEARINAL,61HORAL,03HOUT61H,AL;开放声音(PB0=PB1=1)SUBCX,CXDLY:LOOPDLYDECBL;延时,由(BL)决定时间JNZDLY;长短,即发声的长短INAL,61HANDAL,0FCHOUT61H,AL;关闭声音(PB0=PB1=0)RETSOUNDENDPCODEENDSENDBEGIN此处能否不关声音节内容提要章内容提要只利用频率为2MHz的时钟信号和一片8253,产生周期为20s的方波,如何实现??初值:超出