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

📄 jingduabbb.asm

📁 51 对AD1211的编程 可供大家参考
💻 ASM
字号:
      DRDY1    EQU P1.0
      SDOUT1   EQU P1.1
      SDIO1    EQU P1.2
      SCLK1    EQU P1.3
      DRDY2    EQU P1.4
      SDOUT2   EQU P1.5
      SDIO2    EQU P1.6
      SCLK2    EQU P1.7
      drdy3    equ p2.0
      sdout3   equ p2.1
      sdio3    equ p2.2
      sclk3    equ p2.3
      rest     equ p2.4
      wr2      equ p2.5
      irq5     equ p2.6
      SHeA     EQU P2.7
      fifoemp  equ p3.4
      ORG     0000H;
      AJMP MAIN
      ORG  0100H
MAIN:MOV TMOD,#20H
     MOV TH1,#0FDH
     MOV TL1,#0FDH  ;19.2KB/S
     SETB TR1
     MOV PCON,#80H
     MOV SCON,#50H  ;SMOD=1 FANG SHI 1
     CLR EA
     CLR SCLK2
     CLR SCLK1;       dpj initial
     MOV 37H,#0FAH; 头文件
     MOV 38H,#0FBH;
     MOV 39H,#0BFH;
     MOV 3AH,#0AFH;

     MOV 3BH,#00H;  34H放校验和的低位,初始化为0
     MOV 3CH,#00H;  35H放校验和的高位,初始化为0

     MOV 3DH,#0CCH; 头文件
     MOV 3EH,#06H;
     MOV 3FH,#00H;

     MOV 40H,#00H; 保存第1路采样24位数据,初始化为0
     MOV 41H,#00H;
     MOV 42H,#00H;

     MOV 43H,#00H; 保存第2路采样24位数据,初始化为0
     MOV 44H,#00H;
     MOV 45H,#00H;
                      
     JNB DRDY1,$

     MOV A,#01100100B

     ACALL WRIN1


     ACALL WRIN1
     MOV R3,#20H
     MOV A,R3

     ACALL WRIN1




     ACALL WRIN1 ;  A\D1 initial
     SETB DRDY1

     JNB DRDY2,$
     JB DRDY2,$;
     MOV R1,#01100100B
     MOV A,R1
     ACALL WRIN2
     MOV R2,#0C2H
     MOV A,R2
     ACALL WRIN2
     MOV R3,#20H
     MOV A,R3
     ACALL WRIN2
     MOV R4,#86H
     MOV A,R4
     ACALL WRIN2
     MOV R5,#19H
     MOV A,R5
     ACALL WRIN2;  A\D2 intial

     SETB DRDY2

     MOV R4,#00H
     MOV R5,#00H
     MOV R0,#3FH

     SETB SHEA
 
K2:  CLR  SHEA
     JNB DRDY1,$
     JB DRDY1,$
     MOV A,#0C0H
     ACALL WRIN1
     LCALL RDOUT1
     INC R0
     MOV @R0,A
     LCALL RDOUT1
     INC R0
     MOV @R0,A
     LCALL RDOUT1
     INC R0
     MOV @R0,A ;READ DOR1


     ;JNB DRDY2,$
     JB DRDY2,$
     MOV A,#0C0H
     ACALL WRIN2
     LCALL RDOUT2
     INC R0
     MOV @R0,A
     LCALL RDOUT2
     INC R0
     MOV @R0,A
     LCALL RDOUT2
     INC R0
     MOV @R0,A ;READ DOR2


     SETB SHEA
     ACALL XRLANDADD
     ACALL READ
     MOV R0,#3FH
     AJMP K2



RDOUT1 :MOV R1,#08H
RD1:   SETB SCLK1
       MOV C,SDOUT1
       CLR SCLK1
       RLC A
       DJNZ R1,RD1
       RET
RDOUT2:
     MOV R1,#08H
RD2:SETB SCLK2
       MOV C,SDOUT2
       CLR SCLK2
       RLC A
       DJNZ R1,RD2
       RET

WRIN1:MOV R1,#08H
WR0:RLC A
      SETB SCLK1
      MOV SDIO1,C
      CLR SCLK1
      DJNZ R1,WR0
      RET

WRIN2:MOV R1,#08H
WR1:RLC A
      SETB SCLK2
      MOV SDIO2,C
      CLR SCLK2
      DJNZ R1,WR1
      RET
READ:   MOV R0,#36H
        MOV R1,#0FH


  KK:   CLR TI
        INC R0
        MOV A,@R0
        MOV SBUF,A
        JNB TI,$
        DJNZ R1,KK
        RET
INCR:   MOV A,R5
        ADD A,#01H
        JNC RK
        INC R4
 RK:    MOV R5,A
        RET
XRLANDADD:
                MOV R6,#09H;   9个需要异或与相加的数据
                MOV R5,#00H;   与0\1\2\3\4\5\6\7\8异或
                MOV 3BH,#00H;  34H放校验和的低位,初始化为0
                MOV 3CH,#00H;  35H放校验和的高位,初始化为0

                MOV R1,#3DH;
       LOOPXRAD:
                MOV A,@R1;
                XRL A,R5;
                INC R5;
                INC R1;
                ADD A,3BH;
                MOV 3BH,A;
                CLR A;
                ADDC A,3CH;
                MOV 3CH,A;
                DJNZ R6,LOOPXRAD;

                RET;我们采用了F=300HZ每秒钟传输了100多组数  19。2K
                END ;精度为小于1MV

⌨️ 快捷键说明

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