From 83543cdc379fce99175e3b15936c97a49fe73bfa Mon Sep 17 00:00:00 2001 From: yincheng.zhong <634916154@qq.com> Date: 星期一, 04 三月 2024 16:02:54 +0800 Subject: [PATCH] Merge branch '免布线标签-lora-泰斗GPS' of http://47.108.70.204:60062/r/XRange_Tag into 免布线标签-lora-泰斗GPS --- Src/radio/sx126x-board.c | 27 +++++++++++++++++---------- 1 files changed, 17 insertions(+), 10 deletions(-) diff --git a/Src/radio/sx126x-board.c b/Src/radio/sx126x-board.c index a079fe7..fcdd3b3 100644 --- a/Src/radio/sx126x-board.c +++ b/Src/radio/sx126x-board.c @@ -23,7 +23,7 @@ #include "sx126x-board.h" #include "main.h" #include "stm32l0xx_hal_spi.h" - +#include "Spi.h" extern SPI_HandleTypeDef hspi1; @@ -33,8 +33,15 @@ // tickstart = HAL_GetTick( ); // while( ( HAL_GetTick( ) - tickstart ) < Delay ); //} +void SX126x_CS_Di( ) +{ + if(!HAL_GPIO_ReadPin( SPIx_CS_GPIO, SPIx_CS)) + { + HAL_GPIO_WritePin( SPIx_CS_GPIO, SPIx_CS,GPIO_PIN_SET); + printf("uwb_cs_error\r\n"); + } - +} /*! * @brief Sends txBuffer and receives rxBuffer @@ -55,7 +62,7 @@ void SX126xReset( void ) { HAL_Delay_nMS( 10 ); - HAL_GPIO_WritePin( RADIO_nRESET_GPIO_Port, RADIO_nRESET_Pin,GPIO_PIN_RESET); + HAL_GPIO_WritePin( RADIO_nRESET_GPIO_Port, RADIO_nRESET_Pin,GPIO_PIN_RESET); delay_us( 2000 ); HAL_GPIO_WritePin( RADIO_nRESET_GPIO_Port, RADIO_nRESET_Pin,GPIO_PIN_SET); HAL_Delay_nMS( 10 ); @@ -69,8 +76,8 @@ void SX126xWakeup( void ) { + SX126x_CS_Di( ); HAL_GPIO_WritePin( RADIO_NSS_GPIO_Port, RADIO_NSS_Pin,GPIO_PIN_RESET); - SpiInOut(RADIO_GET_STATUS); SpiInOut(0); @@ -84,7 +91,7 @@ { SX126xCheckDeviceReady( ); - + SX126x_CS_Di( ); HAL_GPIO_WritePin( RADIO_NSS_GPIO_Port, RADIO_NSS_Pin,GPIO_PIN_RESET); SpiInOut(( uint8_t )command ); @@ -105,7 +112,7 @@ void SX126xReadCommand( RadioCommands_t command, uint8_t *buffer, uint16_t size ) { SX126xCheckDeviceReady( ); - + SX126x_CS_Di( ); HAL_GPIO_WritePin( RADIO_NSS_GPIO_Port, RADIO_NSS_Pin,GPIO_PIN_RESET); SpiInOut(( uint8_t )command ); @@ -123,7 +130,7 @@ void SX126xWriteRegisters( uint16_t address, uint8_t *buffer, uint16_t size ) { SX126xCheckDeviceReady( ); - + SX126x_CS_Di( ); HAL_GPIO_WritePin( RADIO_NSS_GPIO_Port, RADIO_NSS_Pin,GPIO_PIN_RESET); SpiInOut(RADIO_WRITE_REGISTER ); @@ -149,7 +156,7 @@ void SX126xReadRegisters( uint16_t address, uint8_t *buffer, uint16_t size ) { SX126xCheckDeviceReady( ); - + SX126x_CS_Di( ); HAL_GPIO_WritePin( RADIO_NSS_GPIO_Port, RADIO_NSS_Pin,GPIO_PIN_RESET); SpiInOut(RADIO_READ_REGISTER ); @@ -176,7 +183,7 @@ void SX126xWriteBuffer( uint8_t offset, uint8_t *buffer, uint8_t size ) { SX126xCheckDeviceReady( ); - + SX126x_CS_Di( ); HAL_GPIO_WritePin( RADIO_NSS_GPIO_Port, RADIO_NSS_Pin,GPIO_PIN_RESET); SpiInOut( RADIO_WRITE_BUFFER ); @@ -194,7 +201,7 @@ void SX126xReadBuffer( uint8_t offset, uint8_t *buffer, uint8_t size ) { SX126xCheckDeviceReady( ); - + SX126x_CS_Di( ); HAL_GPIO_WritePin( RADIO_NSS_GPIO_Port, RADIO_NSS_Pin,GPIO_PIN_RESET); SpiInOut( RADIO_READ_BUFFER ); -- Gitblit v1.9.3