




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单片机中级教程 原理与应用1 在器件(IC)之间,使用两根信号线(SDA和SCL)串行的方法进行信息传送的并允许若干兼容器件共享的二线总线,称为。Inter Integrated Circuit单片机中级教程 原理与应用2DECT cordless phone base-stationDigital Enhanced Cordless Telecommunications SDA(Serial DAta)线称为串行数据线,其上传输双向的数据;SCL(Serial CLock)线称为串行时钟线,其上传输时钟信号,用来同步串行数据线上的数据。 单片机中级教程 原理与应用3 I2C总线上的器件,SD
2、A和SCL引脚都是一个开漏输出端。单片机中级教程 原理与应用4 挂接在I2C总线上的器件(或IC),根据其功能可分为两种:主控器件和从控器件。 主控器件:控制总线存取,产生串行时钟(SCL)信号,并产生启动传送信号及结束传送信号的器件,总线必须由一个主控器件控制。主控器件一般称主器件(主机)。 从控器件:在总线上被主控器件寻址的器件,它们根据主控器件的命令来接收和发送数据。从控器件一般称从器件(从机)。单片机中级教程 原理与应用5I2C总线系统是一个允许多主的系统。 系统中的某一器件有四种可能的工作方式:主发送方式、主接收方式、从发送方式和从接收方式。单片机中级教程 原理与应用6 在I2C总线
3、上的所有器件是按照如下的数据传输协议协调工作的:据此定义以下总线条件: 总线不忙SCL=SDA=1只有当总线不忙时,数据传输才能开始; 当串行时钟线为高电平时,串行数据线的变化将认为是传送的开始或停止;当串行时钟线为低电平时,才允许串行数据线发生变化; 数据传送期间,无论何时串行时钟线为高电平,串行数据线必须保持稳定。单片机中级教程 原理与应用7 开始数据传送 停止数据传送起始信号(START)停止信号(STOP)单片机中级教程 原理与应用8 数据有效(Data validity )单片机中级教程 原理与应用9 应答(Acknowledge)单片机中级教程 原理与应用10单片机中级教程 原理与
4、应用11主发送到从接收主机发送,从机接收,传输的方向不会改变单片机中级教程 原理与应用12从发送到主接收 主机在发送完第一个字节后,立即读从机。第一次响应仍由从机产生,在第一次响应后主机变成接受器,从机变成发送器。停止条件由主机发出。单片机中级教程 原理与应用13复合格式 传输改变方向的时侯,起始条件和从机地址都会被重复,且R/W 位取反。 如果主机作为接收,发送一个重复起始条件,它之前应该发送了一个不响应信号(A)。单片机中级教程 原理与应用14仲裁和时钟发生时钟同步单片机中级教程 原理与应用15仲裁单片机中级教程 原理与应用16 在主控器件和从控器件之间双向传送数据; 无中央主控器件的多主
5、总线; 多主传送时,不发生错误; 可以使用不同的位速率; 串行时钟作为交接信号; 可用于测试和诊断目的。单片机中级教程 原理与应用17 在单片机应用系统中,单主结构占绝大多数。在单主系统中,I2C总线的数据传送状态要简单得多,没有总线竞争与同步问题,只有作为主器件的单片机对I2C总线器件的读/写操作。这就简化了模拟软件的设计工作。 有I2C总线的单片机中,可以直接用I2C总线来进行系统的串行扩展;对于80C51系列单片机,大多数没有I2C总线接口功能,而是采用软件模拟双向数据传送协议的方法,来实现系统的串行扩展。单片机中级教程 原理与应用181.利用模拟I2C扩展串行E2PROM(1) 串行E
6、 PROM24LC32的特点及引脚 24LC32是32 Kb(4 K8位)串行存取的电擦除可编程的只读存储器E2PROM 。特点:芯片对快速写操作具有8个8B字节页面、或者64字节的高速缓存器,并具有二线串行接口。在I2C上作从器件使用;单片机中级教程 原理与应用19 可在电源电压低到2.5V的条件下工作,芯片还有功率等待模式,以降低功耗;等待电流和额定电流分别为1A和3 mA(写); 地址线允许8片24LC32连接到相同的总线上,得到256 Kb位地址空间。引脚:A0、A1、A2:芯片地址输入端WP : 写保护端单片机中级教程 原理与应用20(2) 器件的寻址和操作控制字节和器件寻址单片机中
7、级教程 原理与应用21 作为从器件,接收到的下两个字节定义了第一个数据字节的地址。 由于仅用A0A11,所以最高4位地址码必须为0。 但对于ATMEL公司的产品来说,无此规定。firstlast地址的最高有效字节的最高有效位最先发送。单片机中级教程 原理与应用22写操作字节写 主器件发出开始条件以后,再发送R/W=0的控制字节到总线上。这指示被寻址的从接收器的两个地址字节及一个数据字节将跟在第9个时钟周期产生的确认(应答)位之后。10100 主器件发送的下一个字节是字地址的高地址字节,应答后,接着是低地址字节,再次应答后,它们将被写入24LC32的地址指针。随后主器件发送写入到被寻址的存储器里
8、的数据字节。24LC32应答后,主器件发出停止条件。R/W =0时,将启动写操作。单片机中级教程 原理与应用23页面写 写控制字节、字地址和第一个数据字节以与字节写相同的方式发送到24LC32。但是替代产生停止条件,主器件可发送多达8页的8个数据字节(总共64个字节)。24LC32先将这些数据字节暂存在片内的页面高速缓存器中。 一旦接收到主器件的停止条件后,则内部的写周期开始,这些数据字节将从页面高速缓存器中写入E2PROM阵列。接收到每一个字节后,24LC32的低6位顺序地址指针在内部加1,高6位顺序地址指针保持不变。单片机中级教程 原理与应用24 如果主器件在产生停止条件以前要发送多于8个
9、字节的数据(越过页边界写),地址计数器的低3位将会翻转,并且指针将加1,指向页面高速缓存器的下一页。这样重复8次后或者直至高速缓存器存满时,主器件产生停止条件。如果停止条件没有接收到,高速缓存器指针将翻转到第一页(字节0),这之后再接收到的数据将覆盖以前所获得的数据。在发送期间的任何时刻都可传送停止条件。单片机中级教程 原理与应用25应答查询 由于在写周期期间,器件将不会应答,所以,这一点可以用来决定写周期在什么时候完成。一旦针对写命令的停止条件由主器件发出,从器件开始进行内部定时写周期,主器件的ACK查询被立即启动。如果写周期器件仍然很忙,则ACK信号将不会产生;如果周期已经完成,则器件将产
10、生ACK信号。主器件将可以进行下一次的读或写操作。单片机中级教程 原理与应用26读操作读当前地址内容 当控制字的R/W位被置为“1”时,将启动读操作。存在三种基本的读操作类型:读当前地址内容、读随意地址内容及读顺序地址内容。1 0 1 01 读当前地址内容24LC32内部包含一个自动加1的地址计数器,它保存被存取过的最后一个字节的地址。如果以前存取的地址为n,下一次读操作则从n+1地址中读数据。 在接收到的从地址中的R/W为1的情况下,24LC32发送一个应答位,并且送出8位数据。主器件发出非应答信号(NO ACK),使从器件释放数据线,以便主器件发出一个停止条件,从而终止数据传送。单片机中级
11、教程 原理与应用27读随意地址内容 此方式允许主器件以任意方式读存储器任意地址的内容。这种读操作须先置字地址,即主器件将字地址作为写操作的一部分送给24LC32。在发送了字地址以后,主器件在应答位之后产生一个开始条件。这样可以在内部地址计数器置数后终止写操作。主器件再次发R/W为1的控制字。24LC32将发出应答位,并发送出8位数据。主器件将发送非应答信号,并产生一个停止条件,从而终止发送。单片机中级教程 原理与应用28读顺序地址内容 读顺序地址内容方式与读随意地址内容方式的启动方法一样,但是在24LC32发送第一个数据字节后,主器件不发出终止发送的信号(发送应答信号)。24LC32继续发送下
12、一个地址的8位数据,其内部的地址指针在操作后自动加1。地址指针允许在一次操作期间,连续顺序地读出整个存储器。 当主器件接收到最后一个字节后,主器件将产生非应答信号及一个停止条件,终止传送。单片机中级教程 原理与应用29(3) 80C51与串行E PROM 24LC32的接口和编程 80C51与串行24LC32的接口80C51与串行E2PROM 24LC32的接口原理图单片机中级教程 原理与应用30 模拟I2C总线的编程利用模拟仿真的方法,编写通用子程序。 这些通用子程序包括:启动、停止、发送应答位及非应答位、应答位检查、单字节数据接收与发送。 以下子程序中,设定单片机所使用的晶体振荡器为6MH
13、z,即机器周期为2S。若晶体振荡器不是6MHz,则可根据情况增减程序中的NOP指令即可。汇编语言汇编语言编写的子程序:SDA BITP1.7SCLBITP1.6单片机中级教程 原理与应用31A.启动I2C总线子程序:START: SETBSDASETBSCLNOPNOPCLRSDANOP NOPCLRSCLNOPRET单片机中级教程 原理与应用32B.停止I2C总线子程序:STOP:CLR SDA SETB SCL NOP NOP SETB SDA NOP NOP CLR SCL NOP RET单片机中级教程 原理与应用33C. 发送应答位子程序:S_ACK: CLRSDA SETB SCL
14、NOP NOP CLRSCL SETBSDA RETD. 应答位检查子程序: 子程序出口时,SDA线的状态存入标志位F0中,若有ACK,F0=0,否则F0=1。单片机中级教程 原理与应用34C_ACK: SETB SDA ;SDA为输入状态 SETB SCL ;第9个时钟脉冲开始 NOP MOVC,SDA ;读SDA线 MOVF0,C ;存入F0中 CLRSCL; 第9个时钟脉冲结束 NOP RET单片机中级教程 原理与应用35E. 单字节数据发送子程序:将累加器A中的待发送数据送上SDA线。WRBYT: MOV R7,#8 ; 发送8位WRBYT1: RLC A;将发送位移入C中 JC WR
15、BYT2 ;此位为1,转WRBYT2 CLR SDA;此位为0,发送0 SETB SCL; 时钟脉冲开始 NOP NOP CLR SCL ; 时钟脉冲结束 DJNZ R7,WRBYT1 ;未发送完,转WRBYT1 RET单片机中级教程 原理与应用36WRBYT2: SETB SDA; 此位为1,发送1 SETB SCL ; 时钟脉冲开始NOPNOPCLR SCL ; 时钟脉冲结束CLR SDADJNZ R7,WRBYT1;未发送完,转WRBYT1RET单片机中级教程 原理与应用37F. 单字节数据接收子程序: 从SDA线上读一个字节的数据,存入A中。RDBYT: MOV R7,#8 ; 接收8
16、位RDBYT1: SETB SDA ; SDA为输入状态 SETB SCL; 时钟脉冲开始 MOV C,SDA ;读SDA线 MOV A,R6 ;取回暂存结果 RLCA;移入新接收位 MOV R6,A ; 将结果暂存R6 CLRSCL; 时钟脉冲结束 DJNZ R7,RDBYT1 ;未读完8位,转RDBYT1 RET ;读完8位,返回单片机中级教程 原理与应用382.利用I2C扩展I/O接口 PCF8574T是一种单片CMOS电路,具有I2C总线接口和8位准双向口。在I2C总线系统中仅作从器件。具有低的电流损耗,最大静态电流为10 A;能输出大的电流,并有锁存功能,可直接驱动 LED发光管;有
17、中断逻辑线;3根硬件地址引脚使I2C总线系统可挂接8只 PCF8574。器件的串行时钟的最高频率为400 kHz单片机中级教程 原理与应用39SDA:串行数据线,双向。SCL:串行时钟线,输入。P7P0:8位准双向输入/输出口。准双向口的每一位可作输出或输出。上电复位时,口的每一位均为高电平。某位在作输入前,应置为高电平。A2A0:地址输入线。INT:中断输出线,低电平有效。单片机中级教程 原理与应用40 PCF8574 的每个I/O 口都可单独用作输入或输出。输入通过读模式将数据传送到MCU,输出通过写模式将数据发送到端口。 寻址PCF8574 和PCF8574A 的单片机中级教程 原理与应用41 写模式(输出)单片机中级教程 原理与应用42 读模式(输入)单片机中级教程 原理与应用43 中断 在输入模式中(读),口输入信号的上升或下降沿产生中断。单片机中级教程 原理与应用44PCF8574读方式的连接将开关的状态读入片内RAM 30H单元中。单片机中级教程 原理与应用45开始条件PCF8574为读方式检查ACK信号读数据 单片机中级教程 原理与应用4
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 智慧城市建设中的环境保护措施-洞察及研究
- 2025年营养学合理膳食营养方案设计模拟考试答案及解析
- 社交媒体对心理健康影响-洞察及研究
- 现代诗歌朗读节奏训练与技巧强化方案
- 2025年肝胆胰疾病治疗方案评估答案及解析
- 智能安防系统设计方案书
- 2025年康复护理学康复治疗方案设计考核答案及解析
- 连锁酒店质检信息管理系统方案
- 中职英语听说能力培养方案
- 租赁合同范本及注意事项解析
- 知识产权代持协议示范文本
- 移动支付网络安全学习心得体会
- 电力反窃查违培训
- 2025-2030中国聚酯TPU薄膜行业运营态势与前景动态预测报告
- pos机收款管理制度
- 2025年重庆文化旅游集团有限公司招聘笔试参考题库含答案解析
- 朗格汉斯细胞病诊疗研究进展
- 《儿童病毒性脑炎》教学课件
- 建筑行业质量月知识竞赛考试题库500题(含答案)
- DB37-T 5310-2025《城镇排水管渠养护维修服务规范》
- 《南京江北新材料科技园总体发展规划 (2021-2035)环境影响报告书》
评论
0/150
提交评论