从这个测试开始,功能累加测试——随着实验下去,功能逐渐增加。直到认为实验完成。为了速度这与调试好了IAR8.3,在这里速度快多了! 首先改选STM32CubeMX,打开,改选见图23_1_1~4。没有选设的默认即可。 导出工程文件,单击菜单Project/Setting...,见图23_1_5,本里选择输出IAR。而后单击菜单Project/Generate Code,直接就导出了。 导出后原来如果在编辑状态需要更新所有文件,如果没有在编辑状态,则新导出的文档将覆盖原来所有的。以后的导出与此相同。 此实验参考了STM32CubeMX网上STM32Cube的一文,原文是STM32F401-ARM4的,我想可以参考就先拿来用了,结果很不错。 在默认生成的main.c中所有的头文件已加上,不会有任何问题。 而后在main.c的大括号后边到while循环语句之前增加:# m: ]* b% f$ S' D' O( S3 |3 I% O MX_UART5_Init();" P; e3 z& X: L$ g, D" k7 R. `0 r 而后在static void MX_NVIC_Init(void)后增加:- q7 a! z) ~7 C) e. Z. F3 Z/ ]6 D //Set for Printf int fputc(int ch,FILE *f){ HAL_UART_Transmit(&huart5,(uint8_t*)&ch,1,10);& Z' ^2 P: J4 p return ch;2 ~$ y) y/ D! Q N7 {* O }) ^! K5 `/ B& `, L" _3 x. i( ^8 ` 最后在while循环语句内增加:$ @& J- t5 G) X5 }, s4 x printf("Test UART5 for printf \n\r"); 结果见截图23_1_6。以下的实验就可以从UART5连接虚拟串口到PC,用虚拟串口软件看结果了。如果 改变这条语句,可以改变下边:5 |& ^7 e8 Q* e: ^/ K+ e' }$ W HAL_UART_Transmit(&huart5,(uint8_t*)&ch,1,10); 为* a3 m; j; o% W1 t7 ]5 Y HAL_UART_Transmit(&huart1,(uint8_t*)&ch,1,10);,则可以从USART1输出信息。8 e8 U. F; }! q5 _. K# \1 a - f$ R/ F2 L" s' N |
23-1
23-2
23-3
23-4
23-5
23-6
哇!!抓住一个大佬 |
STM32固件库分享,超全系列整理
小马哥STM32F103开源小四轴RoboFly全部资料大放送
【MCU实战经验】+STM32F107的USB使用
基于STM32F103两轮平衡小车设计(开源)
STM32F107VCT6官方原理图和PCB
【福利】用STM32库的朋友有福了:STM32F10x_StdPeriph_Lib_V3.5.0chm...
基于STM32F10xx存储器和系统架构经验分享
基于STM32F1的CAN通信之BH1750
基于STM32F1的CAN通信之OLED
基于STM32F1的CAN通信之之串口IAP