Compare commits
5 Commits
64ce38fa15
...
4afa6702fb
| Author | SHA1 | Date | |
|---|---|---|---|
| 4afa6702fb | |||
| 907c0b170d | |||
| 60849ebb78 | |||
| aeb553994c | |||
| 5e28758a5e |
+74
-85
@@ -1,85 +1,74 @@
|
||||
/* USER CODE BEGIN Header */
|
||||
/**
|
||||
******************************************************************************
|
||||
* @file : main.h
|
||||
* @brief : Header for main.c file.
|
||||
* This file contains the common defines of the application.
|
||||
******************************************************************************
|
||||
* @attention
|
||||
*
|
||||
* Copyright (c) 2026 STMicroelectronics.
|
||||
* Copyright (c) 2026 Erick Ahmed.
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
||||
*
|
||||
******************************************************************************
|
||||
*/
|
||||
/* USER CODE END Header */
|
||||
|
||||
/* Define to prevent recursive inclusion -------------------------------------*/
|
||||
#ifndef __MAIN_H
|
||||
#define __MAIN_H
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
#include "stm32f4xx_hal.h"
|
||||
|
||||
|
||||
/* Private includes ----------------------------------------------------------*/
|
||||
/* USER CODE BEGIN Includes */
|
||||
#include <stdint.h>
|
||||
#include "canlog.h"
|
||||
/* USER CODE END Includes */
|
||||
|
||||
/* Exported types ------------------------------------------------------------*/
|
||||
/* USER CODE BEGIN ET */
|
||||
|
||||
/* USER CODE END ET */
|
||||
|
||||
/* Exported constants --------------------------------------------------------*/
|
||||
/* USER CODE BEGIN EC */
|
||||
|
||||
/* USER CODE END EC */
|
||||
|
||||
/* Exported macro ------------------------------------------------------------*/
|
||||
/* USER CODE BEGIN EM */
|
||||
#define DEBUG
|
||||
#ifdef DEBUG
|
||||
static inline void ITM_Print(const char *str) {
|
||||
while (*str) {
|
||||
uint32_t timeout = 1000;
|
||||
while ((ITM->PORT[0].u32 == 0) && (timeout-- > 0));
|
||||
|
||||
if (timeout > 0) {
|
||||
ITM->PORT[0].u8 = (uint8_t)(*str);
|
||||
}
|
||||
str++;
|
||||
}
|
||||
}
|
||||
#define DEBUG_PRINT(x) ITM_Print(x)
|
||||
#else
|
||||
#define DEBUG_PRINT(x)
|
||||
#endif
|
||||
/* USER CODE END EM */
|
||||
|
||||
/* Exported functions prototypes ---------------------------------------------*/
|
||||
void Error_Handler(void);
|
||||
|
||||
/* USER CODE BEGIN EFP */
|
||||
|
||||
/* USER CODE END EFP */
|
||||
|
||||
/* Private defines -----------------------------------------------------------*/
|
||||
|
||||
/* USER CODE BEGIN Private defines */
|
||||
|
||||
/* USER CODE END Private defines */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* __MAIN_H */
|
||||
/* USER CODE BEGIN Header */
|
||||
/**
|
||||
******************************************************************************
|
||||
* @file : main.h
|
||||
* @brief : Header for main.c file.
|
||||
* This file contains the common defines of the application.
|
||||
******************************************************************************
|
||||
* @attention
|
||||
*
|
||||
* Copyright (c) 2026 STMicroelectronics.
|
||||
* Copyright (c) 2026 Erick Ahmed.
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
||||
*
|
||||
******************************************************************************
|
||||
*/
|
||||
/* USER CODE END Header */
|
||||
|
||||
/* Define to prevent recursive inclusion -------------------------------------*/
|
||||
#ifndef __MAIN_H
|
||||
#define __MAIN_H
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
#include "stm32f4xx_hal.h"
|
||||
|
||||
/* Private includes ----------------------------------------------------------*/
|
||||
/* USER CODE BEGIN Includes */
|
||||
#include <stdint.h>
|
||||
#include "canlog.h"
|
||||
/* USER CODE END Includes */
|
||||
|
||||
/* Exported types ------------------------------------------------------------*/
|
||||
/* USER CODE BEGIN ET */
|
||||
|
||||
/* USER CODE END ET */
|
||||
|
||||
/* Exported constants --------------------------------------------------------*/
|
||||
/* USER CODE BEGIN EC */
|
||||
|
||||
/* USER CODE END EC */
|
||||
|
||||
/* Exported macro ------------------------------------------------------------*/
|
||||
/* USER CODE BEGIN EM */
|
||||
#define DEBUG
|
||||
#ifdef DEBUG
|
||||
#include <stdio.h>
|
||||
#define DEBUG_PRINT(...) printf(__VA_ARGS__)
|
||||
#else
|
||||
#define DEBUG_PRINT(...)
|
||||
#endif
|
||||
/* USER CODE END EM */
|
||||
|
||||
/* Exported functions prototypes ---------------------------------------------*/
|
||||
void Error_Handler(void);
|
||||
|
||||
/* USER CODE BEGIN EFP */
|
||||
|
||||
/* USER CODE END EFP */
|
||||
|
||||
/* Private defines -----------------------------------------------------------*/
|
||||
|
||||
/* USER CODE BEGIN Private defines */
|
||||
|
||||
/* USER CODE END Private defines */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* __MAIN_H */
|
||||
|
||||
+5
-2
@@ -32,7 +32,7 @@ extern osMessageQueueId_t xUARTQueue;
|
||||
* @param arguments: buffer, source, message
|
||||
* @retval None
|
||||
*/
|
||||
static void format_can_message(char *buf, uint8_t source, const CanMessage_t *message)
|
||||
static int format_can_message(char *buf, uint8_t source, const CanMessage_t *message)
|
||||
{
|
||||
const char hex[] = "0123456789ABCDEF";
|
||||
|
||||
@@ -72,6 +72,9 @@ static void format_can_message(char *buf, uint8_t source, const CanMessage_t *me
|
||||
|
||||
buf[idx++] = '\r';
|
||||
buf[idx++] = '\n';
|
||||
buf[idx] = '\0';
|
||||
|
||||
return idx;
|
||||
}
|
||||
/* END format_can_message */
|
||||
|
||||
@@ -108,7 +111,7 @@ void vUARTLogger(void *argument)
|
||||
{
|
||||
DEBUG_PRINT("CAN frame detected\r\n");
|
||||
format_can_message(tx_buffer, message.source, &message);
|
||||
HAL_UART_Transmit_DMA(&huart1, (uint8_t*)tx_buffer, 44);
|
||||
HAL_UART_Transmit_DMA(&huart1, (uint8_t*)tx_buffer, len);
|
||||
osSemaphoreAcquire(xUARTDMASemaphore, osWaitForever);
|
||||
DEBUG_PRINT("CAN frame sent via UART\r\n");
|
||||
}
|
||||
|
||||
+570
-562
File diff suppressed because it is too large
Load Diff
+22
-34
@@ -68,30 +68,26 @@ Mcu.IP8=USART1
|
||||
Mcu.IPNb=9
|
||||
Mcu.Name=STM32F405RGTx
|
||||
Mcu.Package=LQFP64
|
||||
Mcu.Pin0=PA0-WKUP
|
||||
Mcu.Pin1=PB12
|
||||
Mcu.Pin10=PC10
|
||||
Mcu.Pin11=PC11
|
||||
Mcu.Pin12=PC12
|
||||
Mcu.Pin13=PD2
|
||||
Mcu.Pin14=PB3
|
||||
Mcu.Pin15=PB4
|
||||
Mcu.Pin16=PB5
|
||||
Mcu.Pin17=PB6
|
||||
Mcu.Pin18=PB7
|
||||
Mcu.Pin19=PB8
|
||||
Mcu.Pin2=PB13
|
||||
Mcu.Pin20=PB9
|
||||
Mcu.Pin21=VP_FREERTOS_VS_CMSIS_V2
|
||||
Mcu.Pin22=VP_SYS_VS_tim6
|
||||
Mcu.Pin3=PC8
|
||||
Mcu.Pin4=PC9
|
||||
Mcu.Pin5=PA9
|
||||
Mcu.Pin6=PA10
|
||||
Mcu.Pin7=PA13
|
||||
Mcu.Pin8=PA14
|
||||
Mcu.Pin9=PA15
|
||||
Mcu.PinsNb=23
|
||||
Mcu.Pin0=PB12
|
||||
Mcu.Pin1=PB13
|
||||
Mcu.Pin10=PC12
|
||||
Mcu.Pin11=PD2
|
||||
Mcu.Pin12=PB5
|
||||
Mcu.Pin13=PB6
|
||||
Mcu.Pin14=PB7
|
||||
Mcu.Pin15=PB8
|
||||
Mcu.Pin16=PB9
|
||||
Mcu.Pin17=VP_FREERTOS_VS_CMSIS_V2
|
||||
Mcu.Pin18=VP_SYS_VS_tim6
|
||||
Mcu.Pin2=PC8
|
||||
Mcu.Pin3=PC9
|
||||
Mcu.Pin4=PA9
|
||||
Mcu.Pin5=PA10
|
||||
Mcu.Pin6=PA13
|
||||
Mcu.Pin7=PA14
|
||||
Mcu.Pin8=PC10
|
||||
Mcu.Pin9=PC11
|
||||
Mcu.PinsNb=19
|
||||
Mcu.ThirdPartyNb=0
|
||||
Mcu.UserConstants=
|
||||
Mcu.UserName=STM32F405RGTx
|
||||
@@ -117,26 +113,18 @@ NVIC.TIM6_DAC_IRQn=true\:15\:0\:false\:false\:true\:false\:false\:true\:true
|
||||
NVIC.TimeBase=TIM6_DAC_IRQn
|
||||
NVIC.TimeBaseIP=TIM6
|
||||
NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false\:false
|
||||
PA0-WKUP.Mode=SYS_WakeUp0
|
||||
PA0-WKUP.Signal=SYS_WKUP
|
||||
PA10.Mode=Asynchronous
|
||||
PA10.Signal=USART1_RX
|
||||
PA13.Mode=JTAG_5_pins
|
||||
PA13.Mode=Serial_Wire
|
||||
PA13.Signal=SYS_JTMS-SWDIO
|
||||
PA14.Mode=JTAG_5_pins
|
||||
PA14.Mode=Serial_Wire
|
||||
PA14.Signal=SYS_JTCK-SWCLK
|
||||
PA15.Mode=JTAG_5_pins
|
||||
PA15.Signal=SYS_JTDI
|
||||
PA9.Mode=Asynchronous
|
||||
PA9.Signal=USART1_TX
|
||||
PB12.Mode=CAN_Activate
|
||||
PB12.Signal=CAN2_RX
|
||||
PB13.Mode=CAN_Activate
|
||||
PB13.Signal=CAN2_TX
|
||||
PB3.Mode=JTAG_5_pins
|
||||
PB3.Signal=SYS_JTDO-SWO
|
||||
PB4.Mode=JTAG_5_pins
|
||||
PB4.Signal=SYS_JTRST
|
||||
PB5.Locked=true
|
||||
PB5.Signal=GPIO_Output
|
||||
PB6.Locked=true
|
||||
|
||||
Reference in New Issue
Block a user