基于PIC单片机和AD7705的高精度信号采集系统设计
在工业现场测试过程中,由于生产中的各种参数的测试数据对生产过程具有重要的意义,因此对各种测试数据精度要求较高。而对于传统的传感器,比如压阻式、应变桥式、热电偶、热电阻、电容式以及压电式传感器,输出的一般是毫伏级的微弱模拟信号,温度特性差,而且在传输过程中信噪比明显降低。因此需要设计高精度稳定性强的信号采集系统进行采集。然而采用以往的积分型和逐次比较型A/D实现高精度信号采集的难度较大且成本很高。近年来兴起的∑-△A/D转换技术却能以较低的成本获取极高的分辨率。AD7705便是一款比较典型的高性能16位∑-△A/D转换芯片。
本设计采用AD7705为A/D转换器,配合8位高性能PIC单片机PIC18F458组成高精度信号采集系统。硬件电路设计方面在单片机与AD7705典型应用电路的基础上做了改进,加入了光电隔离、电压检测复位等电路,使系统采集信号的精准度和可靠性都有了很大的提高,软件设计方面给出了关键部分的程序清单。目前该系统已经成功应用于某智能仪表中,在工业现场的表现良好。
1 关键器件选型
1.1 AD770S概述
AD7705芯片是带有自校正功能的∑-△16位A/D转换器,如图1所示。它包括由缓冲器和增益可编程放大器(PGA)组成的前端模拟调节电路、∑-△调制器以及可编程数字滤波器等,能直接将传感器的不同摆幅范围内的信号放大到接近A/D转换器的满标度电压附近再进行A/D转换,还可选择输入模拟缓冲器,以及自校准和系统校准方式。此外它还具有高分辨率、宽动态范围、校准、低功耗及优良的抗噪声性能,因此非常适用于仪表测量和工业控制等领域。
1.2 PIC18F458的特点
作为中高端的8位PIC系列单片机,PIC18F458是高性能的RISC CPU。具有高达2 MB的程序存储器:4 KB的数据存储器;高达10MIPS的执行速度;DC~40 MHz时钟输入;4~10MHz带PLL锁相环有源晶振/时钟输入;16位宽指令,8位宽数据通道;带优先级的中断;8x8单周期硬件乘法器。该款单片机不仅集成了强大的外围功能模块(增强型捕捉输入功能、脉宽调制(PWM)输出部件、I2C和SPI接口以及可寻址的通用同步/异步接收发送器(USART)串行通信接口),而且因其特殊的单片机特性(自振式看门狗、可编程代码保护功能、休眠省电方式等)及先进的fl-ash技术(低功耗、高增强型flash技术,全静态设计,2.0~5.5 V宽范围的工作电压,工业级和扩展级温度范围),可以适用各种工业控制场合。
本系统使用PIC18F458作为主控制芯片,选取此芯片与AD7705配合组建信号采样系统,不仅是因为PIC18F458自身配备的主同步串行端口MSSP具有SPI工作方式,而且更重要的是该单片机的高性能能够对采集到的信号进行更加有效的处理,便于系统的进一步扩展。
2 系统设计
2.1 硬件电路设计
该系统设计用于采集氧电势和温度的模拟信号,二者分别是氧传感器和K型热电偶的输出信号。其中氧电势信号的输出范围是0~1.25 V,温度信号的输出范围是0~50 mV,系统原理框图如图2所示。
2.1.1 AD7705及前端采集电路
图3为AD7705的外围电路及系统的前端采集电路。氧电势和温度信号首先要进入滤波电路去除干扰杂波然后进行精密放大,这里采用低功耗双运算放大器MCP602和反馈电阻组成放大电路,MCP602具有偏置电流低、运行速度快、开环增益高以及满幅输出等特点,而且其很宽的带宽非常适用于A/D转换器的驱动放大器。由于提供给AD7705的基准电压是2.5 V,调节反馈电阻使氧电势和温度放大后的信号V_01和V_02都在0~2.5 V之间。
基准电压在AD7705的外围电路中最为重要,它直接影响数据采集的精准度,这里采用的是高精度2.5 V参考电压源MCP1525,它采用先进的CMOS电路设计和EPROM存储方式,在时间和温度稳定性上具有明显优势,并且在工业级温度范围-40~+85℃范围内可正常工作,为系统信号采集的精准度提供有力保障。
值得注意的是在设计AD7705印刷板电路时必须讲究布线技巧,布线的好坏直接影响数据转换精度,甚至会引起芯片工作失常。经验表明,AD7705应该布设在一个相对独立和集中的区域,数字区和模拟区尽可能在底面分开布线,模拟接地与数字接地应只在一个点连接在一起,所有电源都要加电容去耦电路,电容器尽可能靠近芯片的电源输入端。
2.1.2 光电隔离电路
为了提高通讯接口在工业现场的抗干扰能力,采用光电隔离器件是一种简单而有效的方法,这里采用的是高速光耦6N136,如图4所示,它能够在对通讯接口进行光电隔离的同时不会影响通讯速率,可以使系统在不降低采集效率的情况下提高可靠性。由于光耦两侧的电源和地是要完全分开的,因此设计了两路电源,使6N136能达到最佳隔离效果。在设计印刷板电路时要特别注意6N136底下不能走数据线,这样会引入干扰导致数据采集跳动。
2.1.3 单片机复位电路
由于工业现场环境复杂,简单的RC复位电路在强干扰情况下会使单片机复位引脚电压意外跌落,造成单片机工作不正常。为了解决这一问题,这里采用电压检测复位芯片HT7044,它能够检测4.5 V的固定电压并具有稳压功能,可以满足系统设计稳定性的要求,如图5所示。
2.2 软件设计
AD7705内部只有一套模数转换电路,通道1和通道2的选择通过软件设置进行切换,实际应用中往往需要对不同通道采取不同的增益,动态地对AD7705进行增益、通道设置,很灵活方便地达到这一目的。使用AD7705之前,首先要对所有寄存器进行设置,才能保证器件正常工作。在实际使用中,首先选择模拟输入模式(单极性还是双极性)、是否需要缓冲、时钟分频和输出更新速率;根据外部输入信号的幅度来决定设置器件的增益值。
该系统中的AD7705在应用中选择输入通道单极性、初始增益等于1、数据更新速率为500 Hz。AD7705的读写操作严格按照时序进行,图6和图7给出了AD7705的读和写时序图。根据实际确定所有参数以后,对AD7705芯片进行设置,参数设置方法比较独特,在设置参数之前,首先对通信寄存器进行一次写操作,来决定下一个是什么样的寄存器和什么样的操作内容,再进行下一步的参数写入,图8给出了AD7705初始化及读取数据流程图,读者可参考下面的AD7705初始化程序。
初始化以后,单片机就可以从模数转换器中读数据,读取数据之前必须确定数据寄存器的状态,DRDY引脚处于低电平时表示数据转换已经完成,可以读取数据。为了便于读者理解,给出读数据寄存器的函数原代码如下:
3 结束语
该系统实现了高效率和高精度的信号采集,具备很强的抗干扰能力。目前已经成功应用于某智能仪表,使智能仪表在工业现场采集信号精度得到提高的同时控制精度也相应得到提高,并且仪表运行的可靠性和安全性得以增强,实现了一定的应用价值,具有非常广阔的应用前景。
pic单片机与51单片机的对比,附pic单片机命名规则
pic单片机是当前最实用工具之一,而对于pic单片机的探讨往往与其他类型单片机相联系。本文中,将讨论pic单片机和51单片机谁更易于学习,以此帮助大家增进对pic单片机的理解。
51好学一些,但是PIC也没比51难多少。首先,PIC比51多个配置位,这个基本上看看就懂了。然后,PIC的端口要配置成输入或者输出,51单片机则不用。PIC的中断没有优先级,需要软件判断。最后,PIC比51多许多寄存器,你要使用PIC的各种功能,都需要去初始化寄存器。
再说说PIC相比与51单片机有哪些优点:
1:相同的晶振情况下,PIC比51速度快,PIC4个时钟周期为一个指令周期,51是12个。
2:PIC比51功能强大许多,比如自带AD转换,自带PWM,内置弱上拉(需设置)LCD接口等。。这样,你在用到许多功能的时候就很方便啦,不用去接很多外围电路。
3:PIC的驱动能力比51强,PIC可直接驱动数码管,51有些吃力哦。
4:PIC的抗干扰能力比51好,这个我们公司做过试验的。
综合上述,小编建议你学习PIC。
51单片机概述
51单片机是对所有兼容Intel8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8004单片机,后来随着Flashrom技术的发展,8004单片机取得了长足的进展,成为应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。很多公司都有51系列的兼容机型推出,今后很长的一段时间内将占有大量市场。51单片机是基础入门的一个单片机,还是应用最广泛的一种。需要注意的是51系列的单片机一般不具备自编程能力。
51单片机的主要功能
·8位CPU·4kbytes程序存储器(ROM)(52为8K)
·256bytes的数据存储器(RAM)(52有384bytes的RAM)
·21个专用寄存器
·2个可编程定时/计数器·5个中断源,2个优先级(52有6个)
·一个全双工串行通信口
·外部数据存储器寻址空间为64kB
·外部程序存储器寻址空间为64kB
·逻辑操作位寻址功能·双列直插40PinDIP封装
·单一+5V电源供电
CPU:由运算和控制逻辑组成,同时还包括中断系统和部分外部特殊功能寄存器;
RAM:用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据;
ROM:用以存放程序、一些原始数据和表格;
I/O口:四个8位并行I/O口,既可用作输入,也可用作输出;
T/C:两个定时/记数器,既可以工作在定时模式,也可以工作在记数模式;
五个中断源的中断控制系统;
一个全双工UART(通用异步接收发送器)的串行I/O口,用于实现单片机之间或单片机与微机之间的串行通信;
片内振荡器和时钟产生电路,石英晶体和微调电容需要外接。最高振荡频率为12M。
PIC单片机特点或优势
1)PIC最大的特点是不搞单纯的功能堆积,而是从实际出发,重视产品的性能与价格比,靠发展多种型号来满足不同层次的应用要求。就实际而言,不同的应用对单片机功能和资源的需求也是不同的。比如,一个摩托车的点火器需要一个I/O较少、RAM及程序存储空间不大、可靠性较高的小型单片机,若采用40脚且功能强大的单片机,投资大不说,使用起来也不方便。PIC系列从低到高有几十个型号,可以满足各种需要。其中,PIC12C508单片机仅有8个引脚,是世界上最小的单片机。
该型号有512字节ROM、25字节RAM、一个8位定时器、一根输入线、5根I/O线,市面售价在3-6元人人民币。这样一款单片机在象摩托车点火器这样的应用无疑是非常适合。PIC的高档型号,如PIC16C74(尚不是最高档型号)有40个引脚,其内部资源为ROM共4K、192字节RAM、8路A/D、3个8位定时器、2个CCP模块、三个串行口、1个并行口、11个中断源、33个I/O脚。这样一个型号可以和其它品牌的高档型号媲美。
2)精简指令使其执行效率大为提高。PIC系列8位CMOS单片机具有独特的RISC结构,数据总线和指令总线分离的哈佛总线(Harvard)结构,使指令具有单字长的特性,且允许指令码的位数可多于8位的数据位数,这与传统的采用CISC结构的8位单片机相比,可以达到2:1的代码压缩,速度提高4倍。
3)产品上市零等待(Zerotimetomarket)。采用PIC的低价OTP型芯片,可使单片机在其应用程序开发完成后立刻使该产品上市。
4)PIC有优越开发环境。OTP单片机开发系统的实时性是一个重要的指标,象普通51单片机的开发系统大都采用高档型号仿真低档型号,其实时性不尽理想。PIC在推出一款新型号的同时推出相应的仿真芯片,所有的开发系统由专用的仿真芯片支持,实时性非常好。就我个人的经验看,还没有出现过仿真结果与实际运行结果不同的情况。
5)其引脚具有防瞬态能力,通过限流电阻可以接至220V交流电源,可直接与继电器控制电路相连,无须光电耦合器隔离,给应用带来极大方便。
6)彻底的保密性。PIC以保密熔丝来保护代码,用户在烧入代码后熔断熔丝,别人再也无法读出,除非恢复熔丝。目前,PIC采用熔丝深埋工艺,恢复熔丝的可能性极小。
7)自带看门狗定时器,可以用来提高程序运行的可靠性。
8)睡眠和低功耗模式。虽然PIC在这方面已不能与新型的TI-MSP430相比,但在大多数应用场合还是能满足需要的。
PIC单片机命名规则
1.前缀: PIC MICROCHIP 公司产品代号,特别地:dsPIC为集成DSP功能的新型PIC单片机
2.系列号:10、12、16、18、24、30、33、32,其中
PIC10、PIC12、PIC16、PIC18为8位单片机
PIC24、dsPIC30、dsPIC33为16位单片机
PIC32为32位单片机
3.器件型号(类型):
C CMOS 电路
CR CMOS ROM
LC 小功率CMOS 电路
LCS 小功率保护
AA 1.8V
LCR 小功率CMOS ROM
LV 低电压
F 快闪可编程存储器
HC 高速CMOS
FR FLEX ROM
4.改进类型或选择
54A 、58A 、61 、62 、620 、621
622 、63 、64 、65 、71 、73 、74
42 、43 、44等
5.晶体标示:
LP 小功率晶体,
RC 电阻电容,
XT 标准晶体/振荡器
HS 高速晶体
6.频率标示:
-02 2MHZ,
-04 4MHZ,
-10 10MHZ,
-16 16MHZ
-20 20MHZ,
-25 25MHZ,
-33 33MHZ
7.温度范围:
空白 0℃至70℃,
I -45℃至85℃,
E -40℃至125℃
8.封装形式:
L PLCC 封装
JW 陶瓷熔封双列直插,有窗口
P 塑料双列直插
PQ 塑料四面引线扁平封装
W 大圆片
SL 14腿微型封装-150mil
JN 陶瓷熔封双列直插,无窗口
SM 8腿微型封装-207mil
SN 8腿微型封装-150 mil
VS 超微型封装8mm×13.4mm
SO 微型封装-300 mil
ST 薄型缩小的微型封装-4.4mm
SP 横向缩小型塑料双列直插
CL 68腿陶瓷四面引线,带窗口
SS 缩小型微型封装
PT 薄型四面引线扁平封装
TS 薄型微型封装8mm×20mm
TQ 薄型四面引线扁平封装
相关问答
PIC单片机 中用C语言编程时ADCON1是什么意思怎么用?ADCON1是AD转换时用到的控制寄存器,有8位,高4位(有的是5位,要看具体单片机型号)是未定义的,把他们置0,不要置1,低三位(或四位),就是PCFG2、1、0(有...ADCON1...
PIC单片机 的外部中断口是什么意思?答:PIC16系列单片机中,除TMR0,INT和RB电平变化中断外的其他中断,均称为外设中断,如AD转换结束中断,TMR1中断等,都属于外设中断。外部中断,只有指定的某几...
pic单片机 的pic是什么意思?1.PIC单片机(PeripheralInterfaceController)是一种用来开发和控制外围设备的集成电路(IC)。一种具有分散作用(多任务)功能的CPU。与人类相比,大脑就是C...
pic单片机 是什么内核?PIC单片机采用的是RISC(ReducedInstructionSetComputer)指令集架构,其内核主要基于哈佛结构,具有高性能、低功耗、易于编程等特点。PIC单片机内置了多种功...
PIC 的标准编程语言分别是?一、PIC汇编语言指令格式PIC系列微控制器汇编语言指令与MCS-51系列单片机汇编语言一样,每条汇编语言指令由4个部分组成,其书写格式如下:标号操作...一、PI...
pic单片机 学的哪个芯片?PIC单片机主要使用的是MicrochipTechnology生产的PIC系列芯片。这些芯片包括低端的PIC10和PIC12系列,中端的PIC16系列,以及高端的PIC18和PIC32系列。这些芯片...
PIC 的 单片机 如何实现查表功能?PIC系列单片机的查表程序可以利用子程序带值返回的特点来实现。具体是在主程序中先取出表数据地址放入W,接着调用子程序,子程序的第一条指令将W置入PC,则程序...
pic单片机 ,这个PCL是什么意思?后面有一句注释啊,ADDWFPCL,F,这条指令的意思表示W寄存器和PCL的值相加,结果存回到PCL寄存器,工作寄存器W的值不变后面有一句注释啊,ADDWFPCL,F,这条指令的意...
单片机 编程中R6,R7,R0,A是什么?答:楼上误解了,没看清题意,楼上说的那几个是PIC单片机的,楼主说的是51单片机的R6R7R0是51单片机中的工作寄存器组中的成员用于存放数据,这样的工作寄存器组...
pic单片机 哪种架构?PIC单片机采用的是哈佛架构,其特点是程序和数据存储在不同的存储器中,程序存储器和数据存储器分别提供不同的地址总线,这使得程序和数据可以同时访问,提高了...