- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MCS单片机外部串行总线接口技术
第9章 常用的串行接口技术 9.1 常用的串行总线简介 9.2 串行 E2PROM X5045 接口扩展技术 9.4 串行 E2PROM 芯片 AT24CXX 系列 9.1 几种外部串行总线工作方式 9.1.1 SPI串行总线 9.1.2 I2C总线 9.1.1 SPI串行总线 9.1.2 I2C总线 I2C(Inter Integrated Circuit)总线 由Philips公司推出的芯片间串行传输总线 I2C总线以1根串行数据线(SDA)和1根串行时钟线(SCL)实现了全双工的同步数据传输 9.2 串行E2PROM X5045接口扩展技术 - SPI 4种基本功能 1. 上电复位 2. 低电压检测 3. 看门狗定时器 WDT 4. 串行E2PROM存储器 3. 看门狗定时器 复位X5045看门狗定时器(喂狗)程序 4. 串行E2PROM存储器 (1)写 存储单元或寄存器 (2)读 存储单元或寄存器 (1)写 写使能寄存器:WREN 写串行数据 往X5045内部送入一个字节的串行数据 写X5045内部EEPROM内容 (2)读 读X5045内部EEPROM内部指定地址的内容 从X5045送出一个字节的串行数据 读X5045内部EEPROM内部指定地址的内容 (2)读 读状态寄存器 读X5045内部状态寄存器 9.4 串行 E2PROM 芯片 AT24CXX 系列 I2C启动条件 往24C01内部送入一个字节串行数据,包括接受数据后的1个应答信号。 I2C终止条件 * * 图9.1 单片机与多个SPI串行接口设备典型连接 SPI(Serial Peripheral Interface 串行外设接口) Motorola公司提出的一种同步串行外设接口 使MCU与各种外围设备以同步串行通信方式交换信息 该总线大量用在与E2PROM、ADC、FRAM和显示驱动器之类的慢速外设器件通信 图9.2 MCS-51单片机I/O口模拟SPI总线接口原理图 Start +期间地址 +读写命令(器件内部地址) 图9.3 I2C器件连接实例 图9.10 X5045引脚图 图9.14 AT89C51与X5045的典型接口电路 CS BIT P1.0 SO BIT P1.2 SCK BIT P1.1 SI BIT P1.3 WREN_CMD EQU 06H WRDI_CMD EQU 04H RSDR_CMD EQU 05H WRSR_CMD EQU 01H READ_CMD EQU 03H WRITE_CMD EQU 02H 图9.13 X5045看门狗定时器工作示意图 (6)子程序名称:CLR_WDT CLR_WDT: CLR CS ;产生一个负脉冲 NOP NOP NOP NOP NOP SETB CS RET (a) 写使能锁存器操作时序 (b) 写存储器操作时序 (3)子程序名称:SEND 【程序入口】A SEND: MOV R6,#8 SEND1: RLC A CLR SCK LCALL X_SDELAY MOV SI,C SETB SCK LCALL X_SDELAY DJNZ R6,SEND1 RET (2)子程序名称:WR_ROM 【入口】R5,R6,R7。R7为要写入地址的低8位,R6为要写入地址的高位,R5写的数值。 WR_ROM: MOV B,R6 ;R6中的内容暂存,R6=0或1 CLR CS CLR SCK CLR SI LCALL X_SDELAY ;短延时 MOV A,#WREN_CMD ;发WREN允许写指令 LCALL SEND ;传送一个字节串行数据 SETB CS ;根据写地址的高位对写指令进行调整 LCALL X_SDELAY MOV A,B ;处理高位地址 RL A RL A RL A MOV B,A MOV A,#WRITE_CMD ADD A,B ;生成写命令 CLR SCK CLR SI CLR CS LCALL SEND ;送入写指令 CLR SI MOV A,R7 LCALL SEND ;送入低位地址 CLR SI MOV A,R5 LCALL SEND ;送数据入指定EEPROM地址 SETB CS RET (a) 读E2PROM阵列操作时序 (5)子程序名称:LOAD 【程序出口】A
文档评论(0)