|
从这个测试开始,功能累加测试——随着实验下去,功能逐渐增加。直到认为实验完成。为了速度这与调试好了IAR8.3,在这里速度快多了!5 ?/ k' B2 i: e# X+ }3 e# _7 k( g 首先改选STM32CubeMX,打开,改选见图23_1_1~4。没有选设的默认即可。 导出工程文件,单击菜单Project/Setting...,见图23_1_5,本里选择输出IAR。而后单击菜单Project/Generate Code,直接就导出了。 导出后原来如果在编辑状态需要更新所有文件,如果没有在编辑状态,则新导出的文档将覆盖原来所有的。以后的导出与此相同。 此实验参考了STM32CubeMX网上STM32Cube的一文,原文是STM32F401-ARM4的,我想可以参考就先拿来用了,结果很不错。$ Y! T: h7 q' w( d* r1 v 在默认生成的main.c中所有的头文件已加上,不会有任何问题。# R5 X! k9 ^4 D 而后在main.c的大括号后边到while循环语句之前增加:9 p1 T# o( q9 [) G! u% f MX_UART5_Init();# O0 i% H3 B% J# N1 n7 D 而后在static void MX_NVIC_Init(void)后增加:3 y, {2 I& G2 h" L% W" r( W, E$ z5 p //Set for Printf int fputc(int ch,FILE *f){1 s3 h5 k8 N# U0 m& O1 J HAL_UART_Transmit(&huart5,(uint8_t*)&ch,1,10);: V$ q7 ]: G+ R& j; o; S# p return ch; }0 ^9 U. M$ g5 y( A1 v& O 最后在while循环语句内增加:5 l( {6 G3 ?: b printf("Test UART5 for printf \n\r"); 结果见截图23_1_6。以下的实验就可以从UART5连接虚拟串口到PC,用虚拟串口软件看结果了。如果 改变这条语句,可以改变下边:* N. X2 F9 r& w$ M6 W HAL_UART_Transmit(&huart5,(uint8_t*)&ch,1,10); 为! [. D2 Y& y' ~# U7 ]' X1 v HAL_UART_Transmit(&huart1,(uint8_t*)&ch,1,10);,则可以从USART1输出信息。2 E# t/ L% u* u' Y4 p 0 Z6 Y+ S: ?) W% E6 O7 Y1 w- E" l |
23-1
23-2
23-3
23-4
23-5
23-6
哇!!抓住一个大佬 |
DMA 原理从 0 到 1:为什么它能解放 CPU?一文讲透 DMA 的工作流程
【福利三:雨露均沾·逢7狂欢】之五:STM32系统时钟PLL故障排除1例
【福利三:雨露均沾·逢7狂欢】之三:AI帮我查BUG
福利三:雨露均沾·逢7狂欢】之二:STM32F407VG串口通信乱码故障的排除
基于STM32F103的I2C主从机通信
OpenBLT移植到STM32F103战舰开发板上适用于所有STM32F103系列的Bootloader
TFT LCD 与 FSMC 的硬件连接大容量 STM32F10xxx FSMC 接口
单片机:初学者该了解的STM32F103基础知识
2025软件工具兔哥知道
STM32之继电器模块
微信公众号
手机版