1、单片机温度控制论文材料成本控制论文基于单片机远程 I2C 温度控制系统摘要:采用 P89LPC922 单片机为主控 MCU,使用模拟 I2C 方式,利用远程控制芯片 P82B96 实现了基于 I2C 的远程 I/O 扩展,同时该系统采用 LM75A 采集终端温度并在前端显示,前端通过控制 PCA9554 的 I/O 口来实现对终端温度的控制。温度过高则控制风扇转动来降温,温度过低则控制加热设备加热。 关键词:单片机;P82B96;I2C;远程温度控制 远程温度控制技术是为了使人们可以在远离设备的地方及时了解设备的温度状况并对温度进行控制的一种技术。在工业生产和农业生产的某些领域中,由于现场的特
2、殊环境,不能即时在现场控制温度,因此,远程温度控制技术的研究十分必要。 1 系统硬件设计 整个系统分为主机和从机两个部分,从机部分由温度传感器 LM75A、I/O 扩展芯片 PCA9554 和远程控制芯片 P82B96 组成;主机部分由单片机 P89LPC922、远程控制芯片 P82B96、数码显示系统和报警系统组成。温度传感器 LM75A 检测现场温度,信号通过 P82B96 传送到主机,如果检测到的温度过高(过低)就反馈到主机进行报警,并通过数码管显示检测到的温度,并给从机发出控制信号,驱动风扇降温(升温)。系统总体结构如图 1 所示: 1.1 单片机的选择 P89LPC922 是一款单片
3、封装的微控制器,适合于许多要求高集成度、低成本的场合,可以满足多方面的性能要求,采用了高性能的处理器结构,指令执行时间只需 24 个时钟周期,是传统 80C51 的 6 倍。P89LPC922 集成了许多系统级的功能,这样可大大减少元件的数目和电路板面积并降低系统的成本。此外,它还集成了字节方式的 I2C 总线、SPI 接口、UART 通信接口、实时时钟、E2PROM、A/D 转换器等一系列有特色的功能部件。开发方便,支持 ISP/ICP/IAP等多种编程方式。 1.2 无线传输设备 采用 P82B96 作为主机和从机的通信设备,P82B96 是是一款双极性、内部无锁存、双向逻辑接口器件,它提
4、供标准 I2C 器件和远距离总线间的桥接,可以将不同电压和电流级别的类似总线与 I2C 总线进行桥接。其远程的距离最多能达到 1000m。该器件可桥接 SMBus(350A)、3.3V 逻辑器件,15V 电平及低阻抗导线可以延长通信距离,增加抗干扰能力。该器件对 I2C 总线协议和时钟速率没有特殊要求。P82B96 能增加 I2C 总线节点上挂接的最小负载数、新总线负载数和远程 I2C 总线器件数,且不会对本地节点造成影响。挂接器件数目和物理上的限制也会大大减小。通过平衡传输线(双绞线)或光耦隔离(光纤)发送信号,Tx、Rx 结构上的分隔使其发送变得简单,且 Tx 和 Rx 信号直接相连时而不
5、会锁死。 1.3I2C 总线配置 I2C(Inter-IC)是一种用于内部 IC 控制的双向两线串行总线协议。在 I2C总线中仅需要 SDA(串行数据线)和 SCL(串行时钟线)两根信号线就可以实现多个器件之间主从式的通信,其典型配置错误!未找到引用源。所示,注意连接时需要共地。在 I2C 总线上要实现功能和模块扩展非常容易,只需在总线上“挂上”相应功能的 I2C 兼容芯片就行了,器件之间是靠不同的编址来区分的,而不需要附加的 I/O 线或地址译码部件,在 7 位地址模式中最多可达 128 个。I2C的通讯速率也令人满意,标准传输速率为 100kbps(每秒 100k 位),在快速模式下为 4
6、00kbps,最新的高速模式可达 3.4Mbit/s。 一般具有 I2C 总线的器件其 SDA 和 SCL 管脚都是漏极开路(或集电极开路)输出的结构。因此实际使用时,SDA 和 SCL 两根信号线都必须加上拉电阻RC(Pull-up Resistor)。上拉电阻一般取值 310k。开漏结构的好处是:当总线空闲时,这两条信号线都保持高电平,不会消耗电流。电气兼容性好,上拉电阻接 5V 电源就能与 5V 逻辑器件接口,上拉电阻接 3V 电源就能与 3V 逻辑器件接口。因为是开漏结构,所以不同器件的 SDA 与 SDA 之间,SCL 与 SCL 之间可以直接相连,不需要额外的转换电路。 1.4I/
7、O 扩展芯片 采用 PCA9554 作为 I/O 扩展芯片。PCA9554 是 16 脚的 CMOS 器件,它们提供了 I2C/SMBus 的应用中的 8 位通用并行输入/输出口 GPIO 的扩展该器件使PHILIP 的 I2C I/O 扩展器件系列得到增强改进的特性包括更高的驱动能力 5V I/O 口更低的电源电流单独的 I/O 口配置 400kHz 时钟频率和更小的封装形式当应用中需要额外的 I/O 口来连接 ACPI 电源开关传感器按钮 LED 风扇等时可使用 I/O 扩展器件实现简单的解决方案。 1.5 温度传感器的选择 LM75A 是一个使用了内置带隙温度传感器和 -模数转换技术的高
8、速I2C 接口的温度-数字转换器。MCU 可以通过 I2C 总线直接读取其内部寄存器中的数据,并可通过 I2C 对其 4 个数据寄存器进行操作。LM75A 有 3 个可选的逻辑地址管脚,使得同一总线上可同时连接 8 个器件而不发生地址冲突。同时,其测量温度范围宽(-55+125),精度高,可达 0.125,能满足一般场合温度检测的需要。 1.6 数码管显示电路 数码管显示有静态显示和动态显示两种显示方式。当数码管工作在静态显示方式时,其阴极点(或者阳极)连接在一起接地(或接 VCC),每一个段选线(a,b,c,d,e,f,g,dp)分别与另外一个 8 位口相连。 当数码管工作在动态方式时,各个
9、数码管共用段选线,8 位段选线用来输出显示字符的段选码,通过输出不同的位选码来点亮某一数码管。段选线不断输出待显示字符的段选码,位选码输出不同的位扫描码,并使每位显示字符停留显示一段时间,一般为 15ms。利用人的视觉停留,便可见到相当稳定的数字显示。2 软件设计 软件设计的关键问题是发送端和接收端的通信协议,然后是单片机控制程序。系统软件部分框图如图 3 所示: 2.1I2C 通信协议 系统设计的关键问题在于发送端和接收端的 I2C 通信协议,编制测试模拟包程序来调试 I2C 通信,使每个模块的 I2C 通信协议正确。 通过调试 I2C 总线通信协议,来调试 PCA9554。设置配置字来决定
10、 I/O 口的输入和输出。图 4 是 I2C 发送流程,图 5 是 I2C 接受流程。 2.2 系统调试 将各个模块调整并连接好之后,将程序下载到系统,从软件上设定温度值,测量用户设定的值与室温进行比较。 3 结语 本文设计了一种基于单片机 I2C 的远程温控系统。利用无线传输实现远程温度控制,传输距离远、精度高,性价比高,在工业生产和农业生产中有很高的应用价值。 参考文献 1 周立功.LPC900 系列 Flash 单片机应用技术M.北京:北京航空航天大学出版社,2005. 2 孙刚,冯国雨,朱孟忠. I2C 总线的软件模拟在 KeilC51 中的实现J.电脑编程技巧与维护,2009. 3 PHILIPS semiconductors. LM75A Digital temperature sensor and thermal Watchdog data sheet,2001. 4 PHILIPS semiconductors.P89LPC922 User Manual. 2007,(9).
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。