6_voice.asm

来自「可作为接口实验的参考教材」· 汇编 代码 · 共 71 行

ASM
71
字号
;//*****************************************************
;文件名: Voice for 8088

;功能: 音频驱动实验

;接线: 用导线连接语音接口模块的VOICE到8255模块的PC0;
;      用导线连接CPU模块的200H到8255模块的CS_8255。
;//*****************************************************

PA8255    EQU 200H        ;8255PA口地址
PB8255    EQU 201H        ;8255PB口地址

PC8255    EQU 202H        ;8255PC口地址
PCTL8255  EQU 203H        ;8255控制口地址

CODE    SEGMENT
ASSUME  CS:CODE,DS:CODE
START:   
        PUSH    CS
        POP     DS                           
        MOV     DX,PCTL8255;设置8255口为输出口
        MOV     AL,80H
        OUT     DX,AL
BEGIN: 

        MOV     CX,020H
LOW:
        MOV     DX,PCTL8255        
        MOV     AL,00H     ;PC0:DIN 置“0”
       	OUT     DX,AL 
       	CALL    DELAY1
    
        MOV     DX,PCTL8255        
        MOV     AL,01H     ;PC0:DIN 置“1”
       	OUT     DX,AL 
       	CALL    DELAY1   
       	LOOP    LOW
        MOV     CX,030H       	
HIGH:	
        MOV     DX,PCTL8255        
        MOV     AL,00H     ;PC0:DIN 置“0”
       	OUT     DX,AL 
       	CALL    DELAY2
    
        MOV     DX,PCTL8255        
        MOV     AL,01H     ;PC0:DIN 置“1”
       	OUT     DX,AL 
       	CALL    DELAY2
       	LOOP    HIGH

       	JMP     BEGIN    	
       	
delay1   proc   near
         push   cx
         mov    cx,03FFh
         loop   $
         pop    cx
         ret
         delay1 endp
         
delay2   proc   near
         push   cx
         mov    cx,02FFh
         loop   $
         pop    cx
         ret
         delay2 endp         

	 	 CODE  ENDS
END      START    

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?