- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第7章 单片机的系统扩展 第7章 单片机的系统扩展 (3)8155的状态字格式 第7章 单片机的系统扩展 8155片内可编程定时/计数器由两个8位寄存器组成,低8位和高6位存放计数初值,最高2位控制定时器的工作方式 (4)8155的定时器使用 第7章 单片机的系统扩展 (5)8155的端口地址分配 AD7 AD6 AD5 AD4 AD3 AD2 AD1 AD0 选 中 的 寄 存 器 × × × × × 0 0 0 命令/状态寄存器 × × × × × 0 0 1 PA口 × × × × × 0 1 0 PB口 × × × × × 0 1 1 PC口 × × × × × 1 0 0 定时计数器的低8位寄存器 × × × × × 1 0 1 定时计数器的高6位寄存器及工作方式字(2位) 第7章 单片机的系统扩展 8155接口扩展举例 (1)8255与单片机连接图 第7章 单片机的系统扩展 8155的端口地址编码为: 命令/状态寄存器地址:7F00H, 片内RAM字节地址: 7E00H~7EFFH, PA口地址: 7F01H, PB口地址: 7F02H, PC口地址: 7F03H, 定时计数器低位地址: 7F04H, 定时计数器高位地址: 7F05H。 第7章 单片机的系统扩展 若要求8155的PA、PB作为基本输出口,PC作为基本输入口,不允许中断,不启动定时计数器,则命令字为03H,初始化编程下: MOV DPTR, #7F00H ;8155命令口地址 MOV A, #03H MOVX @DPTR, A ;写入命令字 (2) 8155初始化 第7章 单片机的系统扩展 I2C总线是PHILIPS公司开发的一种简单、双向二线制同步串行总线, 它只需要两根线(串行时钟线和串行数据线)即可在连接于总线上的器件之间传送信息。 主要特性如下: 总线只有两根线:串行时钟线和串行数据线; 每个连到总线上的器件都可由软件以唯一的地址寻址,并建立简单的主/从关系, 主器件既可作为发送器, 也可作为接收器; 它是一个真正的多主总线, 带有竞争检测和仲裁电路, 可使多主机任意同时发送而不破坏总线上的数据; 同步时钟允许器件通过总线以不同的波特率进行通信; 同步时钟可以作为停止和重新启动串行口发送的握手方式; 连接到同一总线的集成电路数只受400PF的最大总线电容的限制。 利用I2C总线进行系统扩展 第7章 单片机的系统扩展 I2C总线接口的电气结构如图所示, 组成I2C总线的串行数据线SDA和串行时钟线SCL 必须经过上拉电阻Rp接到正电源上, 连接到总线上的器件的输出级必须为“开漏”或“开集” 的形式,以便完成“线与”功能。SDA和SCL都为双向I/O口线, 总线空闲时皆为高电平。 总线上数据传送最高速率可达100Kbit/s。 I2C总线的电气结构 第7章 单片机的系统扩展 I2C总线可以构成多主数据传送系统, 但只有带CPU的器件可以成为主器件。 主器件发送时钟、启动位、数据工作方式, 从器件则接收时钟及数据工作方式。接收或发送则根据数据的传送方向决定。I2C总线上数据传送时的启动、结束和有效状态都由SDA、SCL的电平状态决定, 在I2C总线规程中启动和停止条件规定如下: 启动条件: 在SCL为高电平时, SDA出现一个下降沿则启动I2C总线。 停止条件: 在SCL为高电平时, SDA出现一个上升沿则停止使用I2C总线。 第7章 单片机的系统扩展 在启动和停止条件之间可转送的数据不受限制,但每个字节必须为8位,先传送最高位, 在每个字节之后必须跟一个响应位。主器件收发每个字节后产生一个时钟应答脉冲, 在这期间, 发送器必须保证 SDA为高, 由接收器将SDA拉低, 称为应答信号(ACK)。主器件为接收器时, 在接收了最后一个字节之后不发应答信号, 也称为非应答信号(NOT ACK)。 I2C总线的数据传输 第7章 单片机的系统扩展 总线中每个器件都有自己唯一确定的地址, 启动条件后主机发送的第一个字节就是被读写的从器件地址, 其中第8位为方向位, “0”(W)表示主器件发送,“1”(R)表示主器件接收。总线上每个器件在启动条件后都把自己的地址与前7位相比较, 如相同则器件被选中, 产生应答, 并根据读写位决
文档评论(0)