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