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

📄 30-0 ltc1446_square.asm

📁 LTC1446是一种采用12位逐次逼近式工作的A/D转换器。内部包含系统时钟、采样和保持、12位A/D转换器、数据寄存器以及控制逻辑电路。LTC1446每25uS重复一次“输入——转换——输出”。器件
💻 ASM
字号:
;串行D/A转换器LTC1446的应用:方波
         
        DAT      BIT     P1.1
        CLK      BIT     P1.0
        CS       BIT     P1.2
        DATAH    EQU     50H
        DATAL    EQU     51H


        ORG   0000H
        LJMP  START
        ORG   0100H
START:
        MOV   SP,#60H
        MOV   DATAH,#0FH;改变数值可以改变高电平的峰值
        MOV   DATAL,#0FFH
        ACALL LTC1446_DAC;调发送子程序
        ACALL DELAY      ;改变沿时可以改变频率
        MOV   DATAH,#000H
        MOV   DATAL,#000H;改变数值可以改变低电平的峰值
        ACALL LTC1446_DAC
        ACALL DELAY      
        SJMP  START      ;改变沿时可以改变频率


LTC1446_DAC:
        SETB  CS
        CLR   CLK
        NOP
        CLR   CS
        MOV   A,DATAH     ; 通道1 高四位
        SWAP  A          
        MOV   R7,#4
DALOOP1:
        SETB  CLK
        NOP
        NOP
        RLC   A
        MOV   DAT,C        
        CLR   CLK
        NOP
        DJNZ  R7,DALOOP1
        MOV   A,DATAL     ; 通道1 低八位
        MOV   R7,#8
DALOOP2:
        SETB  CLK
        NOP
        NOP
        RLC   A
        MOV   DAT,C        
        CLR   CLK
        NOP
        DJNZ  R7,DALOOP2
        NOP
        NOP
        NOP
        NOP

        MOV   A,#0;DATAH     ; 通道2 高四位
        SWAP  A
        MOV   R7,#4
DALOOP3:
        SETB  CLK
        NOP
        NOP
        RRC   A
        MOV   DAT,C        
        CLR   CLK
        NOP
        DJNZ  R7,DALOOP3
        MOV   A,#0;DATAL     ; 通道2 低八位
        MOV   R7,#8
DALOOP4:
        SETB  CLK
        NOP
        NOP
        RRC   A
        MOV   DAT,C        
        CLR   CLK
        NOP
        DJNZ  R7,DALOOP4
        NOP
        NOP

        SETB  CS
        SETB  CLK
        RET

DELAY:        ; 延时子程序
        MOV   R4,#10
DELOOP:
        NOP
        DJNZ  R4,DELOOP
        RET

        END

⌨️ 快捷键说明

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