一种在PC中利用I2C总线采集温度信息的方法技术

技术编号:6902995 阅读:232 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种在PC中利用I2C总线采集温度信息的方法,单片机与温度传感器的数据通信采用从设备发送主设备接收传输模式,I2C总线上的数据在SCL为高电平时SDA上的数据保持稳定,SCL为低电平时允许SDA变化,如果SCL处于高电平时,SDA上产生下降沿,则认为是起始位,SDA为上升沿认为是停止位,每次数据传输都是以一个起始位开始,而以停止位结束,最高有效位将首先被传输,接收方收到第8位数据后会发出应答位,此模式下,需要主机发送起始位和停止位,应答位由接收方产生。

【技术实现步骤摘要】

本专利技术专利涉及计算机在工业温度控制
中的应用,具体地说是一种在PC 系统中利用1 总线通信机制读取温度信息的方法。
技术介绍
目前,随着计算机服务器应用范围日趋广泛,应用环境更加恶劣,如高低温环境及振动冲击等。如何使计算机或服务器在高温或低温环境中依然稳定工作,成为制约计算机发展的一个瓶颈。为了使计算机适应更加恶劣的温度环境,必须在计算机内部设计一个温度控制模块,控制计算机内部温度。当温度低于计算机内部主板、硬盘、显示器等的工作温度时,采集温度信息,通过温度控制模块中的单片机处理,发出相应高或低电平,驱动加热装置,给相应需加热的硬件加热;反之,驱动散热装置,如风扇等,给相应需散热的硬件散热。温度控制模块中,采用单片机等控制计算机内部温度,需要实时采集温度传感器的温度信息,因为单片机内部处理的数据必须是二进制数字信号,而传统的单片机采集温度信息时,必须通过硬件设计,利用多路开关选择、放大、采样保持、A/D转换等电路,将作为模拟信号的温度信息转换为数字信号后采集到单片机内,这样,不仅硬件电路复杂,且温度信息的实时性和准确性无法得到保证。
技术实现思路
本专利技术的目的是提供一种在PC中利用I2C总线采集温度信息的方法。本专利技术的目的是按以下方式实现的,采集温度信息步骤如下单片机与温度传感器的数据通信采用从设备发送主设备接收传输模式,1 总线上的数据在SCL为高电平时SDA上的数据保持稳定,SCL为低电平时允许SDA变化,如果SCL 处于高电平时,SDA上产生下降沿,则认为是起始位,SDA为上升沿认为是停止位,每次数据传输都是以一个起始位开始,而以停止位结束,最高有效位将首先被传输,接收方收到第8 位数据后会发出应答位,此模式下,需要主机发送起始位和停止位,应答位由接收方产生;I2C总线在传送数据过程中共有三种类型信号,它们分别是开始信号、结束信号和应答信号;开始信号SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据;结束信号SCL为高电平时,SDA由低电平向高电平跳变,结束传送数据;应答信号接收数据的主设备在接收到Sbit数据后,向发送数据的从设备发出特定的低电平脉冲,表示已收到数据;单片机向温度传感器受控单元发出一个信号后,等待温度传感器发出一个应答信号,单片机接收到应答信号后,根据实际情况作出是否继续传递信号的判断,若未收到应答信号,则判断为温度传感器出现故障;程序设计时,1 总线采用主接收操作方式,在系统初始化时,由指令控制单片机送出相关的数据,送到1 寄存器内,通过初始化这些寄存器,实现1 总线的的从设备读操作;当单片机主设备和温度传感器从设备交换数据时,单片机首先发出一个启动 Start信号,这个信号被温度传感器接收,即温度传感器准备接收单片机的信号,然后单片机再发出它要通信的温度传感器地址,接下来,温度传感器将收到的这个地址和它自己的地址进行比较;如果收到的地址和它自己的地址不同,则什么都不做,只是等待主设备单片机发出停止stop信号;如果收到的地址和它自己的地址相同,它就发出一个信号给主设备单片机,这个信号称为应答Acknowledge信号,当主设备单片机收到应答信号后,它就开始从从设备温度传感器接收数据,当所有操作都进行完毕时,主设备单片机发出一个^op信号, 通信完毕,释放1 总线;然后所有的从设备温度传感器都等待下一次Mart信号的到来;主设备单片机读取从设备温度传感器温度信息的过程如下(4)上电以后等待一个延时(Ims);(5)器件寻址;(6)应答;(4)开始连续读。读取一个以后给一个应答,这样器件会再给出下一个地址的数据内容(5)开始数据传输Mart后、停止数据传输Mop前,SCL高电平期间,SDA上为有效数据。本专利技术提供的一种在PC中利用1 总线采集温度信息的方法,优异效果是为计算机温度控制准备了实时和准确的温度参数。利用1 总线通信机制采集温度信息,不仅可避免硬件电路的复杂性,而且保证了采集数据的实时性和正确性。具有较高的实用价值,其应用前景看好。本专利技术已经成功应用到浪潮KVM—体机中,并且适用于所有具有温度控制系统的计算机和服务器设备。此算法不仅可用于计算机或服务器的温控系统,而且可用于水温箱、 采暖炉、电热器等需要温度控制的很多场合中。附图说明图1是温度控制信息采集流程图; 具体实施例方式参照说明书附图对本专利技术的方法作以下详细地说明。为了克服上述局限,利用I2C总线通信机制,在计算机系统电路设计时,选用基于 I2C总线数据传输的温度传感器,通过1 总线通信传输采集温度信息。I2C总线数据传输只要求两条总线线路,一条串行数据线SDA和一条串行时钟线 SCL,简单的两线串行1 总线将互联减到最小,因此IC的管脚更少,而且PCB的线路也减少,使得PCB更小更便宜。每个连接到总线的器件都可以通过唯一的地址与主机进行通信,再加上I2C的冲突检测和仲裁机制,这样在温度控制模块中有多个1 设备时,主从机之间的通信不会发生冲突,而且可以防止数据被破坏。这样在温度采集时,可以保证温度数据的实时性和正确性,以及数据的完整性。本文档来自技高网...

【技术保护点】
1.一种在PC中利用I2C总线采集温度信息的方法,其特征在于采集温度信息步骤如下:单片机与温度传感器的数据通信采用从设备发送主设备接收传输模式,I2C总线上的数据在SCL为高电平时SDA上的数据保持稳定,SCL为低电平时允许SDA变化,如果SCL处于高电平时,SDA上产生下降沿,则认为是起始位,SDA为上升沿认为是停止位,每次数据传输都是以一个起始位开始,而以停止位结束,最高有效位将首先被传输,接收方收到第8位数据后会发出应答位,此模式下,需要主机发送起始位和停止位,应答位由接收方产生;I2C总线在传送数据过程中共有三种类型信号,它们分别是:开始信号、结束信号和应答信号;开始信号:SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据;结束信号:SCL为高电平时,SDA由低电平向高电平跳变,结束传送数据;应答信号:接收数据的主设备在接收到8bit数据后,向发送数据的从设备发出特定的低电平脉冲,表示已收到数据;单片机向温度传感器受控单元发出一个信号后,等待温度传感器发出一个应答信号,单片机接收到应答信号后,根据实际情况作出是否继续传递信号的判断,若未收到应答信号,则判断为温度传感器出现故障;程序设计时,I2C总线采用主接收操作方式,在系统初始化时,由指令控制单片机送出相关的数据,送到I2C寄存器内,通过初始化这些寄存器,实现I2C总线的的从设备读操作;当单片机主设备和温度传感器从设备交换数据时,单片机首先发出一个启动Start信号,这个信号被温度传感器接收,即温度传感器准备接收单片机的信号,然后单片机再发出它要通信的温度传感器地址,接下来,温度传感器将收到的这个地址和它自己的地址进行比较;如果收到的地址和它自己的地址不同,则什么都不做,只是等待主设备单片机发出停止stop信号;如果收到的地址和它自己的地址相同,它就发出一个信号给主设备单片机,这个信号称为应答Acknowledge信号,当主设备单片机收到应答信号后,它就开始从从设备温度传感器接收数据,当所有操作都进行完毕时,主设备单片机发出一个Stop信号,通信完毕,释放I2C总线;然后所有的从设备温度传感器都等待下一次Start信号的到来;主设备单片机读取从设备温度传感器温度信息的过程如下:(1)上电以后等待一个延时(1ms);(2)器件寻址;(3)应答;(4)开始连续读,读取一个以后给一个应答,这样器件会再给出下一个地址的数据内容(5)开始数据传输Start后、停止数据传输Stop前,SCL高电平期间,SDA上为有效数据。...

【技术特征摘要】
1. 一种在PC中利用1 总线采集温度信息的方法,其特征在于采集温度信息步骤如下单片机与温度传感器的数据通信采用从设备发送主设备接收传输模式,1 总线上的数据在SCL为高电平时SDA上的数据保持稳定,SCL为低电平时允许SDA变化,如果SCL处于高电平时,SDA上产生下降沿,则认为是起始位,SDA为上升沿认为是停止位,每次数据传输都是以一个起始位开始,而以停止位结束,最高有效位将首先被传输,接收方收到第8位数据后会发出应答位,此模式下,需要主机发送起始位和停止位,应答位由接收方产生;I2C总线在传送数据过程中共有三种类型信号,它们分别是开始信号、结束信号和应答信号;开始信号=SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据; 结束信号=SCL为高电平时,SDA由低电平向高电平跳变,结束传送数据; 应答信号接收数据的主设备在接收到8bit数据后,向发送数据的从设备发出特定的低电平脉冲,表示已收到数据;单片机向温度传感器受控单元发出一个信号后,等待温度传感器发出一个应答信号, 单片机接收到应答信号后,根据实际情况作出是否继续传递信号的判断,若未收到应答信号,则判断为温度传感器出现故障;程序设计时,1 总线采用主接收操作方式,在...

【专利技术属性】
技术研发人员:李玉明陈乃阔牛玉峰耿士华
申请(专利权)人:山东超越数控电子有限公司
类型:发明
国别省市:88

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1