C8051F MCU
应
用
笔
记
Silicon Laboratories Inc. 新华龙电子有限公司
4635 Boston Lane 深圳市福田区华强北路现代之窗大厦 A 座 13F C 室(518013)
Austin, TX 78735
0755-83645240 83645242 83645244 83645251
AN013 — 用 SMBus 实现串行通信
相关器件
本应用笔记适用于下列器件:
C8051F000、C8051F001、C8051F002、C8051F005、C8051F006、C8051F010、C8051F011
和 C8051F012。
引言
C8051F0xx系列器件有一个符合系统管理总线标准 1.1 版以及I
2
C串行总线标准的SMBus串行
I/O器件。SMBus是一个双向、二线接口,能与多个器件通信。SMBus是英特尔公司的商标;I
2
C是
菲力浦半导体公司的商标。
本应用笔记介绍 SMBus 总线的配置和操作。本文提供示例汇编代码和‘C’代码:(1)与单
个具有一字节地址空间的 EEPROM 接口的汇编语言程序;(2)与多个具有二字节地址空间的
EEPROM 接口的 C 语言程序;(3)两个 C8051F0xx 点对点通信的 C 语言程序。
SMBus 规范
本节介绍 SMBus 协议。对 SMBus 的讨论从下一节 --“使用 SMBus”开始。
SMBus
结构
一个 SMBus 系统是一个二线网络,网络中的每一个器件有一个唯一的地址并可以被网络中的
其它器件访问。所有的传输过程都由一个主器件启动;如果一个器件识别出自己的地址并回应,它
就是那次传输的从器件。值得注意的是,没有必要指定一个主器件。对于任何一次数据传输,任何
一个器件都可以作为主器件或从器件。当两个器件试图同时启动一次传输时,仲裁机制将强迫一个
器件放弃总线。这种仲裁机制是非破坏性的(一个器件赢得总线,但没有信息丢失)。我们将在仲
裁一节深入讨论仲裁机制。
SMBus 通信使用两根线:SDA(串行数据)和 SCL(串行时钟)。每根线都是双向的,其方向
取决于器件所处的工作方式。主器件总是提供 SCL;主、从器件都可以在 SDA 上传输数据。两根
线都应通过一个上拉电路接到正电源。SMBus 线上的所有器件都应有漏极开路或集电极开路输出,
这样可使总线空闲时保持高电平。如果一个或多个器件输出低电平信号,总线被拉为低电平。要使
总线保持在高电平,所有的器件都必须输出高电平。第二页中的图 1 给出一个典型的 SMBus 总线
配置。
电话:
Email: mcuinfo@silabs.com
(版权所有)
电邮:shenzhen@xhl.com.cn
Internet: www.silabs.com
网址:www.xhl.com.cn
- 1
- 2
- 3
- 4
前往页