?? ads7843.asm
字號:
;四線電阻型觸摸屏
;定義ADS7843控制線
; DCLK EQU P3.3
DCLK EQU P0.5
DIN EQU P0.3
DOUT EQU P0.1 ;CS(片選信號直接接地)
;定義變量
KEYCOUT EQU 48H ;
FLAG_KEY EQU 49H ;鍵值寄存器
AD_CH EQU 4AH ;信道選擇寄存器
AD_DAT EQU 4BH ;存放8BIT A/D值
CHX_DAT EQU 4EH ;存放信道CHX的值
CHY_DAT EQU 4FH ;存放信道CHY的
CSEG AT 0000H
NOP
MAIN:
NOP
LCALL CHX ;讀X軸坐標值存于CHX_DAT
LCALL CHY ;讀Y軸坐標值存于CHY_DAT
NOP
LJMP MAIN
;**************************************
CHX:
MOV AD_CH,#0D1H ;向7843輸入控制字,Y開關ON
LCALL AD_RUN
MOV CHX_DAT,AD_DAT
RET
;**************************************
CHY:
MOV AD_CH,#91H ;向7843輸入控制字,X開關ON
LCALL AD_RUN
MOV CHY_DAT,AD_DAT
RET
;**************************************
AD_RUN:
CLR DCLK
MOV R1,#08H
MOV A,AD_CH
AD_LOOP:
MOV C,ACC.7
MOV DIN,C
CLR DCLK
NOP
NOP
SETB DCLK
NOP
RL A
DJNZ R1,AD_LOOP ;向7843寫控制字
CLR DIN
;======================================
ADW1:
MOV R1,#8
LCALL DELAYK
CLR DCLK
NOP
MOV AD_DAT,#00H
SETB DOUT
AD_READ:
SETB DOUT
SETB DCLK
NOP
NOP
CLR DCLK
MOV A,AD_DAT
MOV C,DOUT
RLC A
MOV AD_DAT,A
DJNZ R1,AD_READ ;從7843讀取轉換后的數據
MOV R1,#8
IGNORE:
SETB DCLK
NOP
NOP
CLR DCLK
NOP
DJNZ R1,IGNORE ;??????????????????????
RET
;==================================
DELAYK:
MOV R7,#100
DE1:
NOP
DJNZ R7,DE1
RET
END
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -