修改驱动程序

This commit is contained in:
2584532475@qq.com committed 2023-05-19 18:02:00 +08:00
1 parent 063c3fcc07
commit a69c1a58d6
39 files changed
+1627 -641

No files matched your search

+1 -1
View File
@@ -39,7 +39,7 @@ void MX_CRC_Init(void)
hcrc.Instance = CRC;
hcrc.Init.DefaultPolynomialUse = DEFAULT_POLYNOMIAL_DISABLE;
hcrc.Init.DefaultInitValueUse = DEFAULT_INIT_VALUE_DISABLE;
hcrc.Init.GeneratingPolynomial = 7;
hcrc.Init.GeneratingPolynomial = 0x8005;
hcrc.Init.CRCLength = CRC_POLYLENGTH_16B;
hcrc.Init.InitValue = 0xFFFF;
hcrc.Init.InputDataInversionMode = CRC_INPUTDATA_INVERSION_BYTE;
+13 -13
View File
@@ -38,7 +38,6 @@
* Output
* EVENT_OUT
* EXTI
PA4 ------> COMP_DAC11_group
PA5 ------> COMP_DAC12_group
*/
void MX_GPIO_Init(void)
@@ -57,6 +56,9 @@ void MX_GPIO_Init(void)
/*Configure GPIO pin Output Level */
HAL_GPIO_WritePin(ETH_RST_GPIO_Port, ETH_RST_Pin, GPIO_PIN_RESET);
/*Configure GPIO pin Output Level */
HAL_GPIO_WritePin(GPIOA, ETH_PW_Pin|GSM_PW_Pin, GPIO_PIN_RESET);
/*Configure GPIO pin Output Level */
HAL_GPIO_WritePin(GPIOB, U485_RT_Pin|LORA_TX_Pin|LORA_RX_Pin|SPI2_NSS_Pin, GPIO_PIN_RESET);
@@ -64,9 +66,6 @@ void MX_GPIO_Init(void)
HAL_GPIO_WritePin(GPIOE, LORA_M1_Pin|RELAY1_Pin|RELAY2_Pin|S4851_RT_Pin
|S4852_RT_Pin, GPIO_PIN_RESET);
/*Configure GPIO pin Output Level */
HAL_GPIO_WritePin(GSM_PW_GPIO_Port, GSM_PW_Pin, GPIO_PIN_RESET);
/*Configure GPIO pin Output Level */
HAL_GPIO_WritePin(GSM_RST_GPIO_Port, GSM_RST_Pin, GPIO_PIN_RESET);
@@ -84,10 +83,17 @@ void MX_GPIO_Init(void)
HAL_GPIO_Init(ETH_STA_GPIO_Port, &GPIO_InitStruct);
/*Configure GPIO pins : PAPin PAPin */
GPIO_InitStruct.Pin = DAC1_Pin|DAC2_Pin;
GPIO_InitStruct.Pin = ETH_PW_Pin|GSM_PW_Pin;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
/*Configure GPIO pin : PtPin */
GPIO_InitStruct.Pin = DAC2_Pin;
GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;
GPIO_InitStruct.Pull = GPIO_NOPULL;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
HAL_GPIO_Init(DAC2_GPIO_Port, &GPIO_InitStruct);
/*Configure GPIO pins : PBPin PBPin PBPin PBPin */
GPIO_InitStruct.Pin = U485_RT_Pin|LORA_TX_Pin|LORA_RX_Pin|SPI2_NSS_Pin;
@@ -111,13 +117,6 @@ void MX_GPIO_Init(void)
GPIO_InitStruct.Pull = GPIO_NOPULL;
HAL_GPIO_Init(LORA_DI0_GPIO_Port, &GPIO_InitStruct);
/*Configure GPIO pin : PtPin */
GPIO_InitStruct.Pin = GSM_PW_Pin;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
HAL_GPIO_Init(GSM_PW_GPIO_Port, &GPIO_InitStruct);
/*Configure GPIO pin : PtPin */
GPIO_InitStruct.Pin = GSM_RST_Pin;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
@@ -131,6 +130,7 @@ void MX_GPIO_Init(void)
GPIO_InitStruct.Pull = GPIO_NOPULL;
HAL_GPIO_Init(GPIOD, &GPIO_InitStruct);
}
/* USER CODE BEGIN 2 */
+2 -2
View File
@@ -74,7 +74,7 @@ extern TIM_HandleTypeDef htim2;
/* USER CODE BEGIN EV */
extern void MX_UART_IRQHandle (void);
extern void uart_SystemTick (void);
extern void MX_UART_TickHandle (void);
//extern void main_Systick (void);
/* USER CODE END EV */
@@ -153,7 +153,7 @@ void DMA1_Ch4_7_DMA2_Ch1_5_DMAMUX1_OVR_IRQHandler(void)
void TIM2_IRQHandler(void)
{
/* USER CODE BEGIN TIM2_IRQn 0 */
uart_SystemTick();
MX_UART_TickHandle();
//main_Systick();
MX_IWDG_Reload();
MX_WWDG_Relad();
+1 -119
View File
@@ -24,21 +24,8 @@
__IO static uint32_t s_UartRecvTimer[UartMax] = {0, 0, 0, 0, 0, 0, 0, 0};
// static USART_TypeDef *UARTInstance[UartMax] = {LPUART1, LPUART2, USART1, USART2, USART3, USART4, USART5, USART6};
static char s_u2RxBuf[USART2_MAX_LENGTH];
static char s_u4RxBuf[USART4_MAX_LENGTH];
UartBuff_t s_Ubuffer[UartMax];
void uart_SystemTick (void)
{
for (int i = 0; i < UartMax; i++)
{
if (s_UartRecvTimer[i] > 1)
s_UartRecvTimer[i]--;
}
}
/* USER CODE END 0 */
@@ -191,8 +178,6 @@ void MX_USART2_UART_Init(void)
/* USER CODE BEGIN USART2_Init 0 */
s_Ubuffer[Uart2].rxBuf = s_u2RxBuf;
s_Ubuffer[Uart2].rxMaxLen = USART2_MAX_LENGTH;
/* USER CODE END USART2_Init 0 */
/* USER CODE BEGIN USART2_Init 1 */
@@ -281,8 +266,6 @@ void MX_USART4_UART_Init(void)
{
/* USER CODE BEGIN USART4_Init 0 */
s_Ubuffer[Uart4].rxBuf = s_u4RxBuf;
s_Ubuffer[Uart4].rxMaxLen = USART4_MAX_LENGTH;
/* USER CODE END USART4_Init 0 */
/* USER CODE BEGIN USART4_Init 1 */
@@ -625,7 +608,7 @@ void HAL_UART_MspInit(UART_HandleTypeDef* uartHandle)
*/
GPIO_InitStruct.Pin = U485_TX_Pin|U485_RX_Pin;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Pull = GPIO_PULLUP;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
GPIO_InitStruct.Alternate = GPIO_AF8_USART5;
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
@@ -886,108 +869,7 @@ void HAL_UART_MspDeInit(UART_HandleTypeDef* uartHandle)
/* USER CODE BEGIN 1 */
void MX_UART_IRQHandle (void)
{
uint8_t ret;
if (USART2->ISR & (1 << 5))
{
ret = USART2->RDR;
if (s_Ubuffer[Uart2].rxBuf != NULL)
{
s_Ubuffer[Uart2].rxBuf[s_Ubuffer[Uart2].rxLen++] = ret;
s_UartRecvTimer[Uart2] = 30;
if (s_Ubuffer[Uart2].rxLen > s_Ubuffer[Uart2].rxMaxLen)
s_Ubuffer[Uart2].rxLen = 0;
}
}
if (USART4->ISR & (1 << 5))
{
ret = USART4->RDR;
if (s_Ubuffer[Uart4].rxBuf != NULL)
{
s_Ubuffer[Uart4].rxBuf[s_Ubuffer[Uart4].rxLen++] = ret;
s_UartRecvTimer[Uart4] = 30;
if (s_Ubuffer[Uart4].rxLen > s_Ubuffer[Uart4].rxMaxLen)
s_Ubuffer[Uart4].rxLen = 0;
}
}
}
int MX_UART_IsReady (Uart_t uart)
{
uint32_t ret = s_UartRecvTimer[uart];
return ret;
}
void MX_UART_Clear (Uart_t uart)
{
s_UartRecvTimer[uart] = 0;
s_Ubuffer[uart].rxLen = 0;
}
int MX_UART_ReadData (Uart_t uart, char *buff, int maxLength)
{
int length = 0;
if (s_Ubuffer[uart].rxBuf != NULL)
{
length = (maxLength > s_Ubuffer[uart].rxLen) ? s_Ubuffer[uart].rxLen : maxLength;
for (int i = 0; i < length; i++)
{
buff[i] = s_Ubuffer[uart].rxBuf[i];
}
}
return length;
}
void MX_UART_PutChar (Uart_t uart, char ch)
{
switch (uart)
{
case LpUart1:
HAL_UART_Transmit (&hlpuart1, (uint8_t *) &ch, 1, 1000);
break;
case LpUart2:
HAL_UART_Transmit (&hlpuart2, (uint8_t *) &ch, 1, 1000);
break;
case Uart1:
HAL_UART_Transmit (&huart1, (uint8_t *) &ch, 1, 1000);
break;
case Uart2:
HAL_UART_Transmit (&huart2, (uint8_t *) &ch, 1, 1000);
break;
case Uart3:
HAL_UART_Transmit (&huart3, (uint8_t *) &ch, 1, 1000);
break;
case Uart4:
HAL_UART_Transmit (&huart4, (uint8_t *) &ch, 1, 1000);
break;
case Uart5:
HAL_UART_Transmit (&huart5, (uint8_t *) &ch, 1, 1000);
break;
case Uart6:
HAL_UART_Transmit (&huart6, (uint8_t *) &ch, 1, 1000);
break;
default:
break;
}
}
void MX_UART_PutBuffer (Uart_t uart, char *buff, int size)
{
for (int i = 0; i < size; i++)
{
MX_UART_PutChar (uart, buff[i]);
}
}
#include <stdarg.h>
#include <stdio.h>
// ÖØ¶¨Òåfputcº¯Êý
int fputc (int ch, FILE *f)
{
HAL_UART_Transmit (&huart2, (uint8_t *) &ch, 1, 2000);
return ch;
}
/* USER CODE END 1 */