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

📄 ceshida.asm

📁 WAVE6000编写的常用的程序 包括键盘 通信 数据转换
💻 ASM
字号:
org 0000h
ajmp main
org 0030h
main:
 mov sp,#60h
 mov  r0,#00h
 mov r1,#00h

 l: add 
  cjne r1,#0fch ,g
   inc r0
   mov  r1,#00h
   cjne r0,#0fh,g
   mov  r1,#00h
   mov  r0 ,#00h
   
g:
   
 
acall send
 ; acall delay
  
 sjmp l

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

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

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

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

LCALL WRdata;DIN输入前四位数据

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

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

LCALL WRdata;DIN输入后八位数据

CLR P1.1;时钟低电平

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


;送数子程序如下:

WRdata:
   nop ;空操作

LOOP:CLR P1.1;时钟低电平

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

MOV P1.0,c  ; C数据输入有效

SETB P1.1;时钟高电平

DJNZ R2,LOOP;循环送数

RET  ;返回

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

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

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

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

LCALL WRdata1;DIN输入前四位数据

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

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

LCALL WRdata1;DIN输入后八位数据

CLR P1.5;时钟低电平

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


;送数子程序如下:

WRdata1:
   nop ;空操作

LOOP1:CLR P1.5;时钟低电平

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

MOV P1.4,c  ; C数据输入有效

SETB P1.5;时钟高电平

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 + -