stm32的flash操作注意事項


從STM32編程手冊中,可以知道:在進行寫或擦除操作時,不能進行代碼或數據的讀取操作

比如:你在寫Flash期間有接收串口數據,很有可能會丟串口數據。

因為比較耗時,所以,在寫數據時,CPU不會執行其他操作。

簡單說:在寫Flash時,CPU 不能取指令,導致中斷得不到及時響應,從而發生接收到的數據未及時讀走而被覆蓋的現象

遇到這種情況,解決的辦法:使用DMA。DMA不需要CPU干預,一旦 USART 有數據接收到,由 DMA 負責將其傳輸至循環緩沖區中。軟件定期檢測循環緩沖區中是否有接收到的數據,如果有則加以處理。

提示:

如果你的代碼會反復讀Flash,建議使用外部Flash。

轉載自:strongerHuang


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM