将PIC16C711片内8位A/D提高到11位的方法

发布者:pengbinyyy最新更新时间:2010-02-09 来源: 机电论文关键字:A/D  单片机  PIC16C711  CD4051 手机看文章 扫描二维码
随时随地手机看文章
      目前,单片机中嵌入的A/D一般为8位到10位,难以满足信号处理应用中高分辨率的要求;而外接高分辨率的A/D将使成本明显提高,因为A/D转换器的价格将随其位数的增加而成倍增加。本文介绍一种提高PIC16C711单片机片内A/D分辨率的方法,将PIC16C711片内的8位A/D提高到11位。这种方法在PIC系列的其他单片机也适用。

  美国Microchip公司推出的8位单片机PIC16C711是一种性能价格比很高的单片机。它价格低、封装小、采用CMOS工艺,具有OTP型,开发起来很方便。它内含4路8位高速A/D,将它扩展到11位后,可以大大提高单片机应用系统的性能价格比。

一、硬件电路

  实现扩展的原理图如图1所示。8个等值的精密电阻R将0~5V基准电压分割成8档,每档范围为0.625V。8个抽头分别接CD4051八选一模拟开关的8个输入端,通道选择控制端C,B,A分别由PIC16C711单片机的RB2,RB1, RB0控制。IC2和IC3为高输入阻抗运放,IC2构成跟随器,IC3构成精密差分放大器。

二、工作原理

  实现11位A/D转换由PIC16C711做2次8位A/D转换完成。PIC16C711 有4个模拟量输入通道RA0~RA3,这些模拟量输入通道复用1个采样保持器进入到A/D转换器。参考电压Vref可以来自外部也可以来自内部VDD, A/D转换器属于逐次逼近式,转换结果(8位)存入ADRES寄存器。在A/D转换前必然选择适当的通道,设置足够的采样时间。用户可以通过设置A/D控制寄存器ADCON0和ADCON1来控制其转换过程,同时A/D转换的状态也会在ADCON0中体现出来。

  先将待转换的电压Vi送到PIC16C711的RA0通道做一次A/D转换。根据转换所得的数字量由软件算出Vi在8档中位置,用Vi减去Vi所在档的起始电压。将所得差值放大8位,使之变为0~5V电压信号,再送给PIC16C711的 RA1通道做1次A/D转换,所得数字量是11位AD转换的低8位,而档位CBA就是高3位,从而实现11位A/D转换。

  举例说明如下:假设输入电压Vi为3V,程序控制PIC16C711的RA0通道先进行第 1次A/D转换,所得结果是153,即3/5×255=153,对应8位数字量为10011001。将低5位屏蔽,得10000000,循环右移5次,得 00000100,此时低3位对应的就是Vi=3V电压时的档位,即第4档,CBA=100,程序将该档位由RB2,RB1,RB0输出,作为8选一模拟开关的通道选择,使CD4051输出2.5V,即5/8×4=2.5V。该电压经IC2运放跟随,再经IC3进行差分放大。设计时调整R11,R12, R13和R14的阻值,使放大倍数为8位,则得放大器IC3输出Vo=8(Vi-2.5)=8(3-2.5)=4.0V。选择RA1通道进行第2次A/D 转换,结果为11001100,这就是11位A/D转换结果的低8位。档位100为11位A/D转换的高3位,合起来就是11位A/D转换的结果 10011001100。

三、程序

  以下是使用PIC16C711指令系统完成11位A/D转换的程序段。

  BSF STATUS,RP0;选页面1

  MOVLW 00000010B ;RA0、RA1为模拟通道

  MOVWF ADCON1 ;内部参考电压

  BCF STATUS,RP0 ;选页面0

  MOVLW 11000001B ;选RA0通道和内部时钟

  MOVWF ADCON0

  MOVLW .125 ;延时125μs,等待输入

  CALL WAIT ;稳定

  BSF ADCON0,GO ;启动A/D

  LOOP BTFSC ADCON0,GO ;判断A/D完成否

  GOTO LOOP

  MOVF ADRES,W ;取转换结果

  ANDLW 0E0 ;屏蔽低5位

  MOVWF D1 ;存入D1

  BCF STATUS,C

  RRF D1,1 ;右移5次

  RRF D1,1

  RRF D1,1

  RRF D1,1

  RRF D1,1

  MOVF D1,W

  MOVWF PORTB ;档位输出

  MOVLW 11001001B ;选RA1通道

  MOVWF ADCON0

  MOVLW .60 ;延时60μs

  CALL WAIT

  BSF ADCON0,GO ;启动A/D

  LOOP1 BTFSC ADCON0,GO ;判断A/D完成否

  GOTO LOOP1

  MOVF ADRES,W ;A/D转换结果存D0

  MOVWF D0

  WAIT MOVWF TEMP ;延时子程序

  NEXT DECFSZ TEMP,1

  GOTO NEXT

  RETURN

  用这种方法实现的11位A/D转换速度快PIC16C711基本上都是单周期指令,在4MHz振荡频率下指令周期1μs,进行1次A/D转换最短时间20μs;2次A/D转换40μs;2个运放变换时间20μs×2=40μs。总的转换时间为百μs级。

  本文介绍的方法电路简单,速度快,调试方便,已用于我们研制的单片机电阻炉温自动控制系统中,取得了预期的效果。对于其他带8位、10位A/D的单片机稍加改动均可使用,具有推广价值。

关键字:A/D  单片机  PIC16C711  CD4051 引用地址:将PIC16C711片内8位A/D提高到11位的方法

上一篇:基于PIC单片机的墨斗操作台系统的设计
下一篇:基于PIC芯片嵌入式电机控制器的研究

推荐阅读最新更新时间:2024-03-16 12:28

单片机读入4*4矩阵键盘
一、什么是矩阵键盘 矩阵键盘是单片机外部设备中所使用的排布类似于矩阵的键盘组,由于电路设计时需要更多的外部输入,单独的控制一个按键需要浪费很多的IO资源,所以就有了矩阵键盘,常用的矩阵键盘有4*4和8*8,其中用的最多的是4*4。 网上搜了两张实物图,大家可以看看 看上图就知道,4*4键盘还是很多地方用到的吧^_^ 二、矩阵键盘的原理 矩阵键盘又称为行列式键盘,它是用4条I/O线作为行线,4条I/O线作为列线组成的键盘。 在行线和列线的每一个交叉点上,设置一个按键。这样键盘中按键的个数是4×4个。 这种行列式键盘结构能够有效地提高单片机系统中I/O口的利用率。由于单片机IO端口具 有线与的功能,因此当任意一个按键按下时
[单片机]
<font color='red'>单片机</font>读入4*4矩阵键盘
89C51单片机中断知识要点
(图为89C51引脚图) 1、 89C51单片机中共有5 个中断源:两个外部中断,两个定时/计数器中断(溢出),一个串行口中断。 2、 单片机中断系统中有两种不同类型的中断:一种称为非屏蔽中断,用户不能用软件方法加以禁止;另一种称为屏蔽中断,本文描述的都是这种类型。 二、控制字 1、 外部中断。单片机的12、13(P3.2、P3.3)脚引入,名称为INT0、INT1。以上的TCON寄存器用于控制外部中断。 IT0:INT0的触发方式。0表示低电平触发;1表示负跳变触发。 IE0:有外部中断进入时,该位置1。CPU响应后自动清0。 2、 内部中断。TCON寄存器,定时器中已描述。 3、 串行口中断。 4、 中断允许寄存器
[单片机]
89C51<font color='red'>单片机</font>中断知识要点
国产MCU的GD32E230串口通信
之前一直使用ST的STM32F031单片机,但是由于疫情还是啥啥原因,ST的芯片价格涨得没法看,因为我们是做产品,而且量比较大,ST的芯片就无法再用了,这个成本真的扛不起。 于是在很多国产MCU里面做了甄选,最终GD的因为新能优越,价格便宜获选。GD32E230对标的STM32F031,实现了PIN TO PIN兼容,寄存器不是完全兼容,但是GD的主频可以实现72M,这就很恐怖,STM32F031才48M,之前还得超频到56M使用。不得不说,GD强! 仅仅对比固件库,GD的库函数封装的比ST的库要好很多,当然,ST现在主推HAL库,这个HAL库确实也很好。 在使用串口之前同样要配置引脚,时钟。 GPIO引脚配置 void
[单片机]
国产<font color='red'>MCU</font>的GD32E230串口通信
单片机CF卡接口设计
  引言   CF 卡(compact flash card)是专门为海量存储而设计的专用设备,其标准由国际CFA (compact flash association)联合会维护和管理。CF卡中不仅有海量存储专用的Flash芯片,还包括一个片上智能控制器,这样就为计算机宿主机提供了一个高级的应用接口来方便地对其进行读写控制与操作。这个接口让宿主计算机能够像读取硬盘那样,用硬盘操作专用命令对CF进行控制。CF卡每一个字段(512字节)都有一个强劲的纠错码。CF卡具有体积小、存储量大、安全可靠、价格低廉、读写速度快的优点,越来越被消费者所认可,众多的娱乐电子设备生产厂商都支持CF卡接口。目前许多消费类嵌入式系统产品,如数码摄像机
[嵌入式]
ST发布首批基于超低功耗平台的8位MCU
世界领先的微控制器厂商意法半导体(纽约证券交易所代码:STM)宣布,首批整合其高性能8位架构和最近发布的超低功耗创新技术的8位微控制器开始量产。以节省运行和待机功耗为特色,STM8L系列下设三个产品线,共计26款产品,涵盖多种高性能和多功能应用。 设计工程师利用全新的STM8L系列可提高终端产品的性能和功能,同时还能满足以市场为导向的需求,例如,终端用户对节能环保产品的需求,便携设备、各种医疗设备、工业设备、电子计量设备、感应或安保设备对电池使用周期的要求。设计人员将选择STM8L这类超低功耗的微控制器,以符合低功耗产品设计标准,如“能源之星”、IEA的“1W节能计划”或欧盟的EuP法令,。 “意法半导体在
[单片机]
ST发布首批基于超低功耗平台的8位<font color='red'>MCU</font>
基于单片机的FPGA并行配置方法
在当今变化的市场环境中,产品是否便于现场升级、是否便于灵活使用,已成为产品能否进入市场的关键因素。在这种背景下,Altera公司的基于SRAM LUT结构的FPGA器件得到了广泛的应用。这类器件的配置数据存储在SRAM中。由于SRAM的掉电易失性,系统每次上电时,必须重新配置数据,只有在数据配置正确的情况下系统才能正常工作。这种器件的优点是可在线重新配置ICR(In-Circuit Reconfigurability),在线配置方式一般有两类:一是通过下载电费由计算机直接对其进行配置;二是通过微处理器对其进行配置。前者调试时非常方便 ,但在应用现场是很不现实的。因此,如果系统重新上电时,系统本身具有自动加载可编程逻辑器件的编程文件
[单片机]
用C51系列单片机设计物体分级设备的测量光幕
1引言 光幕是电子测量系统中应用比较多的一种设备。利用光幕可以测量恒速传送带上的物体高度、长度或宽度等一系列数据,以便为后面的电子系统提供相应的参数。本文给出了一种利用单片机实现物体高度测量的光幕测量方法。 2光幕测量物体高度的基本原理 图1所示是一个用普通光幕测量物体高度的测试原理结构示意图。图中,光幕的一边等间距安装有多个红外发射管,另一边相应的有相同数量同样排列的红外接收管,每一个红外发射管都对应有一个相应的红外接收管,且安装在同一条直线上。当同一条直线上的红外发射管、红外接收管之间没有障碍物时,红外发射管发出的调制信号(光信号)能顺利到达红外接收管。红外接收管接收到调制信号后,相应的电路输出低电平,而在
[单片机]
用C51系列<font color='red'>单片机</font>设计物体分级设备的测量光幕
单片机POCSAG码检错及纠错
*/ ***** POCSAG码检错及纠错 ***** /* */运行结果:Flag_Bits.VER_ER=0,接收正确或错码已被纠正;       Flag_Bits.VER_ER=1,接收出错且无法纠正;       已完整接收的码字:Code_Reg/* unsigned long Code_Reg;  */Code_Reg:存放接收近来的POCSAG码字;/* */纠错用的错误图样数组/* const unsigned int Err_s ={0x3B4,0x1DA,0xED,0x3C2,0x1E1,0x344,0x1A2,0xD1,0x3DC,0x1EE,0xF7, 0x3CF,0x253,0x29D,0x2FA,0
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved