久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 2116|回復(fù): 7
收起左側(cè)

關(guān)于SPI DMA的接收設(shè)備掉線疑問(wèn)

[復(fù)制鏈接]
回帖獎(jiǎng)勵(lì) 10 黑幣 回復(fù)本帖可獲得 2 黑幣獎(jiǎng)勵(lì)! 每人限 1 次
ID:326261 發(fā)表于 2023-9-11 14:39 | 顯示全部樓層 |閱讀模式
如題,目前題主在做一個(gè)STM32的spi dma作flash芯片傳輸數(shù)據(jù),但是要檢測(cè)到flash是否在線
又因?yàn)橐嫒莞鞣Nflash芯片,不能采用讀取ID號(hào)來(lái)區(qū)分,只能使用檢測(cè)數(shù)據(jù)來(lái)區(qū)分了
但是看了資料,實(shí)在不理解如何使用STM32內(nèi)部寄存器區(qū)分是否接收到數(shù)據(jù)了

SPI的DMA傳輸流程我個(gè)人的理解是:
DMA通過(guò)讀取SPI_DR寄存器的值來(lái)獲取到DMA緩沖里面,但是他不會(huì)去區(qū)分DR的值是從哪來(lái)的,
是否來(lái)的合理,只是提取,提取到了就產(chǎn)生DMA完成中斷,然后把數(shù)據(jù)傳到內(nèi)存里。

問(wèn)題:
1、我的對(duì)SPI的DMA流程是否正確?
2、有沒(méi)有寄存器可以檢測(cè)出來(lái)我已經(jīng)沒(méi)有flash芯片了,為什么還能接收到00或者FF的數(shù)據(jù)?
回復(fù)

使用道具 舉報(bào)

ID:771630 發(fā)表于 2023-9-11 20:54 | 顯示全部樓層
SPI不具有檢測(cè)設(shè)備是否在線的能力,他不像IIC有ACK,也不像UART有下降沿觸發(fā),所有時(shí)鐘信號(hào)由主機(jī)產(chǎn)生,主機(jī)只會(huì)在時(shí)鐘邊緣讀取引腳電平并儲(chǔ)存,如果引腳存在上下拉,則可能接收到ff或者00,如果是浮空的,則是隨機(jī)數(shù)。
回復(fù)

使用道具 舉報(bào)

ID:1088185 發(fā)表于 2023-9-11 21:09 | 顯示全部樓層
這跟DMA無(wú)關(guān), 是你對(duì)SPI的讀寫(xiě)流程不太了解, 最好看看SPI的方塊圖,這比較容易理解
雙工的SPI其實(shí)是沒(méi)有只寫(xiě)的, 它寫(xiě)的同時(shí)必定是同時(shí)讀, 那怕你配置是只寫(xiě), 它還是讀了, 只不過(guò)是讀了就放棄了。 相反,SPI也沒(méi)有只讀的動(dòng)作,讀的過(guò)程也是寫(xiě)的過(guò)程, 所以沒(méi)有接收完成的標(biāo)志位,因?yàn)樗鼘?xiě)完就是讀完的意思。
回復(fù)

使用道具 舉報(bào)

ID:326261 發(fā)表于 2023-9-12 09:05 | 顯示全部樓層
XLinliY.Zhang 發(fā)表于 2023-9-11 20:54
SPI不具有檢測(cè)設(shè)備是否在線的能力,他不像IIC有ACK,也不像UART有下降沿觸發(fā),所有時(shí)鐘信號(hào)由主機(jī)產(chǎn)生,主 ...

感謝回答,還想問(wèn)一下,如果要做一個(gè)檢測(cè)設(shè)備在線的機(jī)制,你的思路是怎樣的嗎?
比如我的思路:在指定的一個(gè)地址0x10,寫(xiě)入一個(gè)數(shù)據(jù)0xAA,再讀出來(lái)是否一致,來(lái)判斷設(shè)備是否在線。
回復(fù)

使用道具 舉報(bào)

ID:326261 發(fā)表于 2023-9-12 09:11 | 顯示全部樓層
1600277881 發(fā)表于 2023-9-11 21:09
這跟DMA無(wú)關(guān), 是你對(duì)SPI的讀寫(xiě)流程不太了解, 最好看看SPI的方塊圖,這比較容易理解
雙工的SPI其實(shí)是沒(méi)有 ...

非常感謝!看了一下時(shí)序圖,學(xué)習(xí)了。
按照內(nèi)部文檔邏輯所說(shuō),如果不用DMA的話,他會(huì)有一個(gè)接收緩沖區(qū)標(biāo)志位,如果接收到數(shù)據(jù),這個(gè)位則置起,但是DMA這個(gè)不經(jīng)過(guò)SPI內(nèi)部緩沖區(qū),所以導(dǎo)致接收緩沖器是否為空的這個(gè)RXNE標(biāo)志位沒(méi)有作用了,所以檢測(cè)不到我的主板是否接收到數(shù)據(jù)。
還想請(qǐng)教一下,如果是要做檢測(cè)設(shè)備是否在線,是否接收到數(shù)據(jù)的話,要怎么作這個(gè)判斷邏輯呢?
回復(fù)

使用道具 舉報(bào)

ID:1092816 發(fā)表于 2023-9-12 10:36 | 顯示全部樓層
如果不通過(guò)DMA傳輸數(shù)據(jù),正常,就是你DMA流程哪里沒(méi)設(shè)置到。要檢測(cè)flash芯片是否在線,定時(shí)讀取id
回復(fù)

使用道具 舉報(bào)

ID:326261 發(fā)表于 2023-9-12 11:15 | 顯示全部樓層
cjc1029 發(fā)表于 2023-9-12 10:36
如果不通過(guò)DMA傳輸數(shù)據(jù),正常,就是你DMA流程哪里沒(méi)設(shè)置到。要檢測(cè)flash芯片是否在線,定時(shí)讀取id

因?yàn)橛械膄lash芯片是不能采取讀取ID號(hào)來(lái)判斷的,廠家沒(méi)有ID號(hào)查詢這個(gè),所以查ID號(hào)暫不考慮。
回復(fù)

使用道具 舉報(bào)

ID:771630 發(fā)表于 2023-9-12 14:56 | 顯示全部樓層
工學(xué)院陳偉霆 發(fā)表于 2023-9-12 09:05
感謝回答,還想問(wèn)一下,如果要做一個(gè)檢測(cè)設(shè)備在線的機(jī)制,你的思路是怎樣的嗎?
比如我的思路:在指定的 ...

從一個(gè)已知數(shù)據(jù)的地址讀取數(shù)據(jù),并判斷是否正確,例如芯片ID、某個(gè)值固定的寄存器、儲(chǔ)存進(jìn)去的數(shù)據(jù)等
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 婷婷97| 在线视频亚洲 | 国产h在线 | 国产丝袜av | 中文字幕在线网站 | 久久夜色精品国产欧美乱极品 | 小sao货撅起屁股扒开c微博 | 亚洲精品第一页 | 亚洲精品第一页 | 欧美一级欧美三级 | 精品久久久久久 | 成人免费福利视频 | 中文字幕一区二区三区视频 | 91精品国产乱码久久久久 | 一级黄色大片 | 美女综合网| 一区二区网站 | 久久成人国产 | 亚洲成人av在线播放 | 中文字幕免费在线 | 精品无人国产偷自产在线 | 亚洲午夜视频在线观看 | 欧美片网站yy | 日韩和的一区二区 | 97在线观看视频 | 亚洲日本精品 | 久久久久免费 | 五月婷婷综合网 | 国产理论视频 | 国产精品伦子伦免费视频 | 国产日韩久久 | 久久一区视频 | 国产在线一区二区三区 | 亚洲久久久久久 | a级黄毛片| 午夜久久久久久久 | 日本少妇一区二区 | 国产99精品 | 一区二区视频在线播放 | 精品无人国产偷自产在线 | 99久久婷婷国产综合精品草原 |