?? max517a2.asm
字號:
;/* 這是MAX517匯編程序,文件名為MAX517A2.ASM */
;/* 功能:本程序是實現MAX517芯片的D/A轉換。程序中轉換的十六 */
;/* 進制值依次為10H,20H,40H,80H,0FFH,00H, OUT腳輸出轉換后 */
;/* 的模擬信號,它既可用萬用表的直流電壓檔測試,也可用示波器 */
;/* 的探頭點在此處觀察。 */
SDA BIT P1.0
SCL BIT P1.1
ORG 0000H
AJMP MAIN
ORG 0013H
MAIN: ;主程序
LCALL DELAY
MOV R0,#10H;
LCALL DACOUT
LCALL DELAY
MOV R0,#20H;
LCALL DACOUT
LCALL DELAY
MOV R0,#40H;
LCALL DACOUT
LCALL DELAY
MOV R0,#80H;
LCALL DACOUT
LCALL DELAY
MOV R0,#0FFH;
LCALL DACOUT
LCALL DELAY
MOV R0,#0FFH
LCALL DACOUT
LCALL DELAY
SJMP $
START:SETB SDA ;發出一個啟始位
SETB SCL
NOP
CLR SDA
NOP
RET
STOP: CLR SDA ;發出一個停止位
SETB SCL
NOP
SETB SDA
NOP
RET
ACK: CLR SDA ;發出一個應答位
NOP
SETB SCL
NOP
CLR SCL
RET
SHOUT:NOP ;發送一個字節
MOV B,#8
X42: CLR SCL
RLC A
MOV SDA,C
SETB SCL
NOP
DJNZ B,X42
CLR SCL
RET
DACOUT:NOP ;串行DA轉換
LCALL START
MOV A,#58H
LCALL SHOUT
LCALL ACK
MOV A,#00H
LCALL SHOUT
LCALL ACK
MOV A,R0
LCALL SHOUT
LCALL ACK
LCALL STOP
RET
DELAY: ;延時程序
MOV R2, #10
MOV R1, #0
MOV R0, #0
DLP:
DJNZ R0, DLP
DJNZ R1, DLP
DJNZ R2, DLP
RET
END
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -