并行IO口模拟串行I2C总线技术Word文件下载.docx

上传人:b****4 文档编号:8131132 上传时间:2023-05-10 格式:DOCX 页数:9 大小:56.49KB
下载 相关 举报
并行IO口模拟串行I2C总线技术Word文件下载.docx_第1页
第1页 / 共9页
并行IO口模拟串行I2C总线技术Word文件下载.docx_第2页
第2页 / 共9页
并行IO口模拟串行I2C总线技术Word文件下载.docx_第3页
第3页 / 共9页
并行IO口模拟串行I2C总线技术Word文件下载.docx_第4页
第4页 / 共9页
并行IO口模拟串行I2C总线技术Word文件下载.docx_第5页
第5页 / 共9页
并行IO口模拟串行I2C总线技术Word文件下载.docx_第6页
第6页 / 共9页
并行IO口模拟串行I2C总线技术Word文件下载.docx_第7页
第7页 / 共9页
并行IO口模拟串行I2C总线技术Word文件下载.docx_第8页
第8页 / 共9页
并行IO口模拟串行I2C总线技术Word文件下载.docx_第9页
第9页 / 共9页
亲,该文档总共9页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

并行IO口模拟串行I2C总线技术Word文件下载.docx

《并行IO口模拟串行I2C总线技术Word文件下载.docx》由会员分享,可在线阅读,更多相关《并行IO口模拟串行I2C总线技术Word文件下载.docx(9页珍藏版)》请在冰点文库上搜索。

并行IO口模拟串行I2C总线技术Word文件下载.docx

4键盘,4位IO口的简单的微控系统,通常需要48根线以上IO资源。

而一般的单片机,除去一些中断,复位,定时器IO口占用部分复用IO外,远不能满足需要,通常用8155、8255、373、245去扩展IO口,而硬件扩展IO口使系统线路复杂,印制板面积增大,成本增

高,且整体性能降低。

PHILIP公司推出I2C总线专利技术是解决资源紧张的有效措施。

I2C

总线是目前最完善的外围器件的扩展总线,具有最完善的总线规范和最方便用户界面,其上可挂接多达128个串行外围器件或设备。

用单片机普通IO口可模拟I2C总线,实现与外围器件或设备的通讯,只需占两个IO口,在硬件连接上省去片选线。

外围器件只需并行挂接于两IO上,连接必要的电源馈线Vcc或Vss既可,可节省大量的IO资源。

1 I2C总线规范

  I2C总线是两线串行接口,即SDA串行数据线和SCL串行时钟线。

SDA是一个双向传输端,用于传输地址和数据进入器件或从器件发出数据。

SCL串行时钟端用于同步进入器件或从器件发出数据。

总线必须由一个主器件控制。

主器件为单片机或CPU,主器件产生串行时钟(SCL,控制与从器件通讯,并且产生开始和停止条件。

主器件和从器件均可工作在接收或者发送数据的状态,何种状态由主器件所发送的控制字的读写位决定。

读操作时,从器件为发送数据状态,主器件为接收数据状态,写操作则反之。

a

收稿日期:

1998209214

总线规程如下:

(1总线不忙时

数据和时钟线保持高电平。

(2开始数据传送(S

当时钟(SCL为高,SDA线由高到低变化决定开始条件。

所有命令必须在开始条件以后进行。

(3停止数据传送(P

当时钟(SCL为高,SDA线由低到高的变化决定停止条件。

所有操作必需在停止条件以前结束。

总线定时开始停止时序如图1

图1

  (4数据有效

时钟信号低电平周期期间,数据线上数据才允许改变。

每位数据需要一个时钟脉冲。

总线定时数据传送时序如图2

图2

  (5确认

在每一字节接收以后,当导址时,每一接收器件必须产生一确认信号(ACK。

主器件必须产生一个与确认位相对应的额外的额外时钟脉冲。

在额外时钟脉冲高电平期间主器件必须将SDA线拉为稳定的低电平,可确认器件。

若不在从器件输出的最后一个字节中产生确认位,主器件必须发送一个数据结束信号给从器件。

这种情况下,从器件必须保持为高电平,使主器件能产生停止条件。

(6从器件地址

总线规范中采用了七位地址方式,总线上每个从器件地址由四位器件编号地址和三位引脚地址给定。

七位地址数据D7-D1位,D7-D4为器件码,D3-D1为片选码。

D0为数据传输方向位,高电平为从器件的读操作,低电平为写操作。

2 应用实例

  下面以单片机普通IO口模拟I2C总线与E2PROM存储器件通信为例,介绍其使用方法。

2.1 硬件设计

单片机选用89C2051单片机,存储器件采用八个与I2C总线兼容AT24C系列串行E2PROM,型号为ATMEL公司的AT24C0102。

它在应用系统中可进行+5v电源在线改写,无需配置专门写入电源,硬件连接线路如图3

图3

2.2 软件设计

单片机IO口模拟I2C总线,需严格遵循I2C总线规范。

(189C2051单片机作为主器件,其编程需严格按照I2C总线时钟规范,通过编程对P1.5置位或复位产生串行时钟,同时对P1.4操作,准备需发送的数据,总线定时开始停止时钟遵照图1,总线定时数据发送时钟遵照图2。

(224C0102B接收数据后,确认过程按I2C规程,通过编程使P1.5(SCL产生额外时钟脉冲,在P1.5为高电平期间,等候接收器件发出确认位,确认位使P1.4置低后,89C2051可继续发送第二字节。

(3从器件按I2C规程配置其控制字节。

24C0102B的器件码为1010,其控制字节配置为

操作方式

器件码片选读写读

1010×

×

I2.2.1 字节写操作编程

24C0102字节写周期如图4。

89c2051发出开始信号后,发送器件控制码,控制码包括四位器件码,三位片选码,以及低电平的读写位至总线,24C0102被寻址。

一个字地址字节将跟在第九时钟周期产生的确认位后。

因此,主器件发送的下一字节为地址字节,写入24C0102的地址指针,主器件接收来自24C0102的确认信号(ACK后,将发送数据字节,将其写入到寻址的存储器地址,24C0102再次发出确认信号,同时主器件产生停止条件

图4

  将任意数分别存入三个24C0102中,地址都为00H,程序如下:

ORG   0000H

MAIN:

  MOV   R2,#00H    ;

从器件首地址

MOV  R1,A0H  

;

第一块24C0102控制码ACALL CS 

存数子程序MOV 

R1,A2H  ;

第二块24C0102控制码ACALL CS  MOVE 

R1,A4H ;

第三块24102控制码ACALL CS  HERE:

AJMP 

HERE   FS:

SETB 

P1.4  ;

开始条件SETB 

P1.5  CLR 

P1.4  CLR 

P1.5  MOV 

A,R1  ;

发送控制字ACALL FYZMOV A,R2  ;

发送首地址

ACALL FYZMOV  A,R3 ;

发送数字

ACALL FYZSETB  P1.4  

停止条件SETB 

P1.5  RET  

  FYZ:

MOV R6,#08H  ;

发送一个字节程序XH:

CLR 

P1.5  RLC 

A MOV 

P1.4,C SC:

P1.5 ;

SDA有效DJNZ 

R6,XH  CLR 

P1.5  SETB 

P1.4 ;

P1.4为输入状态SETB 

P1.5  JB 

P1.4,$  ;

等候接收从设备的ACK信号

P1.5RET

2.2.2 字节读操作编程要完成读随意地址字节的读操作,必须首先置字地址,通过将地址作为写操作一部分发送给24C0102完成。

发送字地址后,主器件在确认位后产生开始条件,以结束写操作。

主器件再次发出控制字节,使RW=1,24C0102产生确认位并发送出8位数据,主器件接收

后,不确认传递,产生一停止条件。

读随意地址字节周期如图5

图5

  读出第一个24C0102,首地址为00H中的数。

程序如下:

QS:

  SETB  P1.4      ;

开始条件(S

SOETB  P1.5

CLR  P1.4

CLR  P1.5

MOV  A,#A0H  

发送第一个24C0102写控制字ACALL FYZ

MOV  A,#00H  

发送从器件首地址ACALL FYZ

SETB  P1.4  

开始条件(SSETB  P1.5

MOV  A,#A1H  

发送读控制字ACALL  FYZ

LOOP:

MOV  A,#00H 

读数MOV  R2,#08H

LOP:

SETB  P1.4 

P1.4为输入状态SETB  P1.5

RL   A

JNB  P1.4, LP

SETB  ACC.0

LP:

DJNZ  R2,LOP 

读出了一个字节CLR  P1.5 

停止条件(PSETB  P1.5

SETB  P1.4

RET

3 结束语

  用单片机IO口模拟I2C总线,除存储器件外,各种I2C总线或与I2C总线兼容的外围器件,均可挂接在IO线,可有效解决IO的馈乏问题。

实际调试证明,所开发的软件系统

12西 南 工 学 院 学 报1999年工作正常,存取数据安全可靠。

参考文献1 ATMELCORP..SeriallCMOSEEPROMDatabook,A.S.A,19952 ATMELCorp.,AT89C2051MicrocontrollerDatabook,U.S.A,1995CONSTRUCTINGICBUSTECHNIQUEWITHPARALLELBUSMaJianguo LiuGuihua(SouthwestInstituteofTechnologyAbstract2  ConstructingI2Cbustechniquewithparallelbusatmirocontrollerisintroducedinthispaper.AApplicationhasdesigned,withAT89C2051,AT24C0102.Progrmmingandschemehasputforward.2KeyWords:

ICbus;

microcontroller;

parallelinterface;

serialinterface;

IOport©

1995-2005TsinghuaTongfangOpticalDiscCo.,Ltd.Allrightsreserved.

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2