MCU型号:STM32F103RET6
1.生成一个带串口输出的工程文件,新建RT-Thread项目工程文件。

2.查看电路图中的串口输出管脚,根据STMCubeMx软件可知此串口为USART1,选择芯片型号为STM32F103RET6,控制台串口选择UART1,发送脚:PB6,接收脚:PB7



3.设置下载bin文件的下载地址为:0x08000000。

4.代码编译后下载到电路板,连上串口调试助手可看到调试信息。

5.打开RT-Thread Settings设置设备驱动中的USB,USB设置如图所示,设置完成之后,记得保存,否则设置无效。


6.查看原理图中的外部晶振大小,由图可知为8MHz。

7.打开CubeMx_Settings配置USB虚拟串口。

8.配置外部晶振,配置USB,重新配置外部时钟,配置完之后生成工程文件






9.删除usb_device.h,usbd_cdc_if.h,usbd_conf.h,usbd_desc.h文件,去掉main.c文件中的#include “usb_device.h”


10.在stm32f1xx_hal_conf.h打开宏定义HAL_UART_MODULE_ENABLED.

11.1.将usbd_conf.c文件中的void HAL_PCD_MspInit(PCD_HandleTypeDef* pcdHandle)和HAL_PCD_MspDeInit(PCD_HandleTypeDef* pcdHandle)拷贝到stm32f1xx_hal_msp.c文件中。
void HAL_PCD_MspInit(PCD_HandleTypeDef* pcdHandle)
{
if(pcdHandle->Instance==USB)
{
/* USER CODE BEGIN USB_MspInit 0 */
/* USER CODE END USB_MspInit 0 */
/* Peripheral clock enable */
__HAL_RCC_USB_CLK_ENABLE();
/* Peripheral interrupt init */
HAL_NVIC_SetPriority(USB_HP_CAN1_TX_IRQn, 5, 0);
HAL_NVIC_EnableIRQ(USB_HP_CAN1_TX_IRQn);
HAL_NVIC_SetPriority(USB_LP_CAN1_RX0_IRQn, 5, 0)

最低0.47元/天 解锁文章
1815

被折叠的 条评论
为什么被折叠?



