ARM系列文章合集如下:
《从0学arm合集》
前言在嵌入式开发中,ADC应用比较频繁,本文主要讲解ADC的基本原理以及如何编写基于ARM的裸机程序和基于Linux的驱动程序。
ARM架构:Cortex-A9Linux内核:3.14
在讲述ADC之前,我们需要先了解什么是模拟信号和数字信号。
模拟信号主要是与离散的数字信号相对的连续的信号。模拟信号分布于自然界的各个角落,如每天温度的变化,而数字信号是人为的抽象出来的在时间上不连续的信号。电学上的模拟信号是主要是指幅度和相位都连续的电信号,此信号可以被模拟电路进行各种运算,如放大,相加,相乘等。
模拟信号是指用连续变化的物理量表示的信息,其信号的幅度,或频率,或相位随时间作连续变化,如目前广播的声音信号,或图像信号等。
如下图所示从上到下一次是正弦波、调幅波、阻尼震荡波、指数衰减波。
数字信号数字信号指幅度的取值是离散的,幅值表示被限制在有限个数值之内。二进制码就是一种数字信号。二进制码受噪声的影响小,易于有数字电路进行处理,所以得到了广泛的应用。
数字信号:高清数字电视,MP3,JPG,PNG文件等等。
优点:
1.抗干扰能力强、无噪声积累
在模拟通信中,为了提高信噪比,需要在信号传输过程中及时对衰减的传输信号进行放大,信号在传输过程中不可避免地叠加上的噪声也被同时放大。
随着传输距离的增加,噪声累积越来越多,以致使传输质量严重恶化。
对于数字通信,由于数字信号的幅值为有限个离散值(通常取两个幅值),在传输过程中虽然也受到噪声的干扰,但当信噪比恶化到一定程度时,
即在适当的距离采用判决再生的方法,再生成没有噪声干扰的和原发送端一样的数字信号,所以可实现长距离高质量的传输。
2.便于加密处理
信息传输的安全性和保密性越来越重要,数字通信的加密处理的比模拟通信容易得多,以话音信号为例,经过数字变换后的信号可用简单的数字逻辑运算进行加密、解密处理。
3.便于存储、处理和交换
数字通信的信号形式和计算机所用信号一致,都是二进制代码,因此便于与计算机联网,也便于用计算机对数字信号进行存储、处理和交换,
可使通信网的管理、维护实现自动化、智能化。
4.设备便于集成化、微型
数字通信采用时分多路复用,不需要体积较大的滤波器。设备中大部分电路是数字电路,可用大规模和超大规模集成电路实现,因此体积小、功耗低。
5.便于构成综合数字网和综合业务数字网
采用数字传输方式,可以通过程控数字交换设备进行数字交换,以实现传输和交换的综合。
另外,电话业务和各种非话业务都可以实现数字化,构成综合业务数字网。
6.占用信道频带较宽
一路模拟电话的频带为4kHz带宽,一路数字电话约占64kHz,这是模拟通信目前仍有生命力的主要原因。随着宽频带信道(光缆、数字微波)的大量利用(一对光缆可开通几千路电话)以及数字信号处理技术的发展(可将一路数字电话的数码率由64kb/s压缩到32kb/s甚至更低的数码率),数字电话的带宽问题已不是主要问题了。
常用的数字信号编码有不归零(NRZ)编码、曼彻斯特(Manchester)编码和差分曼彻斯特(DifferentialManchester)编码。
数字信号与模拟信号的转化
模拟信号和数字信号之间可以相互转换:模拟信号一般通过PCM脉码调制(PulseCodeModulation)方法量化为数字信号,
即让模拟信号的不同幅度分别对应不同的二进制值,例如采用8位编码可将模拟信号量化为2^8=个量级,实用中常采取24位或30位编码;
数字信号一般通过对载波进行移相(PhaseShift)的方法转换为模拟信号。计算机、计算机局域网与城域网中均使用二进制数字信号,
目前在计算机广域网中实际传送的则既有二进制数字信号,也有由数字信号转换而得的模拟信号。但是更具应用发展前景的是数字信号。
PCM脉冲编码调制脉冲编码调制就是把一个时间连续,取值连续的模拟信号变换成时间离散,取值离散的数字信号后在信道中传输。
脉冲编码调制就是对模拟信号先抽样,再对样值幅度量化,编码的过程。
抽样:
就是对模拟信号进行周期性扫描,把时间上连续的信号变成时间上离散的信号。
该模拟信号经过抽样后还应当包含原信号中所有信息,也就是说能无失真的恢复原模拟信号。
量化:
就是把经过抽样得到的瞬时值将其幅度离散,即用一组规定的电平,把瞬时抽样值用最接近的电平值来表示,通常是用二进制表示。
编码:
就是用一组二进制码组来表示每一个有固定电平的量化值。然而,实际上量化是在编码过程中同时完成的,故编码过程也称为模/数变换,可记作A/D。
ADC
ADC,Analog-to-DigitalConverter的缩写,指模/数转换器或者模数转换器。是指将连续变化的模拟信号转换为离散的数字信号的器件。真实世界的模拟信号,例如温度、压力、声音或者图像等,需要转换成更容易储存、处理和发射的数字形式。模/数转换器可以实现这个功能,在各种不同的产品中都可以找到它的身影。
ADC最早用于对无线信号向数字信号转换。如电视信号,长短播电台发接收等。
与之相对应的DAC,Digital-to-AnalogConverter,它是ADC模数转换的逆向过程。
现在市场上的电子产品都集成了传感器,传感器要采集数据,他的内部结构里就一定要用到ADC,常见的传感器如下:
温湿度:温度传感器,DHT11声音:音频芯片进行录音,WM图像:索尼IMX/IMX传感器ExynosA/D转换器
三星的Exynos模块结构图如下所示:
Adc控制器集成在exynossoc中,控制器内部有一根中断线连接到中断控制器