找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1458|回复: 1
打印 上一主题 下一主题
收起左侧

ADC0809的模拟量转数字量程序

[复制链接]
跳转到指定楼层
楼主
ID:903713 发表于 2021-4-10 23:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#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();
}
}



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:780742 发表于 2021-4-26 16:35 | 只看该作者
兄弟 有硬件连接图吗  
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表