- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
基于单片机的FIash存储器坏块自动检测
2.3 74LVX4245电平转换器
74LVX4245提供5 V和3 V之间转换的8位双向电平转换器。该器件的T/R引脚控制数据流向。发射端使数据由A端到B端,而接收端使数据由B端到A端。A端接5 V总线,而B端接3 V总线,如图4所示。
2.4 数码管
采用共阳极数码管动态显示方式。为了提高驱动能力,采用三极管驱动,用P2端口的低电平对数码管进行位点亮,P0端口输入要显示的字符。本系统设计时,第l位和第2位显示第几个坏块,后3位显示无效块地址。
3 系统软件设计
采用μVision2集成开发环境,μVision2支持8051的所有Keil工具包,其中包括C编辑器、宏汇编器、链接器,定位器和目标文件至HEX格式的转换器。系统软件设计,即单片机代码设计通常可采用汇编语言或C语言。图5是无效块判断的主要流程。
本设计中软件核心部分是存储器的页读取函数。函数中定义无符号整型变量赋值2 048,依据页读取的时序,先将读指令00H由函数Writ-eCommand写入FLASH的命令寄存器,接着由WriteAddress函数将4个周期的地址写入FLASH的地址寄存器,再由WriteCommand函数将读命令30H写入FLASH指令寄存器,延时后读状态的控制字的设置,在2 048个读信号脉冲中读取缓存数据。该函数完整源程序代码如下:
4 结论
本设计满足系统设计要求,能够实现对FLASH存储器的ID号的读取,准确读取存储器无效块的数目和相应的物理地址,通过功能按钮实现对无效块地址的上下查询。将存储器换成FLASH后可以很好地检测器件的无效块的分布情况。可以成为选择性能更好的器件工具,同时还可准确获取无效块地址,为以后数据存储打好基础。
作者:王新舜 张存善 韩力英 杨振华 来源:电子设计工程
上一篇:非易失性存储器的可配置性
下一篇:基于VC++的制瓶机微机控制系统的串口通信