一知半解学习环境:
    1、CubeMX 4.23.0
    2、uVision 5.14.2
    3、MCU 启明 STM32F407 开发板(高配版) V3.1
一知半解学习目标:
    1、掌握CubeMX下RCC以及SYS的相关配置;
    2、掌握CubeMX下串口配置;
    3、掌握Printf的实现套路;
一知半解实现过程:
    1、配置系统调试接口及时基时钟源;
    2、配置外部高速时钟源;
    3、根据原理图配置对应串口(USART1);
    4、配置时钟树;
    5、配置串口参数,保持默认参数即可;
    6、生成工程,并添加程序;
首先,打开工程,在usart.c文件的最后添加如下程序;
/* USER CODE BEGIN 1 */
#ifdef __GNUC__
  /* With GCC/RAISONANCE, small printf (option LD Linker->Libraries->Small printf
     set to 'Yes') calls __io_putchar() */
  #define PUTCHAR_PROTOTYPE int __io_putchar(int ch)
#else
  #define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)
#endif /* __GNUC__ */
PUTCHAR_PROTOTYPE
{
  /* Place your implementation of fputc here */
  /* 使用的串口可根据实际配置修改 */
  HAL_UART_Transmit(&huart1, (uint8_t *)&ch, 1, 0xFFFF);
  return ch;
}
/* USER CODE END 1 */
其次,在main.c循环中添加打印信息;
/* USER CODE BEGIN WHILE */
  while (1)
  {
  /* USER CODE END WHILE */
  /* USER CODE BEGIN 3 */
        HAL_Delay(1000);
        printf("杭州义益钛迪信息技术有限公司嵌入式部门\n");
  }
  /* USER CODE END 3 */
     7、串口调试助手打印验证;
一知半解套路回顾:
    1、掌握CubeMX配置的常规套路,如SYS、RCC以及时钟树的配置等;
    2、掌握CubeMX串口的配置;
    3、学会printf实现需要添加文件的固定套路(以后遇到只需要复制就行);

一知半解学CubeMX——UART:Printf实现相关推荐

  1. 一知半解学CubeMX——创建工程

    一知半解学习环境:     1.CubeMX 4.23.0     2.uVision 5.14.2     3.MCU 启明 STM32F407 开发板(高配版) V3.1 一知半解学习目标:   ...

  2. 一知半解学CubeMX——GPIO:LED

    一知半解学习环境:     1.CubeMX 4.23.0     2.uVision 5.14.2     3.MCU 启明 STM32F407 开发板(高配版) V3.1 一知半解学习目标:   ...

  3. 一知半解学CubeMX——IIC:OLED屏显示

    一知半解学习环境:     1.CubeMX 4.23.0     2.uVision 5.14.2     3.MCU 启明 STM32F407 开发板(高配版) V3.1     4.中景园电子0 ...

  4. cubemx万年钟_一知半解学CubeMX——TIM:定时中断实现LED闪烁

    一知半解学习环境: 1.CubeMX 4.23.0 2.uVision 5.14.2 3.MCU 启明 STM32F407 开发板(高配版) V3.1 一知半解学习目标: 1.掌握CubeMX下RCC ...

  5. 1、HAL库UART 中断|DMA 自动回显接收数据

    1.实现代码: stm32f4xx_hal_conf.h文件开启UART宏定义 #define HAL_UART_MODULE_ENABLED 添加stm32f4xx_hal_uart.c和stm32 ...

  6. cubemx stm32 配置两个串口_STM32CubeMX系列教程5:串行通信(USART)

    本章以串口为例讲解,HAL 库轮询,中断,DMA 三种编程模型. 1.前情回顾 在串行通信中,一个字符一个字符地传输,每个字符一位一位地传输,并且传输一个字符时,总是以"起始位"开 ...

  7. 分奇偶数c语言_小白学写字(C语言)

    小白学写字 #输入输出语句应用 1.用printf语句编写计算器.样例: 程序如下: #include void main() { printf("*****计算器*****\n" ...

  8. C语言学习——从零开始学编程(第二篇:C语言知识总括)

    本节将介绍:C语言的基本框架和大部分知识的浅了解(记得先看目录哦~~) 前言--小颖的话 提示:本文篇幅长,知识点多,可以分开学习,记得收藏点赞哦~ 一.数据类型 1.C语言中的关键字 2.不同类型所 ...

  9. 上海海事大学自动化专业C语言课程代码参考(第一周)

    本博客作为作者本人的学习记录,大家可以参考,但不要抄袭哦 第一次发博客,想想还有点小激动. 文章会将上机实验和作业的代码全部贴出,部分代码会有一些讲解.当然,作者本人也是初学者,如有疏漏还请指出. 本 ...

最新文章

  1. linux 服务器FTP服务安装教程
  2. (面试)java基础-String一些特性
  3. 修改android studio中的avd sdk路径、avd sdk找不到的解决方案
  4. 转 wordpress搭建
  5. 【翻译】CodeMix使用教程(三):Emmet
  6. JDK 8 Javadoc调整了方法列表
  7. python中配置opencv_在Windows中安装OpenCV-Python|四
  8. 第 190 场力扣周赛
  9. zuul集成cloud_如何在具有持续集成的Google Cloud Run上运行Laravel-分步指南
  10. 判断用户是否已经登录
  11. 荣耀v10玩flash游戏_沫子玩王者荣耀被打哭?直言这个游戏比吃鸡还难玩
  12. zabbix 客户端自定义端口监控
  13. centos6 挂载ntfs格式移动硬盘
  14. PLINK-GWAS学习9------对于二元数据的关联分析
  15. 怎么将计算机工具栏时间去除,电脑任务栏不显示日期只显示时间的详细处理方法...
  16. w ndoWs8pE模式下载,天意PE迷你版V2011.9.9(天意PE系统)下载 - 下载吧
  17. python实现时间序列预处理
  18. HTML5期末大作业:个人网页设计——薛之谦6页(代码质量好) 学生DW网页设计作业源码 web课程设计网页规划与设计
  19. 夜神模拟器没有开发者选项怎么办?
  20. 安卓下快速搜索文件实现历程{NDK}

热门文章

  1. tomcat7w.exe启动失败,未注册成服务,以及配置Tomcat系统环境变量
  2. 关于信息化管理的建议
  3. python constrain_python-constraint:根据函数的输出设置约束
  4. 《英文科技论文写作与学术报告》网课第二章作业答案
  5. idea设置主题皮肤(详细)
  6. 创建分区表,以及将数据写入分区表
  7. Docker服务的重启服务命令(systemctl restart docker)
  8. growup怎么读_grow up是什么意思_grow up怎么读_grow up翻译_用法_发音_词组_同反义词_向上生长-新东方在线英语词典...
  9. 安卓应用App发布至各大平台汇总
  10. windows10 改变桌面路径到其他盘 直接显示所有文件重定向路径问题