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

📄 ceshida2.asm

📁 WAVE6000编写的常用的程序 包括键盘 通信 数据转换
💻 ASM
字号:
org 0000h
org 0000h
ajmp main
org 0030h
main:
 mov sp,#60h
 mov  r0,#00h
 mov r1,#00h
 mov r4,#00h
 mov r4,#00h
 mov r3,#00h
 l: mov  r1,#00h
    acall send
    mov r1,#80
    acall send
        inc r0
    cjne r0,#0fh,g

    mov r0,#00h
    acall send1
    inc r3
    inc r3

 g:sjmp l

;TLC5615采用非级联方式,将要输入的12位数据存在R0、R1寄存器中,其D/A转换程序如下
send:
CLR  P2.5;片选有效

MOV  R2,#4;将要送入的前四位数据位数

MOV A,R0;前四位数据送累加器低四位

SWAP  A;A中高四位与低四位互换

LCALL WRdata;DIN输入前四位数据

MOV R2,#8;将要送入的后八位数据位数

MOV A,R1;八位数据送入累加器A

LCALL WRdata;DIN输入后八位数据

CLR P2.6;时钟低电平

SETB P2.5;片选高电平,输入的12位数据有效
ret


;送数子程序如下:

WRdata:
   nop ;空操作

LOOP:CLR P2.6;时钟低电平

RLC A;数据送入位标志位CY

MOV P2.7,c  ; C数据输入有效

SETB P2.6;时钟高电平

DJNZ R2,LOOP;循环送数

RET  ;返回


send1:
CLR  P2.1;片选有效

MOV  R2,#4;将要送入的前四位数据位数

MOV A,R3;前四位数据送累加器低四位

SWAP  A;A中高四位与低四位互换

LCALL WRdata1;DIN输入前四位数据

MOV R2,#8;将要送入的后八位数据位数

MOV A,R4;八位数据送入累加器A

LCALL WRdata1;DIN输入后八位数据

CLR P2.2;时钟低电平

SETB P2.1;片选高电平,输入的12位数据有效
ret


;送数子程序如下:

WRdata1:
   nop ;空操作

LOOP1:CLR P2.2;时钟低电平

RLC A;数据送入位标志位CY

MOV P2.3,c  ; C数据输入有效

SETB P2.2;时钟高电平

DJNZ R2,LOOP1;循环送数

RET  ;返回

  delay: mov      r7,    #18h
d1:    mov      r6,    #01h

       djnz     r6,   $
       djnz     r7,   d1
       ret

    sjmp loop

⌨️ 快捷键说明

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