xxxx18一60岁hd中国/日韩女同互慰一区二区/西西人体扒开双腿无遮挡/日韩欧美黄色一级片 - 色护士精品影院www

資源簡介

使用STM32L4xx芯片,LL庫配置硬件SPI,包括初始化以及收發函數;

資源截圖

代碼片段和文件信息

#include?“SPI.h“





/***************************************************************************************
**?函數名稱:?SPI1_Init
**?功能描述:?SPI1初始化
**?參????數:?None
**?返?回?值:?None???????
****************************************************************************************/
void?SPI1_Init(void)//時鐘為16MHz時輸出波形有震蕩
{
??LL_SPI_InitTypeDef?SPI_InitStruct;
??LL_GPIO_InitTypeDef?GPIO_InitStruct;

??LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_SPI1);//使能SPI1時鐘

??/*SPI引腳配置
??PA5???------>?SPI1_SCK
??PA6???------>?SPI1_MISO
??PA7???------>?SPI1_MOSI
??PA15?(JTDI)???------>?SPI1_NSS?
??*/
??GPIO_InitStruct.Pin =?LL_GPIO_PIN_5|LL_GPIO_PIN_6|LL_GPIO_PIN_7|LL_GPIO_PIN_15;
??GPIO_InitStruct.Mode =?LL_GPIO_MODE_ALTERNATE;//復用模式
??GPIO_InitStruct.Speed =?LL_GPIO_SPEED_FREQ_VERY_HIGH;//速率高
??GPIO_InitStruct.OutputType =?LL_GPIO_OUTPUT_PUSHPULL;//推挽輸出
??GPIO_InitStruct.Pull =?LL_GPIO_PULL_NO;//無上下拉
??GPIO_InitStruct.Alternate =?LL_GPIO_AF_5;//復用5
??LL_GPIO_Init(GPIOA?&GPIO_InitStruct);//SPI引腳初始化

??//SPI1參數配置
??SPI_InitStruct.TransferDirection =?LL_SPI_FULL_DUPLEX;//全雙工模式
??SPI_InitStruct.Mode =?LL_SPI_MODE_MASTER;//主機模式
??SPI_InitStruct.DataWidth =?LL_SPI_DATAWIDTH_8BIT;//傳輸8位數據
??SPI_InitStruct.ClockPolarity =?LL_SPI_POLARITY_HIGH;//空閑時時鐘為高
??SPI_InitStruct.ClockPhase =?LL_SPI_PHASE_1EDGE;//第一個時鐘轉換是數據捕獲的第一個邊緣
??SPI_InitStruct.NSS =?LL_SPI_NSS_HARD_OUTPUT;//NSS輸出模式
??SPI_InitStruct.BaudRate =?LL_SPI_BAUDRATEPRESCALER_DIV2;//波特率控制等于fpclk/2
??SPI_InitStruct.BitOrder =?LL_SPI_MSB_FIRST;//數據首先發送\接收MSB位
??SPI_InitStruct.CRCCalculation =?LL_SPI_CRCCALCULATION_DISABLE;//CRC計算禁用
??SPI_InitStruct.CRCPoly =?7;//用于CRC計算的多項式
??LL_SPI_Init(SPI1?&SPI_InitStruct);//SPI1初始化

??LL_SPI_SetStandard(SPI1?LL_SPI_PROTOCOL_MOTOROLA);//設置MOTOROLA模式
??LL_SPI_EnableNSSPulseMgt(SPI1);//啟用NSS脈沖管理

LL_SPI_Enable(SPI1);//使能SPI1
}

/***************************************************************************************
**?函數名稱:?SPI1_SendReadByte
**?功能描述:?SPI1傳輸一個字節并讀一個字節
**?參????數:?Data 要發送的字節
**?返?回?值:?ResData?? 讀取的字節?????
****************************************************************************************/
uint8_t?SPI1_SendReadByte(uint8_t?Data)
{
uint8_t?ResData=0;

while((SPI1->SR?&?LL_SPI_SR_TXE)?==?0);//等待傳輸緩存區為空
SPI1->DR?=?Data;//待發數據寫入
while((SPI1->SR?&?LL_SPI_SR_RXNE)?==?0);//等待接收緩存區為空
ResData?=?SPI1->DR;//讀取接收數據

return?ResData;
}



/***************************************************************************************
**?函數名稱:?SPI1_SendByte
**?功能描述:?SPI1傳輸一個字節
**?參????數:?Data 要發送的字節
**?返?回?值:?None
****************************************************************************************/
void?SPI1_SendByte(uint8_t?Data)
{
while((SPI1->SR?&?LL_SPI_SR_TXE)?==?0);//等待傳輸緩存區為空
SPI1->DR?=?Data;//待發數據寫入
}

/***************************************************************************************
**?函數名稱:?SPI1_ReadByte
**?功能描述:?S

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????3620??2019-10-18?10:33??STM32L4_硬件SPI配置_LL庫版\SPI.c

?????文件????????280??2019-10-18?11:04??STM32L4_硬件SPI配置_LL庫版\SPI.h

?????目錄??????????0??2019-10-19?08:22??STM32L4_硬件SPI配置_LL庫版

-----------?---------??----------?-----??----

?????????????????3900????????????????????3


評論

共有 條評論