1. 程式人生 > >最近在搞SPI Flash的驅動,有一個問題遲遲不能解決

最近在搞SPI Flash的驅動,有一個問題遲遲不能解決

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow

也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!

               

背景:

主晶片:MK60DN512ZVLQ10 / MK60DN512VLQ10

flash晶片:winbond 25Q64FV

明媚心(415741500)  11:10:44
請教一個spi FLASH的問題。
我最近在搞SPI flash的驅動。
所有的操作都OK了,只有讀操作還有一點問題。
問題是這樣的:我在讀操作的函式裡合適的地方設定斷點,則每次讀到的資料都是正確的。但是如果全速執行,則讀到的資料都是0.
從邏輯分析儀上的資料來看,DO端輸出的資料都是正確的。

我就又測試了一下自帶的SPI FLASH的例程,裡面的讀操作讀到的資料也都是0(不正確)。

從現象上來看,似乎與時序有關。但是邏輯分析儀上的資料看來,似乎又與時序無關。

請教下大家。
孤狼-稀飯  11:15:39
兩頭都測了嗎?
奮鬥  11:15:40
時序
有資料出來 CPU 寄存的值為0 是吧
連續讀兩次試試
明媚心(415741500)  11:17:43
什麼叫兩頭都測了嗎?沒看懂,
反正設定斷點的時候,看到的RXFR暫存器的值也是正確的。即暫存器裡的值一直都是正確的。
明媚心(415741500)  11:19:24
斷點設定在讀函式中不同的位置,暫存器的值一直都是正確的,但是,讀出來的值有可能是正確的,也有可能是0(錯誤的)。
如果不設斷點,則都是0.
連續2次,請問是指連續呼叫讀函式兩次?
明媚心(415741500)  11:20:27
試過,不管用。因為我每次讀操作開始前,都會清暫存器。

 

           

給我老師的人工智慧教程打call!http://blog.csdn.net/jiangjunshow

這裡寫圖片描述