C8051F020中的ADC应用要素
发布时间:2008/5/26 0:00:00 访问次数:1101
    
    
     来源:单片机与嵌入式系统应用 作者:汪滨琦 陈红伟 姜广文
    
     摘要:归纳soc型芯片c8051f020中模数转换部分的应用要素,包括精度与通道、速率与启动、基准与增益、数据与控制,提出编程及相关sfr的操作顺序。
    
     c8051f020(简称f020)是美国德州cygnal公司推出的一种混合信号soc型8位单片机。它属于c8051f系列中的f02x子系列。其性能价格比在目前应用领域极具竞争力。f020具有8路12位a/d转换(简称adc)接口和8路8位在线可编程(isp)的adc电路,片上的特殊功能寄存器(简称sfr)有15个与adc的控制相关,它们是:
    
     amux0sl——amux0通道选择寄存器,复位值为00000000;
    
     max0cf——amux0配置寄存器,复位值为00000000;
    
     adc0cf——adc0配置寄存器,复位值为11111000;
    
     adc0cn——adc0控制寄存器,复位值为00000000;
    
     adc0h——adc0数据字msb寄存器,复位值为00000000;
    
     adc0l——adc0数据字lsb寄存器,复位值为00000000;
    
     adc0gth——adc0下限数据高字节寄存器,复位值为11111111;
    
     adc0gtl——adc0下限数据低字节寄存器,复位值为11111111;
    
     adc0lth——adc0上限数据高字节寄存器,复位值为00000000;
    
     adc0ltl——adc0上限数据低字节寄存器,复位值为00000000;
    
     amx1sl——amux1通道选择寄存器,复位值为00000000;
    
     adc1cn——adc1控制寄存器,复位值为00000000;
    
     adc1cf——adc1配置寄存器,复位值为11111000;
    
     adc1——adc1数据字寄存器,复位值为00000000;
    
     ref0cn——基准电压控制寄存器,复位值为00000000。
    
     adc是混合信号控制器的重要功能,如欲在应用编程中得心应手,就必须对其相关的要素有较清晰的整体认识。
    
     1 adc的精度与通道
    
     f020采用tqfp100封装,芯片引脚有8个(引脚18~25)专用于模拟输入,是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端口的每一对均可用编程设置成为分别地单端输入或差分输入。差分输入时的端口配对为0-1、2-3、4-5、6-7,此设置由通道选择寄存器amux0sl的低4位和通道配置寄存器amux0cf的低4位确定。在amx0cf中,位3~0各对应2个引脚通道。位值=0,表示是独立的单端输入(复位值均为单端输入);位值=1,表示是差分输入对。对应amx0cf选差分输入时,amux0sl中只有在选双数(含0)通道时才有效(注:amux0sl低4位为1xxx时,不论amx0cf低4位为何值,均选温度传感器)。
    
     将ref0cn的位3置“1”时,允许使用温度传感器;置“0”时,温度传感器的输出为高阻态。温度传感器的值可用于修正参数的非线性或记录、调整与温度相关的数据。
    
     2 adc的速率与启
    
    
     来源:单片机与嵌入式系统应用 作者:汪滨琦 陈红伟 姜广文
    
     摘要:归纳soc型芯片c8051f020中模数转换部分的应用要素,包括精度与通道、速率与启动、基准与增益、数据与控制,提出编程及相关sfr的操作顺序。
    
     c8051f020(简称f020)是美国德州cygnal公司推出的一种混合信号soc型8位单片机。它属于c8051f系列中的f02x子系列。其性能价格比在目前应用领域极具竞争力。f020具有8路12位a/d转换(简称adc)接口和8路8位在线可编程(isp)的adc电路,片上的特殊功能寄存器(简称sfr)有15个与adc的控制相关,它们是:
    
     amux0sl——amux0通道选择寄存器,复位值为00000000;
    
     max0cf——amux0配置寄存器,复位值为00000000;
    
     adc0cf——adc0配置寄存器,复位值为11111000;
    
     adc0cn——adc0控制寄存器,复位值为00000000;
    
     adc0h——adc0数据字msb寄存器,复位值为00000000;
    
     adc0l——adc0数据字lsb寄存器,复位值为00000000;
    
     adc0gth——adc0下限数据高字节寄存器,复位值为11111111;
    
     adc0gtl——adc0下限数据低字节寄存器,复位值为11111111;
    
     adc0lth——adc0上限数据高字节寄存器,复位值为00000000;
    
     adc0ltl——adc0上限数据低字节寄存器,复位值为00000000;
    
     amx1sl——amux1通道选择寄存器,复位值为00000000;
    
     adc1cn——adc1控制寄存器,复位值为00000000;
    
     adc1cf——adc1配置寄存器,复位值为11111000;
    
     adc1——adc1数据字寄存器,复位值为00000000;
    
     ref0cn——基准电压控制寄存器,复位值为00000000。
    
     adc是混合信号控制器的重要功能,如欲在应用编程中得心应手,就必须对其相关的要素有较清晰的整体认识。
    
     1 adc的精度与通道
    
     f020采用tqfp100封装,芯片引脚有8个(引脚18~25)专用于模拟输入,是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端口的每一对均可用编程设置成为分别地单端输入或差分输入。差分输入时的端口配对为0-1、2-3、4-5、6-7,此设置由通道选择寄存器amux0sl的低4位和通道配置寄存器amux0cf的低4位确定。在amx0cf中,位3~0各对应2个引脚通道。位值=0,表示是独立的单端输入(复位值均为单端输入);位值=1,表示是差分输入对。对应amx0cf选差分输入时,amux0sl中只有在选双数(含0)通道时才有效(注:amux0sl低4位为1xxx时,不论amx0cf低4位为何值,均选温度传感器)。
    
     将ref0cn的位3置“1”时,允许使用温度传感器;置“0”时,温度传感器的输出为高阻态。温度传感器的值可用于修正参数的非线性或记录、调整与温度相关的数据。
    
     2 adc的速率与启
上一篇:HMAC认证协议的单片机实现