没有合适的资源?快使用搜索试试~ 我知道了~
介绍一种将PIC16C711片内8位A/D提高到11位的方法。此方法电路简单,速度快,可提高单片机应用系统的性能价格比,具有一定的推广价值。
资源推荐
资源详情
资源评论
提高提高PIC16C711单片机片内单片机片内A/D分辨率的方法分辨率的方法
介绍一种将PIC16C711片内8位A/D提高到11位的方法。此方法电路简单,速度快,可提高单片机应用系统的性
能价格比,具有一定的推广价值。
目前,
美国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控制寄存器
先将待转换的电压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 ;内部参考电压
资源评论
weixin_38741759
- 粉丝: 3
- 资源: 964
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功