[工学]微机接口电子时钟课程设计 网络整理.doc
《[工学]微机接口电子时钟课程设计 网络整理.doc》由会员分享,可在线阅读,更多相关《[工学]微机接口电子时钟课程设计 网络整理.doc(39页珍藏版)》请在三一办公上搜索。
1、代码硬件连线:8254硬件连线: 片选CS300H A0A2 A1A3 T0:GATE0+5V CLK047KHZ OUT0IR0 T1:GATE1PC0 CLK1OUT2 OUT1蜂鸣器 8255硬件连线:CS_1CS1CS_2CS2CS_3CS3CS_4CS4PC0GATE18259硬件连线: CS23A0H INT2INTR SP/2+5V INT_AINTA IRQ08254的OUT074系列模块硬件连线: Q_0Q0 Q_1Q1 Q_2Q2 Q_3Q3 P_0P0 P_1P1 P_2P2 CS1340H CS2360H 程序代码段:.486pdata segment at 0 use
2、16 ORG 1000h HOUR db ? MINUTE db ? SECOND db ? STOP db ? COUNT DB 0 HHOUR DB ? MMINUTE DB ? SSECOND DB ?data endscode segment use16 assume cs:code,ds:data org 1500hBEG: jmp startTAB1 db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h,0a1h,86h,8eh,8ch,0c1h,91h,7fh,0ffhTAB2 db 3fh,06h,5bh,4f
3、h,66h,6dh,7dh,07h,7fh,6fhKEYCOD db 0eeh,0deh,0beh,0edh,0ddh,0bdh,0ebh,0dbh,0bbh,0e7h,0d7h,0b7hKEYVAL db 0,1,2,3,4,5,6,7,8,9,0ah,0bhstart: mov eax,60000000h mov cr0,eax mov ax,code mov ds,ax CLI MOV BYTE PTR HOUR ,23 MOV BYTE PTR MINUTE,59 MOV BYTE PTR SECOND,50 MOV BYTE PTR STOP,0;8255初始化 MOV EAX,0A
4、0A0A0AH MOV DX,208H OUT DX,EAX ;8254初始化 MOV DX,30CH MOV AL,34H ;计数器0,16位,方式2,2进制 OUT DX,AL MOV DX,300H MOV AX,1175 ;计数器0初值为25ms*47KHZ OUT DX,AL MOV AL,AH OUT DX,AL MOV DX,30CH MOV AL,54H ;计数器1,8位,方式2,2进制 OUT DX,AL MOV DX,304H MOV AX,40 ;计数器1初值为40,25ms*40=1s OUT DX,AL ;8259初始化 偶地址:3A0H 奇地址:3A8H MOV D
5、X,3A0H ;写ICW1,写入偶地址 MOV AL,13H OUT DX,AL MOV DX,3A8H ;写ICW2,写入奇地址 MOV AL,08H ;IR0的中断类型号为08H OUT DX,AL MOV DX,3A8H ;写ICW4,写入奇地址 MOV AL,05H ;主片,8259工作在80X86中 OUT DX,AL ;设置8259中断向量 MOV AX,OFFSET INTER MOV BX,20H ;08H*4 MOV BX,AX MOV AX,SEG INTER MOV BX+2,AX ;开放IRQ0 MOV DX,3A8H MOV AL,11111110B ;开放IRQ0
6、OUT DX,AL ;判断G键或S键是否按下G: STI NOP CALL INPUT CALL DELAY CMP AL,0D7H ;判断G键是否按下,若按下同时设置闹铃时间 JNZ S NOT STOP CALL INPUT CALL DELAY CALL ALARM ;设定闹铃子程序 JMP GS: CMP AL,0B7H JNZ G MOV STOP,0FFH ;设置时间 ;设置小时 MOV CX,2 JMP H1 H2: CMP AL,SI JZ H3 INC SI INC DI LOOP H2 POP CX JMP H1 H3: POP CX MOV AL,DI ;AL中内容为所按
7、键的键面值 CMP CX,2 JNZ H4;CX=2设置十位,否则设置个位 CMP AL,2 JA H1 PUSH AX PUSH BX MOV DX,208H IN AL,DX MOV BL,AL AND BL,0FCH AND AL,03H NOT AL AND AL,BL ADD AL,01H OUT DX,AL POP BX POP AX MOV AH,AL LEA BX,TAB1 ;查找七段代码值 XLAT MOV DX,200H ;送数码管时的十位 OUT DX,AL MOV DL,AH MOV AL,10 MUL DL MOV HOUR,AL CALL DELAY JMP H6H
8、1: PUSH CX CALL INPUT CALL DELAY LEA SI,KEYCOD LEA DI,KEYVAL MOV CX,12 JMP H2 H4: CALL DELAY PUSH AX PUSH BX MOV DX,208H IN AL,DX MOV BL,AL AND BL,0F3H AND AL,0CH NOT AL AND AL,BL ADD AL,04H OUT DX,AL POP BX POP AX CMP DL,2 JNZ H5 CMP AL,4 JA H1H5: MOV AH,AL LEA BX,TAB1 XLAT MOV DX,204H ;送数码管时的个位 OU
9、T DX,AL ADD HOUR,AH CALL DELAY H6: LOOP H1 ;设置分钟 MOV CX,2 JMP M1 M2: CMP AL,SI JZ M3 INC SI INC DI LOOP M2 POP CX JMP M1 M3: POP CX MOV AL,DI ;AL中内容为所按键的键面值 CMP CX,2 JNZ M4 ;CX=2设置十位,否则设置个位 CMP AL,5 JA M1 PUSH AX PUSH BX MOV DX,209H IN AL,DX MOV BL,AL AND BL,0FCH AND AL,03H NOT AL AND AL,BL ADD AL,0
10、1H OUT DX,AL POP BX POP AX MOV AH,AL LEA BX,TAB1 ;查找七段代码值 XLAT MOV DX,201H ;送数码管分的十位 OUT DX,AL MOV DL,AH MOV AL,10 MUL DL MOV MINUTE,AL CALL DELAY JMP M6M1: PUSH CX CALL INPUT CALL DELAY LEA SI,KEYCOD LEA DI,KEYVAL MOV CX,12 JMP M2 M4: CALL DELAY PUSH AX PUSH BX MOV DX,209H IN AL,DX MOV BL,AL AND BL
11、,0F3H AND AL,0CH NOT AL AND AL,BL ADD AL,04H OUT DX,AL POP BX POP AX CMP DL,5 JNZ M5 CMP AL,9 JA M1M5: MOV AH,AL LEA BX,TAB1 XLAT MOV DX,205H ;送数码管分的个位 OUT DX,AL ADD MINUTE,AH CALL DELAY M6: LOOP M1 ;设置秒钟 MOV CX,2 JMP S1 S2: CMP AL,SI JZ S3 INC SI INC DI LOOP S2 POP CX JMP S1 S3: POP CX MOV AL,DI ;A
12、L中内容为所按键的键面值 CMP CX,2 JNZ S4 ;CX=2设置十位,否则设置个位 CMP AL,5 JA S1 PUSH AX PUSH BX MOV DX,20AH IN AL,DX MOV BL,AL AND BL,0FCH AND AL,03H NOT AL AND AL,BL ADD AL,01H OUT DX,AL POP BX POP AX MOV AH,AL LEA BX,TAB1 ;查找七段代码值 XLAT MOV DX,202H ;送数码管秒的十位 OUT DX,AL MOV DL,AH MOV AL,10 MUL DL MOV SECOND,AL CALL DEL
13、AY JMP S6S1: PUSH CX CALL INPUT CALL DELAY LEA SI,KEYCOD LEA DI,KEYVAL MOV CX,12 JMP S2S4: CALL DELAY PUSH AX PUSH BX MOV DX,20AH IN AL,DX MOV BL,AL AND BL,0F3H AND AL,0CH NOT AL AND AL,BL ADD AL,04H OUT DX,AL POP BX POP AX CMP DL,5 JNZ S5 CMP AL,9 JA S1S5: MOV AH,AL LEA BX,TAB1 XLAT MOV DX,206H ;送数
14、码管秒的个位 OUT DX,AL ADD SECOND,AH CALL DELAYS6: LOOP S1 MOV DX,208H MOV EAX,0A0A0A0AH OUT DX,EAX MOV STOP,0 JMP G ;行扫描法读取键入值INPUT PROC PUSH BX PUSH DX WT: MOV AL,00H MOV DX,360H OUT DX,AL NOP NOP MOV DX,360H IN AL,DX AND AL,0FH CMP AL,0FH JZ WT ;al全为0,说明无键按下 NOP NOP MOV DX,360H ;再次确认是否有键按下 IN AL,DX AND
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 工学 工学微机接口电子时钟课程设计 网络整理 微机 接口 电子 时钟 课程设计 网络 整理

链接地址:https://www.31ppt.com/p-4532895.html