![]() |
發布時間: 2023-7-9 13:44
正文摘要:flash我是以扇區進行讀寫的,要讀就讀4K要寫就寫4k,addr從0開始,每一個addr都代表一個扇區 一次寫入比較少的扇區時讀出來的數據沒問題,但是一次寫入較多的扇區時讀出來的數據就對不上了 W25Q128用來 ... |
1,在寫入擦除命令之前,要先讀取WEL位,并寫入寫使能 2,在正確寫入擦除命令,CS引腳搞高之后,要先等待擦除完成,再寫入,頁擦除是需要時間的 |
yuxuesuixing 發表于 2023-7-11 08:52 而且審題不清,我問的問題明明是扇區數據被覆蓋了,不是沒有寫入 |
yuxuesuixing 發表于 2023-7-11 08:37 有沒有忙檢測你不會看代碼嗎?你看不懂英文拿個翻譯軟件翻譯一下,看看有沒有這一步 |
qq624353765 發表于 2023-7-11 08:44 不想多講,擦除完成立刻進行寫操作,明明手冊有擦除的時間,你能寫成功純純是因為之前內部就是沒有數據的,。芯片手冊給你了忙檢測,你還認為自己的錯誤操作就是對的,連驗證都懶得試一下。 |
yuxuesuixing 發表于 2023-7-11 08:37 既然有扇區寫成功說明擦寫沒問題 |
Page Program Time tPP 0.7 3 ms Sector Erase Time (4KB) tSE 45 400 ms 擦除一個扇區是45-400ms 寫一個扇區是 0.7-3ms 你確定夠嗎?你都沒有芯片忙檢測的代碼 |
Page Program Time 0.7 3 ms |
sbskywalker 發表于 2023-7-10 15:48 我用上位機軟件按扇區大小發送數據,每發送完一扇區會等待下位機應答才會發送下一扇區數據 |
程序沒有問題,應該是要注意寫入之后等待寫入完整,然后讀取 |