c8051f系列单片机实战应用锦集c8051f020中的adc要素_第1页
c8051f系列单片机实战应用锦集c8051f020中的adc要素_第2页
c8051f系列单片机实战应用锦集c8051f020中的adc要素_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C8051F020 中的 ADC 应用要素哈尔滨工程大学摘要:归纳SOC 型C8051F020 中模数转换部分的应用要素,包括精度与通道、速率与启动、基准与增益、数据与控制,提出编程及相关SFR 的操作顺序。:片上系统(SOC) A/D 转换(ADC) 特殊功能寄存器(SFR)C8051F020(简称F020)是德州Cygnal 公司推出的一种混合信号SOC 型8 位单片机。它属于C8051F系列中的F02X 子系列。其性能价格比在目前应用领域极具竞争力。F020 具有8路 12位 A/D 转换(简称 ADC)接口和8路8 位可编程(ISP)的ADC 电路,片上的特殊功能寄存器(简称SFR)有

2、 15 个与ADC 的控制相关,它们是:AMUX0SLAMUX0 通道选择寄存器,复位值为 00000000;AMX0CFAMUX0 配置寄存器,复位值为 00000000;ADC0CFADC0 配置寄存器,复位值为 11111000;ADC0 控制寄存器,复位值为 00000000;ADC0HADC0 数据字MSB 寄存器,复位值为 00000000;ADC0LADC0 数据字LSB 寄存器,复位值为 00000000;ADC0GDC0 下限数据高字节寄存器,复位值为 11111111;ADC0GTL-ADC0 下限数据低字节寄存器,复位值为 11111111;ADC0LDC0 上限数据高字

3、节寄存器,复位值为 00000000;ADC0LTLADC0 上限数据低字节寄存器,复位值为 00000000;AMX1SLAMUX1 通道选择寄存器,复位值为 00000000;ADC1 控制寄存器,复位值为 00000000;ADC1CFADC1 配置寄存器,复位值为 11111000;ADC1ADC1 数据字寄存器,复位值为 00000000;基准电压控制寄存器,复位值为 00000000;ADC 是混合信号控制器的重要功能,如欲在应用编程中得心应手,就必须对其相关的要素有较清晰的整体认识。1、 ADC 的精度与通道F020 采用 TQFP100 封装,引脚有 8 个(引脚 18-25)

4、于模拟输入,是8路 12 位 ADC 的输入端。每路 12 位的转换精度都是其自身的1LSB(最低位)。实际上,对应 12 位逐次逼近寄存器型(SAR)ADC只有1 个,在它与各输入端之间有 1 个具有 9 通道输入的多路选择开关(可配置模拟多路开关 AMUX)。AMUX的第 9 通道连接温度传感器。在F020 是中,12 位ADC 称为ADC0,另有8路8 位在系统可编程(ISP)的ADC 电路称为ADC1。其 8 个外接引脚与P1 口复用,片内结构与ADC0 相近,只是转换的位数为 8 位,转换精度为 8 位的1LSB。ADC0 端口的每一对均可用编程设置成分别地单端输入或差分输入。差分输

5、入时的端口配对为 0-1、2-3、4-5、6-7,此设置由通道选择寄存器 AMUX0SL 的低 4 位和通道配置寄存器AMUX0CF 的低 4 位确定。在 AMX0CF中,位 30 各对应 2 个引脚通道。位值0,表示是独立的单端输入(复位值均为单端输入);位值1,表示是差分输入对。对应 AMX0CF 选差分输入时,AMUX0SL 中只有在选双数(含 0)通道时才有效(注:AMUX0SL低 4 位为 1时,不论AMX0CF 低 4 位为何值,均选温度传感器)。将的位 3 置1时,允许使用温度传感器;置 0时,温度传感器的输出为高阻态。温度传感器的值可用于修正参数的非线性或、调整与温度相关的数据

6、。2、 ADC 的速率与启动C8051F 系列单片机中ADC 的速率都是可用编程设置的,但最少要用 16 个系统时钟。一般在转换之前还自动加上 3 个系统时钟的/保持捕获时间(1.5s)。设置F020 内ADC 速率的方法是通过配置寄存器ADCxCF(x为0或 1)的位 73 来进行的,其复位值为 11111(位 73=SYSCLK/CLKSAR-1)。一般在启动ADC 之前都要处于方式,控制寄存器的位 6 如果为0,则一直处于方式(此时启动 4 种启动方式都可比启动快 3 个系统时钟);如为1,则有 4 种启动方式可选择,即对中的位 32 赋值;00 为向ADBUSY 写 1 时软件命令);

7、01 为定时器 3 溢出;10 为CNVSTR上升沿(外部信号);11 为定时器 2 溢出。复位时,的位 7 为 0,处于关断状态。每次转换结束时,的位 5 为1,位 4(忙标志)的下降沿触发结束中断,也可用软件查询这些状态位。3、 ADC 的基准与增益F020 的片内有 1 个 1.2V、1510-6/的带隙电压基准发生器和 1 个两倍增益的输出缓冲器。2.4V 的基准电压(VREF)可通过外引脚分别接入ADC0、ADC1 和DAC 中。VREF 对外带载能力为 200A(建议在驱动外部负载时,对地接 1 个负载电阻)。ADC 使用偏置时,必须将参考源控制寄存器中的位 1 置于1;如置于0,

8、则关闭内部偏压,此时可通过VREF 引脚(引脚 12)使用外部基准电压,外部基准电压必须小于VAV0.3V(还要大于 1V)。不用ADC,也不用DAC 时,可将的位 0 置0,使缓冲放大器处于省电方式(输出为高阻态)。设置的位 4 为0时,ADC0 用VREF 偏置,为1时,用DAC0 输出偏置;设置为的位 3为0时,ADC1 用VREF 偏置,为1时,用AV+偏置。在F020 的ADC 电路中,输入多路选择开关 AMUX 后面都带有 1 个可用编程设置增益的内部放大器(PGA)。当各模拟通道之间输入的电压信号范围差距较大时,或需要放大一个具有较大直流偏移的信号时(在差分输入方式,DAC 可用

9、于提供直流偏移)显得尤为有用。设置的方式是配置ADCxCF 中的位 20(000 对应PGA的增益为 1;001 对应为 2;010 对应 4;011 对应为 8;10 x 对应为 16、11x 对应为 0.5)。这里的增益对温度传感器信号也起作用。当增益为 1 时,VTEMP=0.002 86(V/)(TEMPC)+0.776V。4、 ADC 的数据与控制对应单端输入,ADC 结果数据字格式为:0V-0000,VREF-0或0。对应差分输入,ADC 结果数据字格式为 2 的补码:VREF-07FF,0-0000,-VREF-F800 或 8000。将的位 0 置0可使结果右对齐;置1可使结果

10、左对齐。当差分输入时,右对齐产生的多余是符号扩展位。C8051F 系列单片机内还设有数据相关窗口中断发生器或称可编程窗口检测器,也叫ADC 上(下)数据寄存器ADC0G(L)TH(L),用方式监视一个关键电压。当转换数据位于规定的窗口之内(或之外)时,向控制器申请转换结束中断。要求在窗口之内中断时,上限寄存器LT 装入窗口数,下限寄存器GT 装入低位窗口数;若要求在窗口之外中断时,则在下限寄存器GT 中装入窗口数,在上限寄存器LT中装入下限窗口数。复位时,ADC 部分的状态为:内部电压基准缓冲器关闭、内部偏压关闭、内部传感器关闭、ADC、转换结果数据寄存器右对齐、12 位的端口均为单端输入、端口指向AIN0、SAR 转换时钟为 33 个系统时钟、内部放大器增益为 1、下限数据寄存器为FH、上限数据寄存器为 0000H。综合F020 中与 ADC 相关的各要素,要想正确应用 ADC 功能,应按下列顺序编程:设置参考电压设置允许ADC设置(启动)方式设定数据对齐配置通道选择通道设置转换时钟和增益设定窗口检测上、下限启动转

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论