主控电路以 89C52为核心扩展32K RAM;单片机使用6M晶振,P0口外接上拉电阻,
增大了带负载能力;A12~A15接74LS138译码器,输出作外部片选信号。 扩展了几个接口用于其它部分于单片机的通信 ( 2)前端信号处理
6
INA126构成的放大器及滤波电路:
通过调节 的阻值来改变放大倍数。微弱信号Vi1和Vi2被分别放大后从INA126的第6脚输出。A/D转换器ICL7135的输入电压变化范围是-2V~+2V,传感器的输出电压信号在0~20mv左右,因此放大器的放大倍数在200~300左右,可将 接成
的滑动变阻器。
由于 ICL7135对高频干扰不敏感,所以滤波电路主要针对工频及其低次谐波引入的干扰。因为压力信号变化十分缓慢,所以滤波电路可以把频率做得很低。 ( 3)A/D转换器
7
基准源选用芯片 MC1403 2.5V分压得到:
由于 ICL7135内部没有振荡器,所以需要外接。但A/D转换器精度与时钟频率的漂移无关。正向积分时间T1和反向积分时间T2按相同比例增加并不影响测量的结果。ICL7135的时钟频率典型值为200kHz最高允许为1200kHz,时钟频率越高,转换速度越快。每输出一位BCD码的时间为200个时钟周期,选通脉冲位于数据脉冲的中部,如果时钟频率太高,则数据的接受程序还没有接受完毕,数据就已经消失了。考虑到此系统频率要求不是太高,且单片机的工作频率也不是很高,因此我们取时钟频率的
8
典型值:200kHz。由于频率比较低,对时钟漂移要求不高,我们采用阻容方式实现了基本的振荡电路。如下:
振荡频率约为 160kHz。
此外 ICL7135外部还需要外接积分电阻、积分电容,但A/D转换器精度与外接的积分电阻、积分电容的精度无关,故可以降低对元件质量的要求。不过积分电容和积分电容的介质损耗会影响到A/D转换器的精度,所以应采用介质损耗较小的聚丙乙烯电容
ICL7135还需要外接基准电源,这是因为芯片内部的基准源一般容易受到温度的影响,而基准电源的变化会直接影响转换精度。所以当精度要求较高时,应采用外接基准源。一般接其典型值1V。 (4) 、人机交互界面
LCD 显示接口电路 .
LCD 复位信号通过反相器接到单片机的 RESET 上,上电或手动复位时将随单片机同时复位。由于复位后并行口输出高电平, LCD 处于选中状态,此时 LCD 将输出内部状态字,将会影响数据总线上的数据传输。所以外接一个反相器。 二、软件组成:
(一)、流程图 主程序流程如图所示: 中断服务程序流程图如下:
9
( 2)、软件说明
由于涉及到大量数据的运算,程序不宜采用汇编语言, C语言大大缩短了开发时间,且程序可读性非常好。
程序中对 AD采入的数据进行了数字滤波,进一步减小AD读入数据的误差。 7289键盘控制采用中断方式,加快了程序的执行效率。
设计体会
传感器课程设计结束了,在设计之初并没象想象的那么简单,因为平时总是学的理论,而这次是亲手的动手操作,虽然说很累,但感觉收获却特别大。感谢唐老师的精心指导,我所学的知识得到了很好的应用,非常感谢老师。
我学会了很多芯片的原理,虽然我们只用上几个芯片,可我是从很多很多芯片中筛选出来了,因此对很多芯片都有了初步的了解。像89C51等芯片在平常学习时并不清楚它的具体功能,也没想到他们会与我们的生活联系那么密切,通过我这几天的课程设计,我查资料,仔细研究它们的逻辑功能,用途,要求等,终于基本完成了我的秒表设计。这激发了我学习专业知识的兴趣。但同时,由于掌握的知识有限,在设计过程中我遇到一些问题我们暂时还没有能力去解决。我的数字秒便与理想中比较实际的数字秒表还有很大的差距。。因此,我会在以后的学习中,尽可能地扩大自己的知识面,不能仅仅只局限课本,要更加刻苦地努力地去学习专业知识,充分利用图书馆和网络资源,多查多学多练,打好扎实功底,为以后的更好的发展奠定一个坚实的基
10