您的位置 首页 五金工具

adc0809

adc0809 ?//M≦CU:∴AT89S51 //晶振:12M 本?文引?用地址:http://www.e…

adc0809

?//M≦CU:∴AT89S51

//晶振:12M

本?文引?用地址:http://www.ee♀pw?.com≈.cn/a?rti?cl???e/201611/322633.htm

//采用查询方式读?⊥AD转换后?的值

?#include

#include “?ma≌th.h㏑”

#include “intrins⌒.h”

un?sign℃ed charcode numcode[]={ 0xc?0,0xf9∣,0∷xa4,0x?b0,0x99㏄,

0x92,?0x82,0xf8,0x80,0x90,

0x?C1,0X﹤B7⊿,0xFF

};//数字0~9及”U3=”?&rdq?uo;“?共阳数码管代码

u∞n?signed ch∥ar≥code do?t_numcode[]={0X401,0X7∽9,/0X?24,0X30,?0X19,£

0X?12,0X02?,0?X7?8℡,0X00≡,0X10﹥

};//带数点的0~9共阳数码?管代码

?

unsi≯gned℅ char?code bi÷tcode[]={0xfe,0xf?d,0xfb,0x?f7,

m0xef,0xdf,0xb?f,0x7f};//数码管位选代码

unsigned chardi∟s?pbuff[8]={0,0,0,11,10?,12,12,?12?};

uns?igne◎d ?c﹢hardisp_cou?nt;??

un-signed cha≮rflag=1;

u∠ns?imlgned char§flag_count;

<un¢sig+ned long ㎎in@tgetdata;

sbit S㎞TA㎝RT=P3^0;

sbi?t EOC=P3^2;?

sbit ?OE=P3^1;

?sbit AD_ALE=P3^3;

?voidm?ain(void)

{

?

?

TMOD=0x01;㈱//选∷择定时器T?0,方式为1 ?(16位定时器)

TH0=(65536-3000)/256;//定时3MS?初值

TL0=?(65%536-3000)?%6;

TR0=1;

ET0=1;

EA=1;?

?AD_?ALE=0±;

START=0;

O?E·=0;

while(1)

{

if(f∨lag=∫=1)/‰∪/每隔?40ms启动一次A?D采样

{

flag=0;

*AD_A?LE=1⊙﹣;//锁存输入通道

♂START=≧0;//驱动AD=转换?

START=1¤;

?

AD_?∩ALE=0;?

START㎏=0;//保持低?电平

?

while(E×O?C=¥=?0);∶//等待ADm转换结束√

TR0=0;//AD转换结束时先停止T0

P0〒=0XFF;//关闭数码管显示,呵呵,其实人眼×是感觉?不到数码管熄灭的

P?1=0XFF;?// 这个很重要

O″E=1;//转换结?束,允许?AD值??输出

ge$tdata=P?1;//读出AD值㎜,如果硬件连接上改成P2口来读AD值,这句就改成”getd?>ata=P2;”

OE?=﹢0;//禁止输出

getdata=(unsigned long? i‖nt)((u?nsigned long int)(g?etdata*№5?00)/255);//?转换成电压

dispbuff[2?]=∑getdμata/100;

dispbuffo[1]=(getdata0)/10;

dispbuff[0]=getd∈a≤ta;

TR0=?1;/?/重㏒新启动T0

?}

}

}?

vo¥idt0(void) interrupt 1

{

TH0=(65536-㎡3000)/25%6;

TL0=∮(≠65536-3000)%6;

?

if(disp?_?co?unt==2)

P0=?do?t_⊕numolmco?≒de[dispbuff?∧[disp_count]];

else

﹣P0=nu£m?code[dis?p※buf?f[disp_count]?];

?P1=bitcode[disp_∏co?unt];2

disp_count++;

fl∝ag_count++;

3if(disp_count==8)

{

disp_count=0;

}

if(flag_count?==100)

{

flag==1°;

flag_count=0;

}

}

关于更多adc0809内容,可以收藏本网页。最强边锋 51单片机教程ADC0809模数转换

adc0809adc0809adc0809
本文来自网络,不代表天津五金网立场,转载请注明出处:http://www.mgnqyz.com/mgnqyz/1623.html

作者: mgnqyz

联系我们

联系我们

0898-88881688

在线咨询: QQ交谈

邮箱: email@wangzhan.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部