【参赛】自制智能型ICL7135四位半表头

【参赛】自制智能型ICL7135四位半表头
自制智能型ICL7135四位半表头
矫姿带
Edward
本文已在《无线电》2012年12期发表。转载请注明出处。这里发表的是原文,和杂志上略有不同。
这个制作以前发过一次帖子:山体滑坡监测《最近完工的智能型ICL7135四位半表头》这次在这里将详细内容发上来,是想在网络上留个印记,方便自己引用,也是希望和大家分享一下。
正文开始:
最近需要一个精度比较高的电压表头,但网上卖的表头多是三位半的,精度不够,也有一些四位半表头但性价比不高。正好手里有几片ICL7135,以前也有做过四位半表头的尝试,而且去年也学习了单片机,于是就有了做一个智能型ICL7135四位半表头的想法。历经2个月的学习、设计和修改,最终做出了这样一款表头。
表头使用ICL7135作为ADC,其是一款高精度的单片4?位ADC,拥有多路复用的BCD输出以及与单片机兼容的控制信号接口,可以很容易的与单片机连接,实现智能化。生产其兼容芯片的厂家有很多,我手里是Maxim和TI生产的。ICL7135应用电路由模拟部分和数字部分组成,表头整体设计思路是:模拟部分采用典型电路和推荐元件参数,数字部分采用单片机提供ICL7135所需时钟、采集输出、驱动数码管。后来,考虑到只做一个简单功能的表头实在是无趣,所以就将单片机的部分IO口和串口引出以便实现与上位机通信或自动控制等功能。CO2封存
确定好整体思路和预期功能后就开始进行电路设计了。ICL7135模拟部分典型电路如图1所示。
图1 ICL7135电路模拟部分
模拟部分元件没什么可说的,基本都采用推荐值。其中比较关键的是积分电容的选择和基准电压的提供。积分电容对于ICL7135这类双积分ADC是至关重要的,它直接影响积分非线性、翻转、比例误差,即它的好坏直接决定了表头的准确性。而ICL7135对积分电容的要求尤为严格。积分电容必须具有低的电介质吸收特性(亦称浸润或电介质迟滞)。将基
准输入(REF)接至IN HI可以检测积分电容介质吸收(此法一般称为自检),良好的积分电容读数将会是9999,与这个读数之间的任何偏差都可能是由于电介质吸收引起的。一般来说,特氟龙(聚四氟乙烯)、聚苯乙烯和聚丙烯的电介质吸收特性低至0.02%,一般陶瓷和聚碳酸酯电容的典型值为0.2%,银云母和钽电容为1.0%-5.0%,铝电解电容高达10%或以上。ICL7135手册上建议积分电容最好使用特氟龙和聚丙烯电容,要求不高时可以使用聚苯乙烯和聚碳酸酯电容。在实际选择时,优质高耐压的CBB21或CBB22电容效果不错,一般自检读数能够达到9996或以上,但是买到能有9999自检读数的电容是挺不容易的。我挑选了几批电容测试,读数从9994-9996都有,就是没有9997以上的,比较遗憾。
开始的时候,想使用LM385作为基准,但是LM385本身参数并不很好,不同厂家的温漂从20~150ppm/℃都有,而且买到正品LM385不太容易。后来在网上搜索了一段时间,发现拆机的Linear公司产电压基准LT1009很好。LT1009是具有0.2%初始精度,15ppm典型温漂,25ppm最大温漂的2.5V并联型基准,它有一个调节引脚,可以在±5%范围内调整输出电压。LT1009的性能超过了一般的LM385,而且拆机件能够保证芯片是真品也廉价。基准电压电路如图2所示,Rref1和Rref2将LT1009输出的电压分压,通过调节电位器Rref3将分压之后的电压调整到准确的1.000V。1.000V电压的微调还有另一种比较常见的方式,即只天山花楸
微调分压电阻,由于种种原因我没选择这种方式。调整电位器要使用如3/8寸Square Trimpot.?微调电位器(3296电位器)等这类精密多圈电位器,以保证精确性和稳定性。
图2  基准电压电路
传统的ICL7135表头很多是使用4MHz晶振经CD4060分频获得125kHz频率,BCD输出用74LS48之类译码,最后再用三极管或达林顿驱动器驱动数码管,电路复杂不说,成本还高。既然要使用单片机,那么就要让其完成所有功能。STC10F04XE是增强型的8051单片机,拥有4kB的ROM,512B的RAM,5kB的EEPROM以及独立波特率发生器, IO口可设置为多种输出模式;可以实现时钟信号、数据读取、数码管驱动、状态指示、按键控制和串口通信等全部功能。其引脚定义如图3所示。
图3  STC10F04XE引脚图
考虑程序的复杂度,决定采用比较简单的读取BCD方式采集ICL7135数据。以前我也尝试使用Busy信号来采集数据,但并不成功,所以这次并不打算采用这种方式。ICL7135输出数据有5位数字,D5-D1端按顺序分别输出高电平脉冲进行不间断的扫描。B8、B4、B2、
B1端输出当前位的BCD值。当一次正常的数据转换结束后,D5-D1重新开始不断扫描(超量程时不是)。每次数据转换后的D5-D1的第一遍扫描过程中的每个脉冲的中间, 端都会有一个很短的低电平脉冲,之后直到下次转换结束前都没有额外的脉冲。该脉冲能帮助及时采集ADC结果,防止重复采集,简化程序。上述过程的时序如图4所示。
图4  数字扫描和输出时序
将BCD输出端和D1-D4按顺序连接在单片机的P0口(D5悬空即可),用于采集ICL7135数据,端接到单片机中断0端(P3.2)。单片机的P1.0口是独立波特率发生器的可编程输出时钟端口,用该端口输出稳定的时钟信号给ICL7135。为了良好的抑制50Hz工频干扰,ICL7135的信号积分阶段周期应是工频周期的整数倍,信号积分阶段周期为10000个时钟周期,则最佳时钟频率=50×10000/N,N为整数。所以可选的时钟频率可为100kHz、125kHz等。STC10F04XE是1T单片机,所以可以选择4MHz、6Mhz等较低频率的晶振以减小功耗和干扰,但选择晶振频率要注意保证P1.0口能输出所需的时钟频率。使用6MHz的晶振能产生100kHz、120kHz、125kHz等多种频率,但4MHz晶振无法产生120kHz等频率。本来我是想选择4MHz晶振的,但是考虑到程序中要能设定多种时钟频率,所以最终使用了6M
Hz晶振。为了能够直接驱动数码管和8个LED,所以选择了这种IO口可设为推挽输出的单片机。数码管各段需要用电阻限流,以防烧坏数码管和单片机。ICL7135的其余端口根据PCB布线的方便性接在单片机的不同IO口上,在P4.0口设置一轻触开关,同时单片机引出串口、中断1、部分IO口以供通信、控制之用。
空烟卷炭化ICL7135通常需要±5V供电,提供双电源实在是不方便,所以采用手册推荐的ICL7660电荷泵负压电路,简单稳定。供电电路还额外增加了AMS1117-5.0稳压芯片,除使用5V外还可以使用6V-15V电压供电,扩展了供电范围,同时还设计了超压保护和反接保护电路,以保护芯片安全。不要小看这个超压保护和反接保护,在平时做一些实验调试时,各种线会很多很乱,各种电压也会有很多,接错线是很正常的事,如果没有这些保护,接错的后果往往很严重。我在修改测试这个表头的过程中,就有过将13V电源误接入5V供电输入上,幸好当时没偷懒,保护电路也焊上了,不然芯片肯定不保了。

本文发布于:2024-09-23 00:40:05,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/98418.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:输出   单片机   电路   表头   电容
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议