基于51單片機的FIash存儲器壞塊自動檢測
2.4 數(shù)碼管
采用共陽極數(shù)碼管動態(tài)顯示方式。為了提高驅(qū)動能力,采用三極管驅(qū)動,用P2端口的低電平對數(shù)碼管進行位點亮,P0端口輸入要顯示的字符。本系統(tǒng)設(shè)計時,第l位和第2位顯示第幾個壞塊,后3位顯示無效塊地址。
3 系統(tǒng)軟件設(shè)計
采用μVision2集成開發(fā)環(huán)境,μVision2支持8051的所有Keil工具包,其中包括C編輯器、宏匯編器、鏈接器,定位器和目標(biāo)文件至HEX格式的轉(zhuǎn)換器。系統(tǒng)軟件設(shè)計,即單片機代碼設(shè)計通??刹捎脜R編語言或C語言。圖5是無效塊判斷的主要流程。
本設(shè)計中軟件核心部分是存儲器的頁讀取函數(shù)。函數(shù)中定義無符號整型變量賦值2 048,依據(jù)頁讀取的時序,先將讀指令00H由函數(shù)Writ-eCommand寫入Flash的命令寄存器,接著由WriteAddress函數(shù)將4個周期的地址寫入Flash的地址寄存器,再由WriteCommand函數(shù)將讀命令30H寫入Flash指令寄存器,延時后讀狀態(tài)的控制字的設(shè)置,在2 048個讀信號脈沖中讀取緩存數(shù)據(jù)。該函數(shù)完整源程序代碼如下:
4 結(jié)論
本設(shè)計滿足系統(tǒng)設(shè)計要求,能夠?qū)崿F(xiàn)對Flash存儲器的ID號的讀取,準(zhǔn)確讀取存儲器無效塊的數(shù)目和相應(yīng)的物理地址,通過功能按鈕實現(xiàn)對無效塊地址的上下查詢。將存儲器換成fLash后可以很好地檢測器件的無效塊的分布情況。可以成為選擇性能更好的器件工具,同時還可準(zhǔn)確獲取無效塊地址,為以后數(shù)據(jù)存儲打好基礎(chǔ)。
評論