- 硬件连接
一切正常时,直流无刷驱动板上只亮两个灯。同时接编码器和霍尔传感器是为了后续同时使用。
- 建立STM32CUBEMX工程
选择MCU
选择时钟源(基于外部晶振),并进行时钟配置
调试接口配置
根据原理图配置所需GPIO口(含按键、LED、蜂鸣器、编码器、ADC接口等);(按键配置为下拉输入)
配置串口
在usart.c中加入代码,printf重定向
#include <stdio.h>
#ifdef __GNUC__
#define PUTCHAR_PROTOTYPE int __io_putchar(int ch)
#else
#define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)
#endif
PUTCHAR_PROTOTYPE
{
//具体哪个串口可以更改huart1为其它串口
HAL_UART_Transmit(&huart2, (uint8_t *)&ch, 1 , 0xffff);
return ch;
}
测试基本的GPIO口和串口输出是否正常,while中写入代码
HAL_GPIO_WritePin(LED_D11_GPIO_Port, LED_D11_Pin, GPIO_PIN_SET);
HAL_Delay(1000);
HAL_GPIO_WritePin(LED_D11_GPIO_Port, LED_D11_Pin, GPIO_PIN_RESET);
HAL_Delay(1000);
LED_D11一秒闪烁,正常亮灯。