(3)指令帧

指令帧用于传送指令,由指令编码和应答序列组成。指令及其编码往各种UNI/O从器件中定义。指令帧中的主应答位应根据指令是否要求传输其他数据字节确定。当指令要求传输其他数据字节时,该位为MAK,否则为NoMAK。从应答位正常情况下为SAK。

1.3.3 UNI/O总线的命令序列

图3所示的是用于执行8位地址从器件指令的命令序列。其中字节帧的数量在总线规范中未进行限制,只要前一个字节帧中的主应答位为MAK就表示期望传输下一个字节帧。不过,字节帧的实际数量必须符合从器件指令的使用规范。在此前提下,可以由用户程序根据其功能决定。用于执行12位地址从器件指令的命令序列如图4所示。

基于UNI/O总线系统的应用设计方案及发展前景

2 UNI/O从器件与单片机的接口设计

11XXX系列EEPROM是Microchip技术公司最新推出的、支持UNI/O总线协议的存储器产品。下面就以该存储器的使用为例,详细介绍UNI/O总线系统的应用设计方法。

2.1 硬件设计

图5给出了11XXX系列EEPROM与单片机的接口原理图。图中,SCIO引脚上接一个20 kΩ的上拉电阻是为了确保总线在上电/掉电序列期间以及未被驱动时处于空闲状态。VCC和VSS之间接入一个0.1μF的去耦电容是为了滤除VCC上的噪声。

基于UNI/O总线系统的应用设计方案及发展前景

2.2 软件设计

2.2.1 UNI/O存储器11XXX的操作指令

11XXX系列存储器共有9条操作指令,其指令编码和功能描述如表1所列。

基于UNI/O总线系统的应用设计方案及发展前景

2.2.2 UNI/O存储器11XXX的高级特性

11XXX器件除了具有EEPROM存储器的基本特性、支持UNI/O总线协议外,还有以下高级特性。这些高级特性也是编写接口程序的基本依据。

(1)内置了一个状态寄存器

状态寄存器可以用来提供状态信息和片内数据的保护控制。其各位的功能定义如下:

①Bit0。为写进行位WIP,用于表明11XXX是否忙于写操作。当它为1时,表明正在进行写操作;为0时,表明没有进行写操作。此位只读。要编写高效率的写存储阵列程序,可采用WIP查询来及时检测写周期的结束。

②Bit1。为写使能锁存器位WEL,用于表明写使能锁存器的状态。当它为1时,锁存器允许存储阵列无保护块和状态寄存器的写入操作;当置为0时,禁止写入操作。只能使用WREN指令来将此位置1,但会在上电或成功执行了以下指令之一时复位。这些指令包括:WRDI、WRSR、WRITE、SETAL和ERAL。