保存桌面快捷方式 - - 设为首页 - 手机版
凹丫丫旗下网站:四字成语大全 - 故事大全 - 范文大全
您现在的位置: 范文大全 >> 理工论文 >> 电子通信论文 >> 正文

AT93C46/56/55串行EEPROM及单片机程序


nbsp; 表中,93C46 n=6;93C56n=7; 93C66n=8

2 指令及时序

AT93C46/56/66的指令如表1所列,各指令的具体含义如下:

(1)擦/写允许指令(EWEN)

由于在上电复位后?AT93C46/56/66首先将处于擦/写不允许状态。故该指令必须在所有编程模式前执行,一旦该指令执行后,只要外部没有断电就可以对芯片进行编程。

(2)地址擦指令(ERASE)

该指令用于强迫指定地址中所有数据位都为“1”。一旦信息在DI端上被译码,就需使CS信号保持至少250ns的低电平,然后将CS置为高电平,这时,DO端就会指示“忙”标志。DO为“0”,表示编程正在进行;DO为“1”,表示该指定地址的寄存器单元已擦完,可以执行下一条指令。

(3)地址写指令(WRITE)

写指令时,先写地址,然后将16位的?或8位?数据写入到指定地址中。当DI端输出最后一个数据位后,在CLK时钟的下一个上升沿以前,CS必须为低,且需至少保持250ns,然后将CS置为高电平。需要说明的是:写周期时,每写一个字节需耗时4ms。

(4)地址读指令(READ)

读指令用于从指定的单元中把数据从高位到低位输出至DO端,但逻辑“0”位先于数据位输出。读指令在CLK的上升沿触发,且需经过一段时间方可稳定。为防止出错,建议在读指令结束后,再输出2~3个CLK脉冲。

(5)芯片擦指令(ERAL)

该指令可将整个存贮器阵列置为1,其它功能与地址擦指令相同。

(6)芯片写指令?WRAL?

该指令可将命令中指定的数据写入整个存贮器阵列,其它功能与地址写指令相同。该指令周期所花费时间的最大值为30ms。

(7)擦/写禁止指令(EWDS)

使用该指令可对写入的数据进行保护,操作步骤与擦/写允许指令相同。

3 AT93C56的应用

3.1 AT93C56与80C196KB的连接

串行EEPROM芯片AT93C56同80C196单片机接口的硬件电路连接方法如图2所示。图中,由于MCS-96系列16位单片机的P1口为准双向口,因此,为了防止数据错位,在向其P1口写数据时,必须先将P1口置“1”。

3.2 软件编程

该读/写程序采用PL/M语言编写,由于PL/M语言介于高级语言与汇编语言之间,故其对数据、地址位的处理比较繁琐。其中ADDR为指定的地址单元,DATA为写入的数据,在写数据、地址时均从高位开始。本程序已在仿真器上调试通过。且已被应用于电量测试仪中(如接触电阻测试仪)。

DECLARE SETCS LITERALLY ‘CALL BITSET?. IO-PORT2,0?′;

DECLARE CLRCS LITERALLY ‘CALL BITCLR?. IOPORT2,0?′;

DECLARE SETCLK LITERALLY ‘CALL BITSET?. IOPORT2,5?′;

DECLARE CLRCLK LITERALLY ‘CALL BITCLR?. IOPORT2,5?′;

DECLARE SETDI LITERALLY ‘CALL BITSET?. IO-PO

《AT93C46/56/55串行EEPROM及单片机程序(第2页)》
本文链接地址:http://www.oyaya.net/fanwen/view/160387.html

★温馨提示:你可以返回到 电子通信论文 也可以利用本站页顶的站内搜索功能查找你想要的文章。