51单片机—ADC0808—05—①
毕竟ADC这个东西用的比较多,也很成熟,做出来的东西也是挺多的,所以这个东东就用两三个实验来叙述吧~
先说一下ADC0808 这款A/D转换器的介绍:
1、ADC0808的简介
A/D转换器是一种能把输入模拟电压或者电流信息变成与其成正比的数字量信息的电路芯片。A/D转换器用于实现模拟量到数字量的转换。
ADC0808是典型的8通道模拟输入8位并行数字输出的逐次逼近式A/D转换器。该转换器采用COMS工艺,可以实现8路模拟信号的分时采集。片内有8路模拟选通开关,以及相应的通道地址锁存用译码电路。
1)ADC0808芯片的介绍
2)ADC0808的引脚
3)ADC0808的工作流程
4)与51单片机的借口
基本上也就这么点东西~~~很简单吧~~我感觉也是~~
我艹,然我白白调了半天程序,就那么一点点的错误,浪费了好多的时间,真不爽啊~~~
贴图看看~~
由于以后会用模块化编程,便于自己以后直接调用~~~,这个主函数:
//------------------------------------------------------------------------------
//实现由ADC0808作为A/D转换器对电阻进行电压的测试
//数码管显示的数据范围为0~255
#include"reg52.h"
#include"macroandconst.h"
#include"delay.h"
#include"adc0808.h"
//------------------------------------------------------------------------------
uchar code seg_disp[4]={0x10,0x20,0x40,0x00};
uchar count;
sbit
uchar temp_0=0;
//------------------------------------------------------------------------------
//定时器初始化函数
void timer_init()
{
//
}
//------------------------------------------------------------------------------
//main
void main()
{
}
//------------------------------------------------------------------------------
//timer0
void timer0() interrupt 1
{
}
//------------------------------------------------------------------------------
//timer1
void timer1() interrupt 3
{
}
然后就是ADC0808的初始化函数了(一些辅助的函数我就不贴出来了,比如宏定义啊,软件延时啊,引脚定义什么的~~):
//------------------------------------------------------------------------------
//adc0808的文件函数
#include"reg52.h"
#include"delay.h"
#include"macroandconst.h"
//------------------------------------------------------------------------------
sbit START=P3^0;
sbit OE=P3^1;
sbit EOC=P3^2;
sbit CLK=P3^7;
uchar get_data;
uchar temp;
uchar display[3];
//------------------------------------------------------------------------------
//ADC0808的启动和转换的初始化函数
void ADC0808_init()
{
}
51单片机ADC080 相关文章:
- 51单片机驱动ADC0809的C语言程序(11-30)
- 51单片机驱动ADC0808电路图C51及汇编程序(11-30)
- 51单片机教程ADC0809模数转换(11-28)
- 51单片机 ADC0804控制(11-25)
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)