1.硬件设计参考图
参考:00_YS_硬件电路图_往事不可追_来日不方长的博客-CSDN博客
2.配置LED
2.1代码部分
代码初始化部分如下图MX自动生成:
// main.h 中/* Private defines -----------------------------------------------------------*/
#define LED_02_Pin GPIO_PIN_5
#define LED_02_GPIO_Port GPIOE
#define LED_03_Pin GPIO_PIN_6
#define LED_03_GPIO_Port GPIOE
#define LED_01_Pin GPIO_PIN_9
#define LED_01_GPIO_Port GPIOH/* USER CODE BEGIN Private defines */
#define LED1_TOGGLE HAL_GPIO_TogglePin(LED_01_GPIO_Port, LED_01_Pin)
#define LED2_TOGGLE HAL_GPIO_TogglePin(LED_02_GPIO_Port, LED_02_Pin)
#define LED3_TOGGLE HAL_GPIO_TogglePin(LED_03_GPIO_Port, LED_03_Pin)
/* USER CODE END Private defines */
/** Configure pins as* Analog* Input* Output* EVENT_OUT* EXTI
*/
void MX_GPIO_Init(void)
{GPIO_InitTypeDef GPIO_InitStruct = {0};/* GPIO Ports Clock Enable */__HAL_RCC_GPIOE_CLK_ENABLE();__HAL_RCC_GPIOH_CLK_ENABLE();__HAL_RCC_GPIOA_CLK_ENABLE();__HAL_RCC_GPIOB_CLK_ENABLE();/*Configure GPIO pin Output Level */HAL_GPIO_WritePin(GPIOE, LED_02_Pin|LED_03_Pin, GPIO_PIN_RESET);/*Configure GPIO pin Output Level */HAL_GPIO_WritePin(LED_01_GPIO_Port, LED_01_Pin, GPIO_PIN_RESET);/*Configure GPIO pins : PEPin PEPin */GPIO_InitStruct.Pin = LED_02_Pin|LED_03_Pin;GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;GPIO_InitStruct.Pull = GPIO_NOPULL;GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;HAL_GPIO_Init(GPIOE, &GPIO_InitStruct);/*Configure GPIO pin : PtPin */GPIO_InitStruct.Pin = LED_01_Pin;GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;GPIO_InitStruct.Pull = GPIO_NOPULL;GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;HAL_GPIO_Init(LED_01_GPIO_Port, &GPIO_InitStruct);}
3.配置USART1