接口实验教程--教师 联系客服

发布时间 : 星期一 文章接口实验教程--教师更新完毕开始阅读6a4086927f1922791688e8a2

2

CODE SEGMENT ASSUME CS:CODE MAIN:MOV DX,

MOV AL,00110111B

OUT DX,AL;通道0,方式3,BCD码计数 MOV DX, MOV AL,00H OUT DX,AL MOV DX, MOV AL,50H

OUT DX,AL;5000分频,输出为周期1ms的方波

MOV DX,

MOV AL,10110111B

OUT DX,AL;通道2,方式3,BCD码计数 MOV DX, MOV AL,00H OUT DX,AL MOV DX, MOV AL,10H

OUT DX,AL;1000分频,输出为周期1s的方波

MOV DX,

MOV AL,10110101B

OUT DX,AL;通道2,方式2,BCD码计数 MOV DX, MOV AL,10H OUT DX,AL MOV DX, MOV AL,00H

OUT DX,AL;10分频,输出为周期10s,占空比为1:10的方波

CODE ENDS

END MAIN

五、实验结果

1. 如果需要更长的定时时间,则有何解决方法?

2. 编写一段程序,使8253输出占空比为3:12的波形。

3. 任意调节脉宽,并利用PWM原理控制直流电机的转速和转

向。

实验十 8253控制扬声器+中断

一、实验目的

利用8253、8259的组合设计一个扬声器控制系统,产生1 2 3 4 5 6 7(多来咪….)音阶,进而能够实现各种乐曲。 二、实验内容

利用8253产生方波,经驱动电路电流放大后驱动扬声器;利用8253的另一个计数器,产生一拍定时;利用8259实现中断。 三、实验线路

译码电路同以前的实验,8253单元的CS与Y1相连,8259单元的CS与Y0相连,GATE0、2接+5V,CLK0接393分频单元的T2~6(其频率值参考8253定时器/计数器实验),将OUT0与与扬声器驱动电路相连,OUT2与8259单元的IR7相连。 四、实验程序

CODE SEGMENT

ASSUME CS:CODE,DS:CODE,ES:CODE ORG 3400H H8: JMP P8259 Port0 EQU 0FFE0H Port1 EQU 0FFE1H

TABLE DW 1170H,1043H,929H,877H,781H,696H,620H

;525Hz, 589Hz, 661Hz, 700Hz, 786Hz, 882Hz, 990Hz ;-------------------初始化------------------- P8259: CLI

MOV AX,OFFSET INT8259 MOV BX,003CH MOV [BX],AX MOV BX,003EH MOV AX,0000H MOV [BX],AX CALL FOR8259 ; mov si,0000h ;

;I8255: MOV DX,0FFDBH ; MOV AL,88H ; OUT DX,AL ; MOV BL,00H ;

P8253: MOV DX,0FFEBH MOV AL,36H OUT DX,AL

MOV DX,0FFE8H MOV AL,00H OUT DX,AL MOV AL,50H OUT DX,AL mov dx,0ffebh

MOV AL,10110111B OUT DX,AL

MOV DX,0FFEAH MOV AL, 00H OUT DX,AL MOV AL,10H OUT DX,AL

MOV SI, OFFSET TABLE MOV BX,0 STI again: jmp again

;------------------------------------ INT8259:cli

MOV DX,0FFEAH MOV AX,[BX+SI] OUT DX,AL MOV AL,AH OUT DX,AL INC BX INC BX CMP BX,14 JNZ C1 MOV BX, 0 C1: MOV AL,20H MOV DX,Port0 OUT DX,AL STI IRET

;============================== FOR8259:MOV AL,13H MOV DX,Port0 OUT DX,AL MOV AL,08H MOV DX,Port1 OUT DX,AL MOV AL,09H OUT DX,AL

MOV AL,7FH ;IRQ7 OUT DX,AL

RET CODE ENDS END H8

五、习题与思考

1. 如何改变乐曲的音调及拍节长短? 2. 编一段乐曲并实现。

实验十一 控制直流电机+8255A

82531. 实验目的

学习如何利用所学的可编程芯片设计出一个小型直流电机控制系统。

2. 实验内容

采用8253生成任意占空比的波形,通过PWM(脉宽调制)方式控制直流电机的转速、转向,通过8255A控制电机的起、停。8253通道0、2的输出的波形为:周期为10ms,脉宽为1ms;通道1为: 方式2,计数初值为4(定时时间为4ms)。

3. 实验线路 4. 实验程序

CODE SEGMENT ASSUME CS:CODE MAIN:MOV DX,

MOV AL,00110101B

OUT DX,AL;通道0,方式2,BCD码计数 MOV DX,

MOV AL,01110010B

OUT DX,AL;通道1,方式1,二进制计数 MOV DX,

MOV AL,10110101B

OUT DX,AL;通道2,方式2,BCD码计数 MOV DX,

MOV AL,00001001B

OUT DX,AL;8255A PB口方式0输入 MOV DX,

LOOP0:IN AL,DX

CMP AL,01H;是否停止?

JNZ LOOP0;否 INT 20;是 CODE ENDS

END MAIN

六、 实验结果

实验六 8255A控制打印机