#include <reg51.h>
#define uchar unsigned char
sbit EOC=P3^2; // //定义转换终了信号线
sbit cjclk=P2^4; //定义ADC0809时钟线
sbit key=P2^5; //定义启动按键
uchar tab[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//共阳极数码管不带小数
uchar tabd[10]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10}; //共阳极数码管带小数
uchar xsjs; //定义动态扫面显示计数器
uchar num0,num1,num2,num3; //4位显示数
uchar cjsh; //采集数
uchar xdata *p; //定义指向外部RAM的指针P
int beichu; //数据转换中间变量
void init_t();
void delay5ms();
void main()
{ beichu=0;
init_t();
xsjs=0;
p=0x1fff;
while(1)
{ // key=1;
// if(!key)
{
delay5ms();
// if(!key)
{
*p=0xff; //启动采集
while(EOC); //等待采集结束
cjsh=*p; //读取采集结果
beichu=(int)cjsh*5; //结果转换
num3=beichu/0xff; //个位
beichu=beichu%0xff*10;
num2=beichu/0xff; //十分位
beichu=beichu%0xff*10;
num1=beichu/0xff; //百分位
beichu=beichu%0xff*10;
num0=beichu/0xff; //千分位
}
}
}
}
void init_t()
{
TMOD=0x21; //T1方式2,T0方式1
TH0=0xf8; //T0定时2ms ,用于动态显示
TL0=0x30;
TH1=0xff; //T1定时1us ,用于产生500hz的采集时钟
TL1=0xff;
EA=1;
ET0=1;
ET1=1;
TR1=1;
TR0=1;
}
void int_t1()interrupt 3
{
bit a;
a=cjclk;
cjclk=~a; //取反,cjclk周期为2us,即频率为500khz
}
void int_t0()interrupt 1
{
TH0=0xf8;
TL0=0x30;
switch(xsjs)
{
case 0: {P1=0xff;P2=0xfe;P1=tabd[num3];break;}
case 1: {P1=0xff;P2=0xfd;P1=tab[num2];break;}
case 2: {P1=0xff;P2=0xfb;P1=tab[num1];break;}
case 3: {P1=0xff;P2=0xf7;P1=tab[num0];break;}
}
xsjs++;
xsjs%=4; //确保xsjs取值0到3
}
void delay5ms()
{
uchar a,b;
for(b=19;b>0;b--)
for(a=130;a>0;a--);
}
没有合适的资源?快使用搜索试试~ 我知道了~
proteus仿真,AD0808芯片采集1路模拟量电压,AT89C52转换后在4位数码管显示0到5V的电压量,精确到32位小数
共19个文件
obj:2个
lst:2个
bak:2个
需积分: 5 7 下载量 195 浏览量
2023-04-26
09:45:13
上传
评论 1
收藏 78KB ZIP 举报
温馨提示
proteus仿真,AD0808芯片采集1路模拟量电压,AT89C52转换后在4位数码管显示0到5V的电压量,精确到32位小数,适用于学生或电子爱好者学习,内含C程序源码。
资源推荐
资源详情
资源评论
收起资源包目录
数字电压表.zip (19个子文件)
数字电压表
数字电压表.DSN 132KB
ADC0809.lnp 62B
STARTUP.LST 14KB
数字电压表.PWI 792B
STARTUP.A51 6KB
ADC0809.__i 37B
ADC0809_uvproj.bak 0B
ADC0809_uvopt.bak 54KB
ADC0809.M51 9KB
Last Loaded 数字电压表.DBK 133KB
ADC0809.hex 2KB
ADC0809 5KB
STARTUP.OBJ 749B
ADC0809.uvopt 54KB
ADC0809.plg 280B
ADC0809.uvproj 13KB
ADC0809.OBJ 5KB
ADC0809.LST 4KB
ADC0809.c 2KB
共 19 条
- 1
资源评论
jacklood
- 粉丝: 136
- 资源: 21
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功