1.9.1_ADC和触摸屏_ADC硬件原理_P

ADC是将模拟信号转换为数字信号的意思,这是因为计算机不能处理连续/模拟的信号量,必须将连续的信号量转换为离散的信号量才能正确处理。

ADC的实现方法有很多,但作为程序员,我们不需要过多的深入了解它的硬件实现,只需要能够正确使用即可。

附一个关于转换原理的链接,有兴趣可以看下。
(https://www.sohu.com/a/310750432_467791)

在这里插入图片描述
如图所示,一个电阻的一端接地,另一端接3.3V,那么这个电阻某个位置的电压值就在0~3.3V这个范围中,我们就可以使用一个一个ADC转换装置来读取这个位置的电压值,将ADC装置的一端接在电阻上,另一端输出数字量。

对于这个ADC装置,我们主要关心的特性的有三点:

  1. 转换位数,转换的位数越高,数据就越准确(假设为10位)
  2. 检测范围,也就是模拟信号输入的最大值(10位时为0b1111111111,如果最大值为3.3V,那么1.65V的AD值就是0b1111111111除以2)
  3. 采样/转换速度,转换一次需要花费的时间

下图是S3C2440芯片手册中ADC章节的特性描述,可以看到转换位数为10bit,最大转换频率为500K每秒(也就是1/500/1000=2us转换一次),模拟量的输入范围是0~3.3V。

在这里插入图片描述
对于程序员来说,我们不关心ADC的内部机制,我们只关心

  1. 怎么启动ADC;
  2. 启动后怎么得到数据。

要想知道怎么启动和使用,则需要查看2440的芯片手册。

在这里插入图片描述
上图是ADC和触摸屏的接口功能框图,从框图中可以看到,2440支持最多8路ADC转换,通过一个8:1 MUX的多路选择器进行选择,具体选择哪个引脚需要看原理图。
在这里插入图片描述
还要设置ADC的工作时钟。

之后就是ADC的相关寄存器的配置,就不一一描述,这里只做总结:

  • 设置8:1 MUX,选择要测量哪个引脚
  • 设置工作频率
  • 启动
  • 读状态,判断ADC是否转换成功
  • 读数据
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值