2024-05-28 05:13 AM
Hi All
I am having difficulty getting the serial to work through the STlink on the STM32F469I AU1 (MB1189B) version.
I have tried all the suggestions in the previous posts on the forms. The uart is set with the correct pins according to the schematic of the MB1189B (Uart3 PB10, PB11). I have tried numerous serial monitors all settings were correct and still nothing. Is there something different in the configuration of this version of the PCB that I am missing? I am really at a loss as to why this isn't working any suggestions Would be appreciated.
Also, find attached Code below were i try every port on the PCB.
main.c
/* USER CODE BEGIN PV */
uint8_t tx_buffer1[10] = "UART1!!\n\r";
uint8_t tx_buffer2[10] = "UART2!!\n\r";
uint8_t tx_buffer3[10] = "UART3!!\n\r";
uint8_t tx_buffer4[10] = "UART4!!\n\r";
uint8_t tx_buffer5[10] = "UART5!!\n\r";
uint8_t tx_buffer6[10] = "UART6!!\n\r";
/* USER CODE END PV */
int main(void)
{
/* USER CODE BEGIN 1 */
HAL_UART_Transmit(&huart1, tx_buffer1, 10, HAL_MAX_DELAY);
HAL_UART_Transmit(&huart2, tx_buffer2, 10, HAL_MAX_DELAY);
HAL_UART_Transmit(&huart3, tx_buffer3, 10, HAL_MAX_DELAY);
HAL_UART_Transmit(&huart4, tx_buffer4, 10, HAL_MAX_DELAY);
HAL_UART_Transmit(&huart5, tx_buffer5, 10, HAL_MAX_DELAY);
HAL_UART_Transmit(&huart6, tx_buffer6, 10, HAL_MAX_DELAY);
/* USER CODE END 1 */
/* MCU Configuration--------------------------------------------------------*/
/* Reset of all peripherals, Initializes the Flash interface and the Systick. */
HAL_Init();
/* USER CODE BEGIN Init */
/* USER CODE END Init */
/* Configure the system clock */
SystemClock_Config();
/* USER CODE BEGIN SysInit */
/* USER CODE END SysInit */
/* Initialize all configured peripherals */
MX_GPIO_Init();
MX_CRC_Init();
MX_DMA2D_Init();
MX_DSIHOST_DSI_Init();
MX_FMC_Init();
MX_LTDC_Init();
MX_QUADSPI_Init();
MX_I2C1_Init();
MX_USART2_UART_Init();
MX_UART4_Init();
MX_UART5_Init();
MX_USART1_UART_Init();
MX_USART3_UART_Init();
MX_USART6_UART_Init();
MX_TouchGFX_Init();
/* Call PreOsInit function */
MX_TouchGFX_PreOSInit();
/* USER CODE BEGIN 2 */
/* USER CODE END 2 */
/* Init scheduler */
osKernelInitialize();
/* USER CODE BEGIN RTOS_MUTEX */
/* add mutexes, ... */
/* USER CODE END RTOS_MUTEX */
/* USER CODE BEGIN RTOS_SEMAPHORES */
/* add semaphores, ... */
/* USER CODE END RTOS_SEMAPHORES */
/* USER CODE BEGIN RTOS_TIMERS */
/* start timers, add new ones, ... */
/* USER CODE END RTOS_TIMERS */
/* USER CODE BEGIN RTOS_QUEUES */
/* add queues, ... */
/* USER CODE END RTOS_QUEUES */
/* Create the thread(s) */
/* creation of defaultTask */
defaultTaskHandle = osThreadNew(StartDefaultTask, NULL, &defaultTask_attributes);
/* creation of TouchGFXTask */
TouchGFXTaskHandle = osThreadNew(TouchGFX_Task, NULL, &TouchGFXTask_attributes);
/* USER CODE BEGIN RTOS_THREADS */
/* add threads, ... */
/* USER CODE END RTOS_THREADS */
/* USER CODE BEGIN RTOS_EVENTS */
/* add events, ... */
/* USER CODE END RTOS_EVENTS */
/* Start scheduler */
osKernelStart();
/* We should never get here as control is now taken by the scheduler */
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
HAL_Delay(1000); // Delay 1 second
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
}
/* USER CODE END 3 */
}