微机原理--DAC0832产生正弦波

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

CODE SEGMENT

ASSUME CS:CODE,DS:CODE,ES:CODE

DAPORT EQU 0FFE0H

ZXK EQU 0FFDCH

ZWK EQU 0FFDDH

ORG 33E0H

;=======以下程序是输出正弦波=======;START: MOV DX,DAPORT

MOV BX,SEG SINDA TA ;找到数据区的段地址

MOV DS,BX

MOV SI,OFFSET SINDA TA

MOV BUF,00H ;DISPLAY 0832 80

MOV BUF+1,08H

MOV BUF+2,03H

MOV BUF+3,02H

H6: MOV BX,0H; 判断次数

AGAIN: CMP BX,32

JZ H6

PUSH BX

PUSH DX

CALL DIS

POP DX

POP BX

MOV AL,[SI+BX]

OUT DX,AL

INC BX

JMP AGAIN

DIS: MOV CL,20H

MOV BX,OFFSET BUF

DIS1: MOV AL,[BX]

PUSH BX

MOV BX,OFFSET LED

XLA T

POP BX

MOV DX,ZXK

OUT DX,AL

MOV AL,CL

MOV DX,ZWK

OUT DX,AL

PUSH CX

MOV CX,0010H

DELAY: LOOP $

POP CX

CMP CL,04H

JZ EXIT

INC BX

SHR CL,1

JMP DIS1

EXIT: MOV AL,00H

MOV DX,ZWK

OUT DX,AL

RET

SINDA TA: DB 80H,96H,0AEH,0C5H,0D8H,0E9H,0F5H,0FDH;正弦波数据区DB 0FFH,0FDH,0F5H,0E9H,0D8H,0C5H,0AEH,96H

DB 80H,66H,4CH,38H,25H,15H,09H,04H

DB 00H,04H,09H,15H,25H,38H,4EH,66H

BUF DB ?,?,?,?,?,?

LED DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H DB 88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,0DEH,0F3H CODE ENDS

END START

相关文档
最新文档