第11章习题答案 习题:3、6 11-3答案 三角波 BEGIN:MOV AL,OH UP:OUT 220H,AL INC AC CMP AL,OFFH JNZ UP DEC AL DOWN:OUT 220H,AL DEC AL CMP AL,OH JNZ DOWN JMP BEGIN 梯形波 BEGIN: MOV AL,3DH;开始1.2V,保持20ms OUT 220H,AL CALL DELAY 20ms UP:INC AL :上升至4V OUT 220H,AL CMP AL,OCCH JNZ UP CALL DELAY20ms:保持4V,20ms DOWN:DEC AL :下降至1.2V OUT 220H,AL CMP AL,3DH JNZ DOWN JMP BEGIN :重新开始
第 11 章习题答案 习题:3、6 11-3 答案 三角波 BEGIN:MOV AL,0H UP:OUT 220H,AL INC AC CMP AL,0FFH JNZ UP DEC AL DOWN:OUT 220H,AL DEC AL CMP AL,0H JNZ DOWN JMP BEGIN 梯形波 BEGIN:MOV AL,3DH ;开始 1.2 V,保持 20ms OUT 220H, AL CALL DELAY_20ms UP:INC AL ;上升至 4V OUT 220H,AL CMP AL, 0CCH JNZ UP CALL DELAY_20ms ;保持 4V,20ms DOWN:DEC AL ;下降至 1.2V OUT 220H, AL CMP AL, 3DH JNZ DOWN JMP BEGIN ;重新开始
11-6答案 (1) +5V REF(+)REF(-) PAT IN P1 系统总线 ADC PAo Do 0809 8255A OE PC1 N EOC START PC3 ALE Vcc -o+5V B A CLK GND CLK ÷8 (2)8255地址:3C0H3C3H A口方式0,输入方式 C口高4位输入,低4位输出 8255A▣3C0H C口3C2H 控制字3C3H AD SUB PROC NEAR ;8255初始化 MOV DX,03C3H MOV AL, 10011XX0B OUT DX,,AL MOV CX,8 CLD MOV BL,00H LEA DI,DATA BUF NEXT IN: MOV DX,3C2H MOV AL,BL OUT DX,AL MOV DX,3C3H
11-6 答案 (1) REF(+) REF(-) OE EOC START ALE C B A CLK GND 系统总线 IN7 IN0 ADC 0809 VCC D7 D0 PA7 PA0 PC7 PC3 PC2 PC1 PC0 +5V 8255A . . . . . . CLK ÷8 +5V (2)8255 地址:3C0H~3C3H A 口方式 0,输入方式 C 口高 4 位输入,低 4 位输出 8255 A 口 3C0H C 口 3C2H 控制字 3C3H AD_SUB PROC NEAR ;8255 初始化 MOV DX, 03C3H MOV AL, 10011XX0B OUT DX,, AL MOV CX, 8 CLD MOV BL, 00H LEA DI, DATA_BUF NEXT_IN: MOV DX, 3C2H MOV AL, BL OUT DX, AL MOV DX, 3C3H
MOV AL,0000111B;启动AD OUT DA,AL NOP NOP MOV AL, 0000110B OUT DX,AL MOV DX,3C2H NO CONV:IN AL,DX ;检查EOC为低电平 TEST AL,80H JNZ NO CONV NO EOC:IN AL,DX :检查EOC回到高电平 TEST AL,80H JZ NO EOC MOV DX,3C0H:转换结束,读结果 IN AL,DX STOS DATA BUF INC BL LOOP NEXT IN:下一次采样 AD SUB ENDP
MOV AL, 0000111B ;启动 AD OUT DA, AL NOP NOP MOV AL, 0000110B OUT DX, AL MOV DX, 3C2H NO_CONV:IN AL, DX ;检查 EOC 为低电平 TEST AL,80H JNZ NO_CONV NO_EOC: IN AL, DX ;检查 EOC 回到高电平 TEST AL,80H JZ NO_EOC MOV DX,3C0H ;转换结束,读结果 IN AL, DX STOS DATA_BUF INC BL LOOP NEXT_IN ;下一次采样 AD_SUB ENDP