导航:首页 > 操作系统 > 单片机adc的作业

单片机adc的作业

发布时间:2022-06-10 10:30:46

单片机中adc是干啥的

模数转换器,将模拟量信号转换为数字信号用的。如有帮助请采纳,手机则点击右上角的满意,谢谢!!

Ⅱ c51单片机中断程序中的interrupt1,2,3是由什么决定的

由中断号决定,一般计数器0是interrupt 0,定时器0是interrupt 1,接下来是计数器1,再是定时器1,再是串口,有些单片机还会有ADC,串口2,PCI等中断,具体看单片机的资料。

Proteus 自从有了单片机也就有了开发系统,随着单片机的发展开发系统也在不断发展。 keil是一种先进的单片机集成开发系统。它代表着汇编语言单片机开发系统的最新发展,首创多项便利技术,将开发的编程/仿真/调试/写入/加密等所有过程一气呵成,中间不须任何编译或汇编。

(2)单片机adc的作业扩展阅读:

功能:

8位CPU·4kbytes程序存储器(ROM) (52为8K)。

128bytes的数据存储器(RAM) (52有256bytes的RAM)。

32条I/O口线·111条指令,大部分为单字节指令。

21个专用寄存器。

2个可编程定时/计数器·5个中断源,2个优先级(52有6个)

一个全双工串行通信口。

外部数据存储器寻址空间为64kB。

Ⅲ 单片机中的ADC是什么意思作用是什么

单片机中的ADC是Analog-to-Digital
Converter的缩写,指模/数转换器或者模数转换器。
ADC是指将连续变化的模拟信号转换为离散的数字信号的器件。真实世界的模拟信号,例如温度、压力、声音或者图像等,需要转换成更容易储存、处理和发射的数字形式。模/数转换器可以实现这个功能,在各种不同的产品中都可以找到它的身影。
典型的模拟数字转换器将模拟信号转换为表示一定比例电压值的数字信号。然而,有一些模拟数字转换器并非纯的电子设备,例如旋转编码器,也可以被视为模拟数字转换器。

(3)单片机adc的作业扩展阅读:
单片机中ADC的运作原理:
模拟信号在时域上是连续的,因此可以将它转换为时间上连续的一系列数字信号。这样就要求定义一个参数来表示新的数字信号采样自模拟信号速率。这个速率称为转换器的采样率或采样频率。
可以采集连续变化、带宽受限的信号,然后可以通过插值将转换后的离散信号还原为原始信号。这一过程的精确度受量化误差的限制。然而,仅当采样率比信号频率的两倍还高的情况下才可能达到对原始信号的忠实还原,这一规律在采样定理有所体现。
由于实际使用的模拟数字转换器不能进行完全实时的转换,所以对输入信号进行一次转换的过程中必须通过一些外加方法使之保持恒定。
参考资料来源:搜狗网络-ADC(模数转换器)

Ⅳ 单片机控制ADC的常用方法有哪些

1、ADC原理

ADC转换器由前置滤波器、调制器、数字滤波器和梳值滤波器组成,22∃ADC的结构如图1所示.它是将输入信号通过22∃调制器量化成1bit的高速数据流,再经过数字滤波和采样抽取后才得到最后的结果.和传统的A󰃗D转换相比,其原理和结构有很大地不同,下面以一阶22∃调制器为例来说明22∃ADC原理.

图1 2-∃ADC的结构

2、常用的方法

ADC0809是带有8位A/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件。它是逐次逼近式A/D转换器,可以和单片机直接接口。

(1)ADC0809的内部逻辑结构

由下图可知,ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组成。多路开关可选通8个模拟通道,允许8 路模拟量分时输入,共用A/D转换器进行转换。三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数 据。

(2). ADC0809引脚结构

ADC0809各脚功能如下:
D7-D0:8位数字量输出引脚。
IN0-IN7:8位模拟量输入引脚。
VCC:+5V工作电压。
GND:地。
REF(+):参考电压正端。
REF(-):参考电压负端。
START:A/D转换启动信号输入端。
ALE:地址锁存允许信号输入端。
(以上两种信号用于启动A/D转换).
EOC:转换结束信号输出引脚,开始转换时为低电平,当转换结束时为高电平。
OE:输出允许控制端,用以打开三态数据输出锁存器。
CLK:时钟信号输入端(一般为500KHz)。
A、B、C:地址输入线。

ADC0809对输入模拟量要求:信号单极性,电压范围是0-5V,若信号太小,必须进行放大;输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则需在输入前增加采样保持电路。

地址输入和控制线:4条

ALE为地址锁存允许输入线,高电平有效。当ALE线为高电平时,地址锁存与译码器将A,B,C三条地址线的地址信号进行锁存,经译码后被选中的通道的模拟量进转换器进行转换。A,B和C为地址输入线,用于选通IN0-IN7上的一路模拟量输入。通道选择表如下表所示。


数字量输出及控制线:11条

ST为转换启动信号。当ST上跳沿时,所有内部寄存器清零;下跳沿时,开始进行A/D转换;在转换期间,ST应保持低电平。EOC为转换结束信号。当 EOC为高电平时,表明转换结束;否则,表明正在进行A/D转换。OE为输出允许信号,用于控制三条输出锁存器向单片机输出转换得到的数据。OE=1,输 出转换得到的数据;OE=0,输出数据线呈高阻状态。D7-D0为数字量输出线。

CLK为时钟输入信号线。因ADC0809的内部没有时钟电路,所需时钟信号必须由外界提供,通常使用频率为500KHZ,

VREF(+),VREF(-)为参考电压输入。

2. ADC0809应用说明

(1). ADC0809内部带有输出锁存器,可以与AT89S51单片机直接相连。

(2). 初始化时,使ST和OE信号全为低电平。

(3). 送要转换的哪一通道的地址到A,B,C端口上。

(4). 在ST端给出一个至少有100ns宽的正脉冲信号。

(5). 是否转换完毕,我们根据EOC信号来判断。

(6). 当EOC变为高电平时,这时给OE为高电平,转换的数据就输出给单片机了。

3. 实验任务

如下图所示,从ADC0809的通道IN3输入0-5V之间的模拟量,通过ADC0809转换成数字量在数码管上以十进制形成显示出来。ADC0809的VREF接+5V电压。

4. 程序设计内容

(1). 进行A/D转换时,采用查询EOC的标志信号来检测A/D转换是否完毕,若完毕则把数据通过P0端口读入,经过数据处理之后在数码管上显示。

(2). 进行A/D转换之前,要启动转换的方法:

ABC=110选择第三通道

ST=0,ST=1,ST=0产生启动转换的正脉冲信号 .

C语言源程序
#include
unsigned char code dispbitcode[]={0xfe,0xfd,0xfb,0xf7,
0xef,0xdf,0xbf,0x7f};
unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x07,0x7f,0x6f,0x00};
unsigned char dispbuf[8]={10,10,10,10,10,0,0,0};
unsigned char dispcount;

sbit ST="P3"^0;
sbit OE="P3"^1;
sbit EOC="P3"^2;
unsigned char channel="0xbc";//IN3
unsigned char getdata;

void main(void)
{
TMOD=0x01;
TH0=(65536-4000)/256;
TL0=(65536-4000)%256;
TR0=1;
ET0=1;
EA=1;

P3=channel;

while(1)
{
ST=0;
ST=1;
ST=0;
while(EOC==0);
OE=1;
getdata=P0;
OE=0;
dispbuf[2]=getdata/100;
getdata=getdata%10;
dispbuf[1]=getdata/10;
dispbuf[0]=getdata%10;
}
}

void t0(void) interrupt 1 using 0
{
TH0=(65536-4000)/256;
TL0=(65536-4000)%256;
P1=dispcode[dispbuf[dispcount]];
P2=dispbitcode[dispcount];
dispcount++;
if(dispcount==8)
{
dispcount=0;
}

Ⅳ 单片机ADC怎么编程

内部自带的吗?需要配置引脚为模拟输入,配置转换结果对齐,选择通道,使能ADC,启动转换,等待转换完成,读取转换数值,不同单片机操作不同,具体看手册很详细的

Ⅵ 单片机的ADC处理得到的是什么

谐波电压是给单片机供电,还是输入ADC?一般单片机的ADC参考电压会是电源电压,参考电压变化,固定电压输给ADC,得到数值也会变化。如果是谐波电压输给ADC,参考电压固定,如果采样足够快的话得到数值可复原谐波;比较慢的话数值就是谐波中的一个随机值。

Ⅶ 单片机集成的ADC指的是什么器,DAC指的是什么器

ADC是指模拟信号转换成数字信号,DAC刚好相反。比如基准电压是5V、10位ADC的单片机,检测外部2.5V的电压,读取检测后单片机对应的寄存器值就可以获取512左右的数值。简单的说ADC就是单片机检测电压。DAC则是你想输出对应的电压,只要编程时候赋对于得数值就可以了。

Ⅷ 单片机ADC

ADC可以用在电压/电流测量,或压力传感器的输入,等模拟量的测量
如:电压表,电子称等产品

Ⅸ 用单片机控制adc,多次adc转换求平均值代码怎么写

定义一个计数器,每次读完ADC转化的值以后,累加,然后计数到一定值以后,求平均。下面是示例:
void get_adc() //获取ADC采样值求平均

{
static int cnt = 0;//用于计数
static int sum = 0;

if(cnt==SET_CNT)
{
ADC_value = sum/cnt;
sum = 0;
cnt = 0
}
else
{

start_ADC();//开始转换
tmp = read_ADC();//读取ADC采样值
tmp = tmp +tmp;
cnt++;
}

}

Ⅹ 单片机中ADC是什么

ABC的意思指的是,ac转DC。交流信号转化为直流信号。

阅读全文

与单片机adc的作业相关的资料

热点内容
iphone如何快速分组app 浏览:785
程序员喝的纯牛奶 浏览:251
nginxphpupload 浏览:111
汽车单片机技术教学大纲 浏览:848
解压视频白头小哥 浏览:748
cadq命令 浏览:956
python连接本地数据库报错 浏览:194
手机模拟加密禁卡操作 浏览:105
电荷数怎么算法 浏览:589
cad如何打开命令行 浏览:151
php图片限制大小 浏览:164
程序员一夜未归 浏览:593
苹果xsmaxapp怎么不显示更新 浏览:600
苹果app怎么清除角标 浏览:483
解压屁屁玩具脏了怎么办 浏览:670
算法识别自动折叠 浏览:10
dos命令遍历文件 浏览:456
翻译整个pdf 浏览:198
怎么给解压软件授权 浏览:622
怎么换手机桌面壁纸安卓 浏览:957