AD接口电路设计及编程.PPT

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
AD接口电路设计及编程

第11章 AD接口电路设计及编程 本章主要内容: A/D转换器类型。 ARM自带A/D转换器。 A/D转换器电路设计及编程。 A/D转换器 A/D转换器用来将模拟信号转换为相应的数字信号,是模拟系统和数字系统之间的接口电路。A/D转换器在进行转换期间,要求输入的模拟电压保持不变,但在A/D转换器中,因为输入的模拟信号在时间上是连续的,而输出的数字信号是离散的,所以进行转换时只能在一系列选定的瞬间对输入的模拟信号进行采样,然后再把这些采样值转化为输出的数字量。 A/D转换器类型 1.计数器型A/D转换器 2.积分型A/D转换器 3.逐次逼近型A/D转换器 4.并行比较型A/D转换器 编程 (1)ADC控制寄存器初始化 采用以下语句对ADC相关寄存器进行初始化: //时钟控制寄存器,使能MCLK作ADC的时钟源 rCLKCON=0x7ff8; rADCCON=0x1| (02);//启动A/D转换 Delay(100);//等待使ADC的参考电压稳定下来 rADCPSR=0x20; //设置时钟预分频值 (2)读取A/D转换数值子程序 参考程序如下: int ReadAdc(int ch) //参数:采样通道 { (2)读取A/D转换数值子程序 int ReadAdc(int ch) //参数:采样通道 { int i;static int prevCh=-1; if(prevCh!=ch) { rADCCON=0x0| (ch2); //设置采样通道 for(i=0;i150;i++); //等待最小15μs } rADCCON=0x1| (ch2); //启动A/D转换 while(rADCCON 0x1); //为避免第一个标志位有错 //(在一个ADC时钟周期内将START开始位清零.) while(! (rADCCON 0x40));//A/D转换是否结束? for(i=0;irADCPSR;i++); //为避免第二个标志位有错 prevCh=ch; return rADCDAT; //返回转换结果 } * 4.12 其他接口管理 A/D转换器 -------- 概述 S3C44B0X内部ADC的结构 4.12 其他接口管理 A/D转换器 -------- ADC相关的寄存器 (1) A/D 转换控制寄存器(ADCCON) (2) A/D 转换预分频寄存器 (ADCPSR) ADCPSR是A/D转换预分频寄存器,存放8位预分频值0~255,初始值为0。 (3) A/D 转换数据寄存器 (ADCDAT) A/D转换结束,可以从ADCDAT读出转换数据,ADCDAT转换数据寄存器是10位值。 表11-3 ADCCON转换控制寄存器 0 通过使能操作启动A/D转换操作 如果读启动位置1,则该位无效 0:无操作 1:启动转换且启动后清零 [0] 使能启动 00 通过读操作启动A/D转换操作 0:禁止 1:允许 [1] 读启动 00 输入选择 000:AIN0 001:AIN1 010:AIN2 011:AIN3 100:AIN4 101:AIN5 110:AIN6 111:AIN7 [4:2] 输入选择 1 降低系统功耗 0:正常模式 1:睡眠模式 [5] 睡眠 0 ADC状态标志(只读) 0:正在进行A/D转换 1:A/D转换结束 [6] 标志 初 态 描 述 位 ADCCON *

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档