HAL庫實踐記錄之SPI與RC522

2021-09-26 14:27:45 字數 912 閱讀 2316

hal庫spi2與rc522通訊

實驗板是原子mini板

先按需求簡單配置一下spi2,再選兩個gpio與rc522另外兩個引腳連線。

預分頻設定波特率這裡要注意,波特率不能太高,具體最高支援多少自己實驗就好。(找了一上午的故障原因)

生成**。rc522使用5個引腳進行連線。

硬體連線說明:

*rcc522 ministm32

**1--sda pa3

*2--rst pa4

*3--sck pa5

*4--mosipa7

*5--misopa6

使用庫函式

hal_statustypedef hal_spi_transmit(spi_handletypedef *hspi, uint8_t *pdata, uint16_t size, uint32_t timeout);

hal_statustypedef hal_spi_receive(spi_handletypedef *hspi, uint8_t *pdata, uint16_t size, uint32_t timeout);

hal_statustypedef hal_spi_transmitreceive(spi_handletypedef *hspi, uint8_t *ptxdata, uint8_t *prxdata, uint16_t size,

uint32_t timeout);

我是用第三個hal_spi_transmitreceive(&hspi2, &byte, &prxdata, 1,2000);作為與rc522韌體的介面。

HAL庫實踐記錄之串列埠接收不定長資料

串列埠1接收不定長資料 實驗板是原子mini板 一開始使用官方庫,只能接受定長資料。把資料長度設定為1時,傳送多位元組資料時又會丟數。所以自己重寫串列埠中斷處理函式。首先搞一下cube配置用法 mode選非同步,下邊設定好引數。設定串列埠中斷 然後就配置完了。生成 第一步在主函式初始化階段新增如下 ...

STM32 HAL庫連續ADC問題記錄

目標 使用stm32的連續adc功能,通過dma將adc結果存入緩衝,應用中直接從緩衝獲取adc結果。問題1 緩衝中的結果僅上電時存入一次,不能持續重新整理 原因1 dma模式配置不正確。如下圖,mode選擇circular模式,則dma可以迴圈向緩衝儲存資料,如果使用預設的normal模式,則一次...

DSP28335之SPI配置與使用總結

現在簡單介紹一下,spi四種模式,已了解的同學可以跳過這一段 以下分別是spi模式0123 時序解釋 cpol 時鐘極性選擇,為0時spi匯流排空閒為低電平,為1時spi匯流排空閒為高電平 cpha 時鐘相位選擇,為0時在sck第乙個跳變沿取樣,為1時在sck第二個跳變沿取樣 言歸正傳,dsp283...