基于MAX1069的单片机数据采集系统的设计
1概述
在MCS-51系列不具备I2C总线接口的单片机组成的智能仪器和工业测控系统中,当数据传输速度要求不太高时通过模拟I2C总线可以增加应用系统的接口器件的种类,提高应用系统的性能。
I2C总线,即IC与IC之间沟通的总线,是一种双向二进制总线,即串行时钟线SCL和串行数据线SDA两条线路组成,提高了硬件的效率和简化电路设计。I2C总线接口已经集成在片上,不需要单独设计总线接口和译码电路,电路的互连减少。MAX1069采用单电源供电,利用内部4MHz时钟对其单端模拟输入进行单极性转换。具有自动关断、内部+4.096V基准和兼容于I2C、提供快速及高速模式的2线串行接口。对于不带I2C串行总线接口的MCS-51系列单片机来说,可以利用软件模拟的方法实现带有I2C串行总线接口的I/O芯片的连接。
2MAX1069功能原理
3. MAX1069与MCS-51单片机组成的数据采集系统的实现
3.1. 硬件接口
利用MCS-51单片机的I/O口线控制I2C串行总线的串行时钟和数据传送,操作过程由软件控制数据传送以及时序。与MAX1069的接口即数据采集系统原理图,如图5所示。由于I2C总线端口输出为开漏 结构,故SDA和SCL上必须有上拉电阻RP,通常选择500Ω或更大些。8051的P1.0、P1.1分别与MAX1069的SCL、SDA连接。MAX1069的I2C器件地址为0110111。模拟信号由MAX1069的AIN输入,数据转换及传送均由软件来完成。数据传送遵循高位在前的原则,即MSB在前的方式传送。
3.2. 软件流程图
如图5所示,数据采集系统原理图由P1.0、P1.1模拟I2C串行总线的SCL和SDA端,构成模拟的I2C串行总线系统。总线功能的实现除简单的硬件连接,大部分功能需要软件模拟来完成。I2C总线的启动信号S、应答信号A、非应答信号 和SCL时钟传送数据均应用归一的I2C程序(参考何利民:单片机高级教程—应用与提高)即可。流程图如图6所示。
4.结束语
本文介绍了基于MAX1069的单片机数据采集系统的硬件接口及模拟I2C总线的软件设计,同时说明了MCS-51系列单片机上I2C总线接口的实现数据传输的方法。本系统可广泛应用于温度控制设备、管道测漏系统以及系统监控等。
参考文献:
[1] MAXIM Data Sheet of MAX1069
[2] 何利民. 单片机高级教程[M]. 北京:北京航空航天大学出版社,2000.8
[3] 陈志辉. I2C总线在MCS51系列单片机数据采集系统中的实现[J]. 微计算机信息,2005年第一期
模数转换器 MAX1069 I2C总线 单片机 数据采集 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)