亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

標題: Flash模擬EEPROM擦除時間太長 [打印本頁]

作者: coolaiMCU    時間: 2024-6-20 11:32
標題: Flash模擬EEPROM擦除時間太長
大家好,

用的是STM32 MCU,為了省成本,用了內部Flash模擬EEPROM,Flash最小擦除單位是扇區,一個扇區大小是128K。

用一個扇區模擬EEPROM,當整個扇區寫滿后,擦除一次。但是規格書上寫的是擦除一個128K的扇區需要耗時1~2s,這個時間太長了!

肯定影響到系統實時性了。

有什么辦法可以解決嗎?看來還得用單獨的EEPROM芯片了!

作者: xiaobendan001    時間: 2024-6-20 16:56
秒還是毫秒?STM32不會用,STC也不用2秒吧
作者: coolaiMCU    時間: 2024-6-20 17:25
xiaobendan001 發表于 2024-6-20 16:56
秒還是毫秒?STM32不會用,STC也不用2秒吧

秒,確實是1~2s, 規格書上寫的,很奇怪很多用大容量的Flash都是怎么用的?
作者: yzwzfyz    時間: 2024-6-20 19:44
懷疑讀書不準確,當為ms級。將你讀的書貼出來看看。
作者: Graves    時間: 2024-6-20 20:38
要擦128K這么多?單位是不是有問題
作者: coody_sz    時間: 2024-6-20 21:22
xiaobendan001 發表于 2024-6-20 16:56
秒還是毫秒?STM32不會用,STC也不用2秒吧

STC8系列EEPROM扇區擦除幾個ms。
作者: npn    時間: 2024-6-21 06:25
看你程序使用了多少字節EEPROM,使用數據磨損均勻算法寫滿再擦。
作者: coolaiMCU    時間: 2024-6-21 09:33
qq475878026 發表于 2024-6-20 20:38
要擦128K這么多?單位是不是有問題

ST的高端MCU,STM32H743, 2M Flash, 最小擦除粒度確實是128K。
作者: coolaiMCU    時間: 2024-6-21 09:37
yzwzfyz 發表于 2024-6-20 19:44
懷疑讀書不準確,當為ms級。將你讀的書貼出來看看。

用的是STM32H743,高端MCU ,內部2M flash,最小擦除粒度是128K,擦除時間如下圖,上面的單位是s (不確定有沒有看錯)。附件規格書你也可以看一下


STM32H743數據手冊.pdf

4.85 MB, 下載次數: 2


作者: coolaiMCU    時間: 2024-6-21 09:43
npn 發表于 2024-6-21 06:25
看你程序使用了多少字節EEPROM,使用數據磨損均勻算法寫滿再擦。

這個我知道,其實我問的是擦除時間長影響實時性的問題
作者: 123156fsadf    時間: 2024-6-21 10:10
可以在程序初始化的時候擦除,就不會影響后面的實時性,當然啟動時間也有要求的話,就沒辦法了
作者: lkc8210    時間: 2024-6-21 10:52
可以按頁擦除啊,一頁只有1k
3.3.3 Embedded Flash memory







作者: yzwzfyz    時間: 2024-6-22 00:11
擦128K是秒級,擦一頁不需要這么多時間。
作者: coolaiMCU    時間: 2024-6-22 09:17
lkc8210 發表于 2024-6-21 10:52
可以按頁擦除啊,一頁只有1k
3.3.3 Embedded Flash memory

估計沒看我發的STM32H743的規格書,這個MCU沒有頁的概念,只有扇區概念,所以擦除單位只能按扇區來擦除,一個扇區是128K。所以這樣是不是無解了?不行的話,就用EEPROM了,國產的一個也沒幾個錢



作者: coolaiMCU    時間: 2024-6-22 09:17
yzwzfyz 發表于 2024-6-22 00:11
擦128K是秒級,擦一頁不需要這么多時間。

這顆MCU沒有頁而概念,只有扇區,一個扇區是128K,所以只能按照128K扇區擦除
作者: 188610329    時間: 2024-6-22 20:13
據說,STM是非常高級的芯片,這玩藝難道還是單線程?你發了擦除指令之后,只能象“落后的51”一樣,等他完成了才能獲得時鐘權限么?不能先干別的事?
作者: cxxx180    時間: 2024-6-22 22:37
188610329 發表于 2024-6-22 20:13
據說,STM是非常高級的芯片,這玩藝難道還是單線程?你發了擦除指令之后,只能象“落后的51”一樣,等他完 ...

STM32H743雙bank把他分分應該不影響程序跑起來。
作者: 單片機研究協會    時間: 2024-6-23 15:41
lkc8210 發表于 2024-6-21 10:52
可以按頁擦除啊,一頁只有1k
3.3.3 Embedded Flash memory

這個不是H7xx的芯片吧
作者: glinfei    時間: 2024-7-1 11:39
我理解你的問題是,需要不斷讀取Flash,但擦除時會停止取指操作,MCU就像是卡了,但你給的手冊 P33 的 Figure 4. STM32H743xI/G bus matrix ,看圖它分為flash A 和flash B,我理解如果讀取FLASHA時,可以對FLASHB進行擦除操作,在擦除的幾秒時間內,SysTick_Handler()中斷服務函數,uwTick記數器變化應該正常的。我的建議你應該理解吧?
作者: coolaiMCU    時間: 2024-7-1 11:54
188610329 發表于 2024-6-22 20:13
據說,STM是非常高級的芯片,這玩藝難道還是單線程?你發了擦除指令之后,只能象“落后的51”一樣,等他完 ...

我不太明白,擦除Flash的時候,CPU還能干別的事嗎?不是要等擦除完成嗎?難道擦除Flash的時候還能像DMA一樣操作?如果能這樣,那就好辦了




歡迎光臨 (http://www.denmoz.com/bbs/) Powered by Discuz! X3.1