[论文]51单片机与ADC0809应用做AD转换(电路图附程序)[论文]51单片机与ADC0809应用做AD转换(电路图附程序)
ADC0809与51单片机应用程序
电路原理图如下:
说明: D0,D7接51单片机的P2口(P2.0,P2.7)
ADIN1和ADIN2为通道IN0和IN1的电压模拟量输入(0,5V)
应用程序如下:
#include"reg52.h"
#define uchar unsigned char
sbit ST=P1^0;
sbit EOC=P1^1;
sbit OE=P1^2;
sbit CLK=P1^3;
sbit ADDCS...
[论文]51单片机与ADC0809应用做AD转换(电路图附程序)
ADC0809与51单片机应用程序
电路原理图如下:
说明: D0,D7接51单片机的P2口(P2.0,P2.7)
ADIN1和ADIN2为通道IN0和IN1的电压模拟量输入(0,5V)
应用程序如下:
#include"reg52.h"
#define uchar unsigned char
sbit ST=P1^0;
sbit EOC=P1^1;
sbit OE=P1^2;
sbit CLK=P1^3;
sbit ADDCS=P1^4;
uchar AD_DATA[2]; //保存IN0和IN1经AD转换后的数据
/**********延时函数************/
void delay(uchar i) {
uchar j;
while(i--)
{
for(j=125;j>0;j--)
;
}
}
/*********系统初始化***********/
void init()
{
EA = 1; //开总中断
TMOD = 0x02; //设定定时器T0工作方式 TH0=216; //利用T0中断产生CLK信号
TL0=216;
TR0=1; //启动定时器T0
ET0=1;
ST=0;
OE=0;
}
/***********T0中断服务程序************/
void t0(void) interrupt 1 using 0
{
CLK=~CLK;
}
/***********AD转换函数**********/
void AD()
{
ST=0;
ADDCS=0; //选择通道IN0 delay(10);
ST=1; //启动AD转换
delay(10);
ST=0;
while(0==EOC); OE=1;
AD_DATA[0]=P2; OE=0;
ST=0;
ADDCS=1; //选择通道IN1 delay(10);
ST=1; //启动AD转换
delay(10);
ST=0;
while(0==EOC); OE=1;
AD_DATA[1]=P2; OE=0;
}
/*****************主函数**************/
void main()
{
init();
while(1)
{
AD();
}
}
本文档为【[论文]51单片机与ADC0809应用做AD转换(电路图附程序)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。