adc0809数字电压表,用汇编语言,求代码

在386EX实验箱设计一个数字电压表,将电位器电压经过AD变换后转换成为电压值在两位LED数码管实时动态显示电压值(0.0~4.9)。

汇编代码:

程序代码

LED_0 EQU 30H

LED_1 EQU 31H

LED_2 EQU 32H         

ADC EQU 35H       

CLOCK BIT P2.4   

ST BIT P2.5

EOC BIT P2.6

OE BIT P2.7

   ORG 00H     

   SJMP START     

   ORG 0BH                                 

   LJMP INT_T0     

START: MOV LED_0, #00H

       MOV P2, #0FFH

       MOV LED_1, #00H

       MOV LED_2, #00H

       MOV DPTR, #TABLE     

       MOV TMOD, #02H     

       MOV TH0, #245H     

       MOV TL0, #00H

       MOV IE, #82H

       SETB TR0       

WAIT: CLR ST

      SETB STH

      CLR ST       

      JNB EOC, $     

      SETB OE       

      MOV ADC, P1   

      CLR OE     

      MOV A, ADC     

      MOV B, #51

      DIV AB       

      MOV LED_2, A     

      MOV A, B

      MOV B, #5

      DIV AB     

      MOV LED_1, A

      MOV LED_0, B   

      LCALL DISP     

      SJMP WAIT

INT_T0: CPL, CLOCK     

      RETI

DISP: MOV A, LED_0     

      MOVC A, @A+DPTR

      CLR P2.3

      MOV P0, A

      LCALL DELAY       

      SETB P2.3       

      MOV A, LED_1     

      MOVC A,@A+DPTR     

      CLR P2.2 

      MOV P0, A     

      LCALL DELAY

      SETB P2.2

      MOV A, LED_2

      MOVC A, @A+DPTRL

      CLR P2.1

      ORL A, #80H       

      MOV P0, A

      LCALL DELAY

      SETB P2.1

      RET

DELAY: MOV R6, #10       

D1:    MOV R7, #250       

      DJNZ R7, $       

      DJNZ R6, D1

      RET

TABLE: DB 3FH, 06H, 5BH, 4FH, 66H     

       DB 6DH, 7DH, 07H, 7FH, 6FH

      END

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-11-16
同学你好,我是你汇编与接口老师,我知道你是谁了,今天下课之后来我办公室吧~
第2个回答  2011-11-14
0.33

adc0809数字电压表,用汇编语言,求代码
汇编代码:程序代码 LED_0 EQU 30H LED_1 EQU 31H LED_2 EQU 32H ADC EQU 35H CLOCK BIT P2.4 ST BIT P2.5 EOC BIT P2.6 OE BIT P2.7 ORG 00H SJMP START ORG 0BH LJMP INT_T0 START: MOV LED_0, #00H MOV P2, #0FFH MOV LED_1, #00H MOV LED_2, #00H MOV DPTR...

ADC0809与AT89S52组成的数字电压表 精确到0.02V 用汇编语言怎么写?
如果你的AD是8位AD,5V\/2^8=5V\/256=0.01953125v 这个是最小精度,所以如果你是8位精度的AD,你的数字电压表量程是5V的,那就可以达到要求精度,如果量程为10V,那么8位AD就达不到。至于汇编语言怎么写,这个你的老师没教给你AD转换吗?51的单片机是不带AD的,扩展 AD芯片,然后用单片机和AD...

求一简易数字电压表的电路原理图
i. 由于ADC0809在进行A\/D转换时需要有CLK信号,而此时的ADC0809的CLK是接在AT89S51单片机的P3.3端口上,也就是要求从P3.3输出CLK信号供ADC0809使用。因此产生CLK信号的方法就得用软件来产生了。ii. 由于ADC0809的参考电压VREF=VCC,所以转换之后的数据要经过数据处理,在数码管上显示出电压值。...

数字电压表设计 单片机 C语言
i. 由于ADC0809在进行A\/D转换时需要有CLK信号,而此时的ADC0809的CLK是接在AT89S51单片机的P3.3端口上,也就是要求从P3.3输出CLK信号供ADC0809使用。因此产生CLK信号的方法就得用软件来产生了。ii. 由于ADC0809的参考电压VREF=VCC,所以转换之后的数据要经过数据处理,在数码管上显示出电压值。实际显示...

利用单片机AT89S51与ADC0809设计一个数字电压表,能够测量0-5V之间的直 ...
ADC0809的工作频率最高是640KHz,推荐500KHz。在这个电路图中ADC0809使用单片机的ALE信号作为时钟,但是单片机工作频率是12MHz,ALE输出是2MHz,所以需要7474来分频。7474有两个D触发器,每个触发器可以配置为2分频器(使输出信号的频率是输入的一半),两个串联就是4分频,所以ALE的2MHz经过4分频后就是...

AD转换后得到得数据怎样读取出来啊(Mega8)
我用过AD(ADC0809),书上的那个。超过量程出现2种不同的情况 1. 输出为0FF,2.输出的8位数据乱跳,没有规律 我自己做的那个数字电压表情况就是2,而我的同学他的情况就是第一种。所以我搞不明白到底是怎么回事。如果不考虑超过量程的话我会用汇编写,C语言不会,正在学c51呢 超过3V的话输...

ADC0809作用
回答:ADC0809是带有8位A\/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件。它是逐次逼近式A\/D转换器,可以和单片机直接接口。 (1)ADC0809的内部逻辑结构 ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A\/D转换器和一个三态输出锁存器组成。多路开关可选通8个模拟通道,允许8路模拟...

ADC0809数字电压表数码管显示出错,求解释!
有可能是 0808 的数据线 D7~D0,次序,全接反了。在我的百度空间里面,有一个正确的电路,可供参考。另外,你的电压表,没有接地。这样一来,它显示的数值,并非是 ADC 的电压。

有人知道这个是什么数字电压表吗? 我需要它的详细功能解说~~_百度知...
这是一个简单的2位数字电压表。电路图不全且不清晰,具体功能不好分析。ADC0809是模数转换的,单片机进行控制,74373是数据锁存。

基于51单片机的数字电压表(ADC0809,ADC0832)
基于51单片机的数字电压表采用ADC0809和ADC0832芯片,具备LCD1602和数码管显示功能,测量精度达0.05级,覆盖5V至24V电压范围。该电压表支持单路、三路、四路和八路测量,具备按键切换、定时器自动切换、手动和自动两种工作模式。提供详细设计报告和参考书,支持功能修改服务。用户在使用过程中,如有任何疑问或...

相似回答