新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > FLASH单片机在税控器开发中的应用

FLASH单片机在税控器开发中的应用

作者:时间:2013-09-30来源:网络收藏

AT45DBl61支持SPI系统工作方式,SPI的四种工作方式如图3所示。

SPI四种工作方式的时序


其中支持SPI 0和SPI 3两种方式的时序图分别如图4和图5所示。

AT45DBl6l在PSI下的工作时序


对于不同的操作模式,即使在执行相同的操作时,其操作码也可能不同。如读存储页操作,SPI 0模式下的命令代码为52H,而SPI 3模式下的命令代码则为D2H。除读状态寄存器外,所有的命令格均示于图6图中的rr:代表保留位,建议清零。

AT45DBl6l读写命令格式


操作时,MCU首先向AT45DBl6l发送1个命令字节,其后跟随24位地址数据(前两位为保留位,其后12位为页地址选择位,最后10位为页内开始字节地址),最后根据不同的操作对SI执行不同的处理。如写操作后面紧跟着待写入的数据(高位在前),那么,读存储页就要延迟32个SCK时钟周期以处理读操作,读缓冲区则需延迟8个SCK时钟周期。读状态寄存器的时序(SPI 0)如图7所示。

读状态寄存器的时序


读状态寄存器(SCK上升沿写入)时,在写入命令字节(57H)后,如没有地址数据,那么,在其后的8个SCK周期就可以直接从SO读取STATUS数据,而且可以连续读取,直到片选信号/CS置高为止。
基于AT45DBl61的存储电路设计

◇系统硬件设计

图8所示为AT45DB16l与W78E516B连接示意图。虽然FLASH的工作电压和MCU不同,但它们都不需要电平转换,两者仍能正常通讯,从而简化了电路设计,节约了系统成本。由于WP接高电平,因而去掉了FLASH前256个字节的写保护功能,并且不会对系统的安全造成隐患,同时还节约了单片机的I/O口资源。为了保证对FLASH操作的可靠性,上电后,可对FLASH在操作前复位一次。AT45DB16l的RDY没有占用单片机的I/O口,可在软件处理中通过读状态寄存器的方法来确定FLASH内部操作是否处于忙状态。

AT45DB16l与MCU硬件连接图


◇系统软件设计

系统中包含智能卡的读写、FLASH读写和串口通讯处理操作,对于智能

卡读写和串口通讯处理,由于和本文的侧重点相关不大,就不再一一介绍了。FLASH的读写操作主要包括读缓冲区、读存储页、读状态寄存器、写缓冲区和写存储页。下面以FLASH的读写存储页的操作为例,简要介绍一下软件处理流程。

FLASH单片机在税控器开发中的应用


FLASH写数据过程都采用先写入缓冲区,再从缓冲区写入存储页中方法,且数据都是以页为单位,每次要写入528个字节。如果只修改页中部分数据,而保留该页其他数据,那么,必须先把该页数据拷贝到缓冲区中,然后调用写缓冲区操作,再把缓冲区的数据写入该存储页中。

结束语

AT45DBl61串行FLASH存储芯片在中的实际应用效果很好,而且编程也比较简单,与其它一些FLASH存储芯片相比,AT45DB16的突出特点是电路简单,存储容量大,占用系统资源少。


上一页 1 2 下一页

评论


技术专区

关闭