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

📄 tx-1bad测试程序.asm

📁 单片机at89c52同AD芯片dac0832测试程序(转自天祥电子)
💻 ASM
字号:
adrd bit P3.7;                          //IO口定义
adwr bit P3.6;
diola bit P2.5;
dula bit P2.6;
wela bit P2.7;


bai_c equ 40h
sh_c  equ 41h
g_c   equ 42h
adval equ  44h

   org 0000h
   ajmp main

main:mov adval,#0
clr diola
main1: clr adwr;			;AD写入(随便写个什么都行,主要是为了启动AD转换)
   nop
   setb adwr;
   clr adrd
   mov adval,P1			;AD数据读取
   setb adrd
   mov a,adval
   mov b,#100
   div ab
   mov  bai_c,a		;分出百,十,和个位
   mov  a,b;
   mov b,#10
   div ab
   mov  sh_c,a;
   mov  g_c,b;


   mov  r1,#20    ;r1 不能太小 达到延时的作用  ad反应时间有限
loop1:call display;送去显示各位。
   djnz r1,loop1
   ajmp main1


display:			;显示程序
   MOV DPTR,#TABLE
   clr dula;
   mov a,bai_c
   MOVC a,@A+DPTR
   mov p0,a    		;显示百位
   setb dula;
   clr dula;

   clr wela;
   mov P0,#7eh;
   setb wela;
   clr wela;
   mov 50h,#5h
   call delayxms

   clr dula;
   mov a,sh_c
   MOVC a,@A+DPTR
   mov p0,a ;		;显示十位
   setb dula;
   clr dula;

   clr wela;
   mov P0,#7dh;
   setb wela;
   clr wela;
   mov 50h,#5h
   call delayxms

   mov a,g_c
   MOVC a,@A+DPTR
   mov p0,a ;		;显示个位
   setb dula;
   clr dula;
   mov P0,#7bh;
   setb wela;
   clr wela;
   mov 50h,#4h
   call delayxms
   ret

delayxms:mov 52h,#4         ;50h,51h,52h用于延时  50h为参数x  延时1*x ms
delaya: mov 51h,#60
        djnz 51h,$
        djnz 52h,delaya
        djnz 50h,delayxms
        ret ;延时返回


table:db   3fh,06h,5bh,4fh,66h,6dh,7dh,07h,
      db   7fh,6fh,77h,7ch,39h,5eh,79h,71h

⌨️ 快捷键说明

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