不會由硬件自動插入等待周期,如果此時仍采用2.1節(jié)的flash編程函數(shù)對flash存儲器進行編程,則會得到錯誤的編程結果。編程結束后會發(fā)現(xiàn)flash存儲器中有一部分內容仍然是0xffff,處于編程前的狀態(tài)。雖然對flash存儲器進行了編程操作,但由于flash存儲器上一次編程操作還未完成,本次的編程操作無效,數(shù)據(jù)根本寫不進flash存儲器。在ccs3.1中用“view/memery”功能查看flash存儲器,就會發(fā)現(xiàn)flash存儲器中的數(shù)據(jù)等間隔地出現(xiàn)編程正確和編程不正確的現(xiàn)象。筆者在自己設計的tms320c6711d-250嵌入式模塊(帶有am29lv400b flash存儲器)上,通過斷開dsp與flash存儲器的硬件ready信號進行編程測試,無等待狀態(tài)的測試結果見表1,有等待狀態(tài)的測試結果見表2。 可見,在沒有硬件握手的情況下,需要通過軟件來判斷當前flash存儲器編程或擦除的狀態(tài)來進行編程操作。如果flash存儲器正處于編程或擦除過程中,則無法繼續(xù)對flash存儲器進行編程,需等到flash存儲器上一次數(shù)據(jù)編程(寫入)完成時才能進行下一次數(shù)據(jù)編程(寫入)。否則,會得到錯誤的編程結果,造成編程后數(shù)據(jù)
不會由硬件自動插入等待周期,如果此時仍采用2.1節(jié)的flash編程函數(shù)對flash存儲器進行編程,則會得到錯誤的編程結果。編程結束后會發(fā)現(xiàn)flash存儲器中有一部分內容仍然是0xffff,處于編程前的狀態(tài)。雖然對flash存儲器進行了編程操作,但由于flash存儲器上一次編程操作還未完成,本次的編程操作無效,數(shù)據(jù)根本寫不進flash存儲器。在ccs3.1中用“view/memery”功能查看flash存儲器,就會發(fā)現(xiàn)flash存儲器中的數(shù)據(jù)等間隔地出現(xiàn)編程正確和編程不正確的現(xiàn)象。筆者在自己設計的tms320c6711d-250嵌入式模塊(帶有am29lv400b flash存儲器)上,通過斷開dsp與flash存儲器的硬件ready信號進行編程測試,無等待狀態(tài)的測試結果見表1,有等待狀態(tài)的測試結果見表2。 可見,在沒有硬件握手的情況下,需要通過軟件來判斷當前flash存儲器編程或擦除的狀態(tài)來進行編程操作。如果flash存儲器正處于編程或擦除過程中,則無法繼續(xù)對flash存儲器進行編程,需等到flash存儲器上一次數(shù)據(jù)編程(寫入)完成時才能進行下一次數(shù)據(jù)編程(寫入)。否則,會得到錯誤的編程結果,造成編程后數(shù)據(jù)