ADC0809输入电压转成LED灯显示程序

发布者:MysticalDreamer最新更新时间:2018-01-11 来源: eefocus关键字:ADC0809  输入电压  LED灯  显示程序 手机看文章 扫描二维码
随时随地手机看文章

ADC0809输入电压转成LED灯显示程序

;将输入电压转化成LED灯显示.                      
;///////////////////////////////////////////     


;//定义ADC的连接端口 
ad_cs   equ P3.6 
ad_wr   equ P3.2 
ad_rd   equ P3.7 
ad_input_port   equ p1 

    org 0000h 
    ajmp    main 
    org 0030h 
main: 
    lcall adc_demo 
    ajmp    main 
                 
;//========================================== 
;// 启动AD转换 
;//========================================== 
Adc_Start: 
    clr ad_cs 
    nop 
    clr ad_wr 
    nop 
    setb    ad_wr 
    nop 
    setb    ad_cs 
    nop 
    ret 
;//========================================== 
;// 读AD转换 
;//========================================== 
Adc_Read: 
     MOV  ad_input_port,#0ffh 
    clr ad_cs 
    nop 
    clr ad_rd 
    nop 
    nop 
     MOV  a,AD_INPUT_PORT 
    nop 
    setb    ad_rd 
    nop 
    setb    ad_cs 
    ret 
;//========================================== 
;// AD转换读取延时程序,显示读到的数值 
;//========================================== 
Adc_Demo: 
    lcall Adc_Start 
    lcall delay1ms 
    lcall adc_read 

    call l1 
     MOV  r1,#100 
disp1: 
    call disp 
    djnz r1,disp1 
    ret 
l1: 
     MOV  b,#10 
    mul ab 
     MOV  r7,b 
     MOV  r6,a 
     MOV  r5,#00h 
     MOV  r4,#51 
    lcall chu 
     MOV  a,r6 
     MOV  b,#10 
    div ab 
     MOV  31h,a 
     MOV  30h,b 
    ret 
disp: 
     MOV  p2,#0fdh 
     MOV  dptr,#tab 
     MOV  a,31h 
     MOV c a,@a+dptr 
    anl a,#7fh 
     MOV  p0,a 
    call delay 
     MOV  p2,#0ffh 
     MOV  a,30h 
     MOV c a,@a+dptr 
     MOV  p2,#0feh 
     MOV  p0,a 
    call delay 
    ret 
delay: 
     MOV  r6,#10 
d1: 
     MOV  r7,#248 
    djnz r7,$ 
    djnz r6,d1 
    ret 

     
chu: 
     MOV  a,r5 
    jnz begin 
     MOV  a,r4 
    jz over 
begin: 
    clr a 
     MOV  r3,a 
     MOV  r2,a 
     MOV  r1,#10h 
div0: 
    acall rlc4 
     MOV  a,r2 
    subb a,r4 
     MOV  r0,a 
     MOV  a,r3 
    subb a,r5 
    jc next 
    inc r6 
     MOV  r3,a 
     MOV  a,r0 
     MOV  r2,a 
next: 
    djnz r1,div0 
     MOV  a,r3 
    rlc a 
    jc round 
     MOV  a,r2 
    rlc a 
     MOV  r2,a 
     MOV  a,r3 
    rlc a     
    subb a,r5 
    jc done 
    jnz round 
     MOV  a,r2 
    subb a,r4 
    jc done 
round: 
    acall add1 
done: 
    clr a 
    ret 
over: 
     MOV  a,#0ffh 
    ret 
rlc4: 
    clr c 
     MOV  a,r6 
    rlc a 
     MOV  r6,a 
     MOV  a,r7 
    rlc a 
     MOV  r7,a 
     MOV  a,r2 
    rlc a 
     MOV  r2,a 
     MOV  a,r3 
    rlc a 
     MOV  r3,a 
    ret 
add1: 
     MOV  a,r6 
    add a,#1 
     MOV  r6,a 
     MOV  a,r7 
    addc a,#0 
     MOV  r7,a 
    ret 

tab:db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h 
delay1ms: 
     MOV     r7,#10 
tta: 
     MOV     r6,#50 
    djnz    r6,$        ;2us 
    djnz    r7,tta 
    ret 
    end 


关键字:ADC0809  输入电压  LED灯  显示程序 引用地址:ADC0809输入电压转成LED灯显示程序

上一篇:TIMER0在MODE2的计数工作方式程序
下一篇:两个8051做串行多工数据传输程序

推荐阅读最新更新时间:2024-03-16 15:52

51单片机学习笔记:写了个led宏,并尝试控制led灯的亮度
经常用led灯来观察现象,甚至调试代码,修改代码时用0和1很不方便,而且阅读性也不好, 故写了个宏,用起来方便些. 今天尝试控制灯的亮度. 先试试for循环控制,占空比调节... C代码 //#include my51.h #include reg52.h typedef unsigned char u8; typedef unsigned short int u16; #ifndef _51LED_ #define _51LED_ #define led P1 //P1总线连8个led灯,灯连573锁存器,P1置低电平点亮 #define LED led
[单片机]
51单片机学习笔记:写了个led宏,并尝试控制<font color='red'>led灯</font>的亮度
NIKO可调光PFC LED驱动器专为LED灯泡及灯管设计
在LED照明应用中采用交流-直流(AC-DC)电源供电的LED驱动电路中,常见隔离拓扑结构与非隔离拓扑结构。这两种拓扑结构各有其特点。相比较而言,非隔离拓扑结构的优势包括磁性元件尺寸更小、能效更高、元件数量更少、总物料单成本更低,以及能以机械设计满足安规等,特别适用于内含驱动器的LED灯泡及灯管应用,已成为此类LED照明趋势而大量被采用。而隔离拓扑结构则因安规需求较适用于驱动器与的LED灯泡及灯管分开结构之照明应用。 NIKO-SEM提供之LED驱动器非隔离LED驱动器系列,採峰值电流採样加平均电流採样双回授控制,因此能改善高功因应用中单一平均电流回授控制中不可调光之缺失,同时快速回授特性可避免输入电压变换控制延迟造成LED过流毁损
[电源管理]
NIKO可调光PFC LED驱动器专为<font color='red'>LED灯</font>泡及灯管设计
定时器的应用---查询方式---让8个LED灯,左右各4个来回亮
/********************** 查询方式是主程序不断的查询是否中断,而不需要准备子程序 ***********************/ #include reg51.h #define LED P1 #define COUNT 50000 // 50000 * 1us = 0.05s 50000计数次 #define TH_M1 (65536-COUNT)%256 //MODE 1 余数赋值给高4位 #deefine TL_M2 (65536-COUNT)/256 //MODE 1 商赋值给低4位 main() { int i; TMOD =0x01; //方式1 启
[单片机]
定时中断实现显示程序
第一位始终显示0,第二位显示在0-9之间循环 ;************************************************** Counter EQU 59H ;计数器,显示程序通过它得知现正显示哪个数码管 FIRST EQU P2.7 ;第一位数码管的位控制 SECOND EQU P2.6 ;第二位数码管的位控制 DISPBUF EQU 5AH ;显示缓冲区为5AH和5BH ORG 0000H AJMP START ORG 000BH ;定时器T0的入口 AJMP DISP ;显示程序 ORG 30H START: MOV SP,#5FH ;设置堆栈 MOV P1,#0FFH MOV P0,#0FFH
[单片机]
12864汉字液晶显示--按键电子时钟程序
#include reg52.h #include intrins.h #define uchar unsigned char void lcd_ini(); void ascii_change(void); void delay(); void wri_add(uchar com); void wri_dat(uchar com1); void shan(void); void disp(); void tkey(void); sbit cs=P1^7; sbit sid=P1^6; sbit sclk=P1^5; bit flag=1; uchar dat,count,f=1;//f测试哪个单元为当前闪烁状态 ucha
[单片机]
散热管理--LED灯的的低功耗设计
散热管理是新型LED灯中最困难、要求最严格且成本最高的设计部分。如果不进行充分的散热管理,将会造成照明失效或火灾等灾难性后果。不过,LED灯的散热管理是整个设计方案中最复杂、要求最严格且成本最高的部分。本文将探讨如何实施负温度系数(NTC)散热管理,以充分提高LED设计的安全性并大幅降低功耗。 传统的白炽灯泡中,不与任何东西直接接触的灯丝是唯一热源。而对于LED灯而言,LED即是光源,LED的散热直接与LED灯泡相接触。这种直接接触是受LED与驱动器电路的连接方式使然。为了实现散热,必须将热量从LED和驱动器电路中释放出去或者加以有效管理,同时这也是让LED灯保持长期工作的基本前提。 为了解散热管理的重要性,我们不妨设想这样一
[电源管理]
散热管理--<font color='red'>LED灯</font>的的低功耗设计
浮动恒流源允许超宽范围的输入电压
 对Power Integrations的多数产品而言,数据手册中限制的用于确保正常启动和起作用的最小漏极电压为50 V。但是,如果通过外部电源向旁路引脚馈电,则芯片可接收外部供电,且即使在较低的输入电压下也可启动和工作。 图8:功率控制器的浮动恒流源电路 图八所示的启动电路为浮动恒流源,它为整个输入电压范围内的TinySwitch-III的旁路(BP)引脚提供大约600 μA的恒流。 恒流值由R2 和VR1确定: 该电路源自基本的单晶体管电流源。该电路采用了一个齐纳二极管,为Q2 (NPN)的基极引出端设置参考电压,并以此对流经电阻R2的固定电压进行编程,从而设置恒流值。然而,鉴于输入电源范围的异常宽广性,参考齐纳二极管的偏
[电源管理]
浮动恒流源允许超宽范围的<font color='red'>输入</font><font color='red'>电压</font>
Supertex发布了宽泛输入电压范围的PWM风扇速度控制器IC
Supertex公司发布了其新款集成驱动器和脉宽调制(PWM)风扇速度控制器。这种HV7100型控制器IC的输入电压范围达到16V到90V,从而特别适用于效率更高的服务器和电信领域的24V和48V系统。 这种IC具有一个4位PWM控制输入,与微控制器直接接口来控制风扇速度。通过将热敏电路连接至线性控制引脚,该产品即可用作独立的风扇控制器。HV7100器件还具有高压端驱动器,因而可用于具有接地标准测速信号的风扇。利用一个简单的LC滤波器可将PWM输出转换为DC电压,从而用于需要DC驱动的风扇产品。
[新品]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved