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