⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 adc.asm

📁 基于STC5410单片机AD功能模块测试
💻 ASM
字号:
 ;-----------STC12C5410AD/AD转换程序---------------
;------------2008.8.28----------------------------
;-------------------------------------------------
ADC_CONTR EQU 0C5H
ADC_DATA  EQU 0C6H     ;ADC高8位
ERROR  BIT P1.7           ;不合格
PASS   BIT P1.6           ;合格
K1     BIT P1.5           ;充放电开关
K2     BIT P1.4           ;振子与外框的测试
K3     BIT P1.3  
ADC_LOW2  EQU 0BEH     ;低2位
P1M0      EQU 91H      ;模式寄存器0
P1M1      EQU 92H      ;模式寄存器1
ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:MOV SP,#60H
     MOV TMOD,#20H    ;晶振11.0592,波特率9600,方式3
     MOV SCON,#50H
     MOV TH1,#0FDH
     MOV TL1,#0FDH
     MOV PCON,#00H
     SETB TR1
     setb p1.0
    
     setb K1
     CLR K2
     CLR K3
     MOV SP,#50H
     SETB PASS
     SETB ERROR
kk:     ;--------------------------------启动内部模拟电源
     MOV ADC_CONTR,#80H
     LCALL DELAY_1MS
     ;---------------------- ---------设置P1.2位开漏
     MOV A,#00000001B
     ORL P1M0,A
     ORL P1M1,A
     ;--------------------------------设置P1.2A位AD转换通道
     MOV ADC_CONTR,#11100000B
     ;---------------------------------启动测量并转换
     ORL ADC_CONTR,#00001000B                             ;*******
AD_CON: MOV A,#00010000B
        ANL A,ADC_CONTR
        JZ AD_CON
        ANL ADC_CONTR,#11100111B        ;转换结束,清ADC_FLAG,ADC_START
        MOV A,ADC_DATA                ;HIGH 8 BIT
        ANL A,#3FH
        RL A
        RL A
        ORL A,ADC_LOW2                ;LOW 2 BIT
       ;-------------------------------上传结果到PC机
        LCALL SEND_BYTE
        MOV A,ADC_DATA
        ANL A,#0C0H
        MOV R1,#6
STOP:   RR A
        DJNZ R1,STOP
        LCALL SEND_BYTE
       ;--------------------------------恢复P1.0口
        ;MOV A,#11111110B
        ;ANL P1M0,A
        ;ANL P1M1,A
        LJMP kk
SEND_BYTE:
         CLR TI
         PUSH ACC
         MOV SBUF,A
SEND_FIN:JNB TI,SEND_FIN
         CLR TI
         POP ACC
         RET
DELAY_1MS:MOV R7,#0FFH
  LOOP1:  NOP
          NOP
          DJNZ R7,LOOP1
          RET

 END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -