jmp L1
kb1 proc
mov ah,0feh kb2:mov al,ah
mov dx,rowport out dx,al;输出数据 mov dx,colport
in al,dx;读入PB口内容 or al,0f0h cmp al,0ffh jne num1 rol ah,1 jmp kb2 num1:ret kb1 endp
delay proc push cx
mov cx,8000h delay1:loop delay1 pop cx ret delay endp
disp proc push bx push dx
kb3: mov si,offset table mov di,offset char mov cx,16 kb4: cmp ax,[si] jz kb5 inc si inc si inc di loop kb4 kb5: mov al,[di] mov dx,led_cs
out dx,al;字形处理 mov al,01h inc dx
out dx,al;字位处理 pop dx
pop bx ret disp endp
CODE ENDS END START
1.4 实验数据及结果分析
完成了键盘按键在显示屏上的显示任务,可识别从0到F的各个数字及字母,做到了一一对应。
1.5 实验过程中遇到的问题,以及解决办法
遇到的问题:如何识别按键的位置
解决的方案:用table来记录各个按键的位置,由于table内部的数据是dw的,而字符是db的,所以当字符的偏移地址加一的时候,table的偏移地址加二,从而就可以完成一一对应的操作。
1.6 实验总结
熟悉了汇编语言和软件操作,也完成了键盘和显示屏的连接操作,完成了实验任务。但是代码部分还可以做适当的简略,逻辑部分还需要一定的考虑。
实验3 8位A/D转换实验
1.1 实验目的
掌握模/数信号转换的基本原理,掌握ADC0809芯片的查询方式使用方法。
1.2 实验原理、内容,接线图,程序流程图,必要时附上实验步骤和电路原理图。
从ADC0809通道0输入0--+5V可变电压,启动AD转换,使用查询方式读取转换数据,并以16进制显示在数码管上。实验接线如图3-21。
图9 8位A/D 转换实验接线图
流程图如下:
图 10 8位A/D 转换实验参考流程图
1.3 完整的程序清单和相关注释。
.MODEL small .386
AD_CS EQU 200h LED_CS EQU 210h DATA SEGMENT LEDCODE DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,67H,77H,7CH,39H,5EH,79H,71H ;数码管0到f的显示 DATA ENDS CODE SEGMENT
ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX RPT: MOV DX,AD_CS
OUT DX,AL ;让ADC0809锁存地址,并启动转换 MOV DX,AD_CS
ADD DX,2 ;此时DX指向202H处
L1: IN AL,DX ;读取ADC0809的EOC引脚状态并加以判断 TEST AL,01H ;EOI是否为1,判断转换是否完成 JZ L1 ;否,重复读入EOC状态并判断; MOV DX,AD_CS INC DX
IN AL,DX CALL DISP JMP RPT DISP PROC
MOV SI,OFFSET LEDCODE;设置7段表首地址 MOV BX,SI MOV CH,AL
MOV CL,4;截取转换数据的高四位 ROR AL,CL AND AL,0FH MOV AH,0 ADD BX,AX
MOV AL,[BX];获取LED显示编码 MOV DX,LED_CS
OUT DX,AL;转换后显示 MOV AL,02H INC DX NOP
OUT DX,AL CALL DELAY MOV AL,CH AND AL,0FH MOV AH,0 ADD SI,AX
MOV AL,[SI] MOV DX,LED_CS OUT DX,AL MOV AL,01H INC DX OUT DX,AL CALL DELAY RET DISP ENDP DELAY PROC PUSH CX MOV CX,50H X1: LOOP X1 POP CX RET DELAY ENDP CODE ENDS END START
1.4 实验数据及结果分析
完成了数模信号的转化任务,成功地将模拟量转化为数字量,范围为0到ff,完成了模拟量和显示屏的连接。
1.5 实验过程中遇到的问题,以及解决办法
遇到的问题:在模拟量改变的时候,显示屏的内容没有相应改变。
解决的方案:后查是在程序中,忘记将数据转入,少一个in操作所致。
1.6 实验总结
熟悉了汇编语言的编写操作和软件与连接板的实际操作,也熟悉了模拟量和数字量之间的转换任务。
实验4 步进电机实验
1.1 实验目的
掌握步进电机的控制方法。
1.2 实验原理、内容,接线图,程序流程图,必要时附上