CN102262607A - 一种在pc中利用i2c总线采集温度信息的方法 - Google Patents

一种在pc中利用i2c总线采集温度信息的方法 Download PDF

Info

Publication number
CN102262607A
CN102262607A CN2011101134669A CN201110113466A CN102262607A CN 102262607 A CN102262607 A CN 102262607A CN 2011101134669 A CN2011101134669 A CN 2011101134669A CN 201110113466 A CN201110113466 A CN 201110113466A CN 102262607 A CN102262607 A CN 102262607A
Authority
CN
China
Prior art keywords
data
signal
chip microcomputer
temperature sensor
sda
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2011101134669A
Other languages
English (en)
Other versions
CN102262607B (zh
Inventor
李玉明
陈乃阔
牛玉峰
耿士华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Chaoyue Numerical Control Electronics Co Ltd
Original Assignee
Shandong Chaoyue Numerical Control Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shandong Chaoyue Numerical Control Electronics Co Ltd filed Critical Shandong Chaoyue Numerical Control Electronics Co Ltd
Priority to CN201110113466.9A priority Critical patent/CN102262607B/zh
Publication of CN102262607A publication Critical patent/CN102262607A/zh
Application granted granted Critical
Publication of CN102262607B publication Critical patent/CN102262607B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

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

Description

一种在PC中利用I<sup>2</sup>C总线采集温度信息的方法
技术领域
本发明专利涉及计算机在工业温度控制技术领域中的应用,具体地说是一种在PC系统中利用I2C总线通信机制读取温度信息的方法。
背景技术
目前,随着计算机服务器应用范围日趋广泛,应用环境更加恶劣,如高低温环境及振动冲击等。如何使计算机或服务器在高温或低温环境中依然稳定工作,成为制约计算机发展的一个瓶颈。为了使计算机适应更加恶劣的温度环境,必须在计算机内部设计一个温度控制模块,控制计算机内部温度。当温度低于计算机内部主板、硬盘、显示器等的工作温度时,采集温度信息,通过温度控制模块中的单片机处理,发出相应高或低电平,驱动加热装置,给相应需加热的硬件加热;反之,驱动散热装置,如风扇等,给相应需散热的硬件散热。温度控制模块中,采用单片机等控制计算机内部温度,需要实时采集温度传感器的温度信息,因为单片机内部处理的数据必须是二进制数字信号,而传统的单片机采集温度信息时,必须通过硬件设计,利用多路开关选择、放大、采样保持、A/D转换等电路,将作为模拟信号的温度信息转换为数字信号后采集到单片机内,这样,不仅硬件电路复杂,且温度信息的实时性和准确性无法得到保证。
发明内容
本发明的目的是提供一种在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信号的到来;
主设备单片机读取从设备温度传感器温度信息的过程如下:
(4)上电以后等待一个延时(1ms);
(5)器件寻址;
(6)应答;
(4)开始连续读。读取一个以后给一个应答,这样器件会再给出下一个地址的数据内容
(5)开始数据传输Start后、停止数据传输Stop前,SCL高电平期间,SDA上为有效数据。
本发明提供的一种在PC中利用I2C总线采集温度信息的方法,优异效果是为计算机温度控制准备了实时和准确的温度参数。利用I2C总线通信机制采集温度信息,不仅可避免硬件电路的复杂性,而且保证了采集数据的实时性和正确性。具有较高的实用价值,其应用前景看好。
本发明已经成功应用到浪潮KVM一体机中,并且适用于所有具有温度控制系统的计算机和服务器设备。此算法不仅可用于计算机或服务器的温控系统,而且可用于水温箱、采暖炉、电热器等需要温度控制的很多场合中。
附图说明
图1是温度控制信息采集流程图;
具体实施方式
参照说明书附图对本发明的方法作以下详细地说明。
为了克服上述局限,利用I2C总线通信机制,在计算机系统电路设计时,选用基于I2C总线数据传输的温度传感器,通过I2C总线通信传输采集温度信息。
I2C总线数据传输只要求两条总线线路,一条串行数据线SDA和一条串行时钟线SCL,简单的两线串行I2C总线将互联减到最小,因此IC的管脚更少,而且PCB的线路也减少,使得PCB更小更便宜。
每个连接到总线的器件都可以通过唯一的地址与主机进行通信,再加上I2C的冲突检测和仲裁机制,这样在温度控制模块中有多个I2C设备时,主从机之间的通信不会发生冲突,而且可以防止数据被破坏。这样在温度采集时,可以保证温度数据的实时性和正确性,以及数据的完整性。

Claims (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上为有效数据。
CN201110113466.9A 2011-05-04 2011-05-04 一种在pc中利用i2c总线采集温度信息的方法 Expired - Fee Related CN102262607B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110113466.9A CN102262607B (zh) 2011-05-04 2011-05-04 一种在pc中利用i2c总线采集温度信息的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110113466.9A CN102262607B (zh) 2011-05-04 2011-05-04 一种在pc中利用i2c总线采集温度信息的方法

Publications (2)

Publication Number Publication Date
CN102262607A true CN102262607A (zh) 2011-11-30
CN102262607B CN102262607B (zh) 2014-12-17

Family

ID=45009241

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110113466.9A Expired - Fee Related CN102262607B (zh) 2011-05-04 2011-05-04 一种在pc中利用i2c总线采集温度信息的方法

Country Status (1)

Country Link
CN (1) CN102262607B (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104796231A (zh) * 2015-05-05 2015-07-22 北京广利核系统工程有限公司 一种异步串行物理变形信号的识别方法
CN104850473A (zh) * 2015-05-11 2015-08-19 深圳国鑫恒宇技术有限公司 一种服务器在低温环境下的启动测试方法
CN105117365A (zh) * 2015-07-16 2015-12-02 上海斐讯数据通信技术有限公司 一种基于Mpc837x框架的数据读取方法
CN105183685A (zh) * 2015-06-24 2015-12-23 深圳市振邦智能科技有限公司 一种基于i2c通信协议的获取从机地址的方法及i2c通信系统
CN105740182A (zh) * 2014-12-12 2016-07-06 深圳富泰宏精密工业有限公司 防止传感器失效的系统及方法
CN106055511A (zh) * 2016-06-16 2016-10-26 惠州Tcl移动通信有限公司 一种移动终端的cpu与传感器的数据通信方法、系统
CN106155964A (zh) * 2015-03-31 2016-11-23 恩智浦有限公司 在使用串行数据传输总线的数据通信系统中进行地址解码的方法与系统
CN106502167A (zh) * 2016-12-19 2017-03-15 郑州云海信息技术有限公司 一种服务器中基于i2c总线的温度采集结构及方法
CN107209805A (zh) * 2015-02-02 2017-09-26 思想外科有限公司 用于管理医疗数据的方法和系统
CN109494837A (zh) * 2016-01-05 2019-03-19 Oppo广东移动通信有限公司 快速充电方法、移动终端和适配器
CN110672141A (zh) * 2018-07-03 2020-01-10 中国科学院苏州纳米技术与纳米仿生研究所 自供电传感器的检测方法及其检测系统
CN111382100A (zh) * 2018-12-29 2020-07-07 深圳市优必选科技有限公司 一种i2c总线的数据采集方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040221085A1 (en) * 2003-04-30 2004-11-04 Agilent Technologies, Inc. Master slave arrangement
CN101349702A (zh) * 2007-07-21 2009-01-21 李谦 电脑湿度测量系统
CN101404556A (zh) * 2008-10-24 2009-04-08 伊玛精密电子(苏州)有限公司 一线总线的通讯方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040221085A1 (en) * 2003-04-30 2004-11-04 Agilent Technologies, Inc. Master slave arrangement
CN101349702A (zh) * 2007-07-21 2009-01-21 李谦 电脑湿度测量系统
CN101404556A (zh) * 2008-10-24 2009-04-08 伊玛精密电子(苏州)有限公司 一线总线的通讯方法

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105740182A (zh) * 2014-12-12 2016-07-06 深圳富泰宏精密工业有限公司 防止传感器失效的系统及方法
CN107209805A (zh) * 2015-02-02 2017-09-26 思想外科有限公司 用于管理医疗数据的方法和系统
CN106155964B (zh) * 2015-03-31 2019-05-21 恩智浦有限公司 使用串行数据传输总线的系统中的地址解码方法与系统
CN106155964A (zh) * 2015-03-31 2016-11-23 恩智浦有限公司 在使用串行数据传输总线的数据通信系统中进行地址解码的方法与系统
CN104796231A (zh) * 2015-05-05 2015-07-22 北京广利核系统工程有限公司 一种异步串行物理变形信号的识别方法
CN104796231B (zh) * 2015-05-05 2018-10-16 北京广利核系统工程有限公司 一种异步串行物理变形信号的识别方法
CN104850473B (zh) * 2015-05-11 2018-10-12 深圳市同泰怡信息技术有限公司 一种服务器在低温环境下的启动测试方法
CN104850473A (zh) * 2015-05-11 2015-08-19 深圳国鑫恒宇技术有限公司 一种服务器在低温环境下的启动测试方法
CN105183685A (zh) * 2015-06-24 2015-12-23 深圳市振邦智能科技有限公司 一种基于i2c通信协议的获取从机地址的方法及i2c通信系统
CN105183685B (zh) * 2015-06-24 2019-03-15 深圳市振邦智能科技股份有限公司 一种基于i2c通信协议的获取从机地址的方法及i2c通信系统
CN105117365A (zh) * 2015-07-16 2015-12-02 上海斐讯数据通信技术有限公司 一种基于Mpc837x框架的数据读取方法
CN109494837A (zh) * 2016-01-05 2019-03-19 Oppo广东移动通信有限公司 快速充电方法、移动终端和适配器
CN109494837B (zh) * 2016-01-05 2021-06-25 Oppo广东移动通信有限公司 快速充电方法、移动终端和适配器
CN106055511A (zh) * 2016-06-16 2016-10-26 惠州Tcl移动通信有限公司 一种移动终端的cpu与传感器的数据通信方法、系统
CN106055511B (zh) * 2016-06-16 2019-10-29 Tcl移动通信科技(宁波)有限公司 一种移动终端的cpu与传感器的数据通信方法、系统
CN106502167A (zh) * 2016-12-19 2017-03-15 郑州云海信息技术有限公司 一种服务器中基于i2c总线的温度采集结构及方法
CN110672141B (zh) * 2018-07-03 2021-11-30 中国科学院苏州纳米技术与纳米仿生研究所 自供电传感器的检测方法及其检测系统
CN110672141A (zh) * 2018-07-03 2020-01-10 中国科学院苏州纳米技术与纳米仿生研究所 自供电传感器的检测方法及其检测系统
CN111382100A (zh) * 2018-12-29 2020-07-07 深圳市优必选科技有限公司 一种i2c总线的数据采集方法及系统

Also Published As

Publication number Publication date
CN102262607B (zh) 2014-12-17

Similar Documents

Publication Publication Date Title
CN102262607B (zh) 一种在pc中利用i2c总线采集温度信息的方法
CN102023954B (zh) 具有多路i2c总线的装置、处理器、系统主板及工控计算机
CN102023953B (zh) 具有多路i2c总线的系统的控制方法
CN101719110B (zh) 光通信器件中多路i2c器件的实时监控方法
CN102541779B (zh) 一种提高多数据缓冲区dma效率的系统和方法
CN102253913B (zh) 一种对多板卡端口进行状态获取和输出控制的装置
CN101794152B (zh) 具有lvds串行接口的嵌入式控制器及其控制方法
CN105677598B (zh) 基于i2c接口快速读取多个mems传感器数据的模块和方法
TW200707201A (en) Computer system and control method of the same
TW200703011A (en) Bus device used in computer system
CN102147780B (zh) 一种基于串行数据传输方式的链路接口电路
CN111026691B (zh) 基于apb总线的owi通讯设备
CN101140551B (zh) 一种实现数字信号处理器异步串行通讯的装置
US8868812B2 (en) Interface for communication between sensing devices and I2C bus
CN205910335U (zh) 雷达终端信号采集系统
CN204423022U (zh) 可通用传感器控制设备及系统
Kommu et al. Designing a learning platform for the implementation of serial standards using arm microcontroller LPC2148
CN201467168U (zh) 一种将MODBUS协议转换成Profibus协议的通讯协议转换器
CN110543163A (zh) 一种飞机航电系统vme总线机载模块测试系统
CN105681651A (zh) 一种嵌入式高速实时场景图像生成装置
CN106502167A (zh) 一种服务器中基于i2c总线的温度采集结构及方法
CN202110418U (zh) 一种交调仪多总线通信系统
CN109101389A (zh) 一种用于pcie接口的测试向量生成方法及装置
CN210899213U (zh) 一种基于物联网的电力电缆数据融合网关装置
Harirajkumar et al. Design and Implementation of an SPI to I2C Bridge for Seamless Communication and Interoperability Between Devices

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20141217

Termination date: 20160504

CF01 Termination of patent right due to non-payment of annual fee