当前位置: 首页 > news >正文

使用STM32CubeMX配置STM32串口

第一步:打开STM32CubeMX,选择使用的STM32控制器

第二步,选择使用的STM32控制器
在这里插入图片描述第三步,设置工程名和保存目录在这里插入图片描述第四步,设置Code Generator,按照如图设置可以自动获得按配置整理好的代码
在这里插入图片描述第五步,配置时钟
在这里插入图片描述在这里插入图片描述第六步,配置串口
在这里插入图片描述在这里插入图片描述打开串口中断
在这里插入图片描述第七步,点击右上角GENERATE CODE按钮,生成代码,打开生成的工程
在生成好的代码的main.c文件中,添加如下代码

/* USER CODE BEGIN 4 */
//打印字符输出函数,有了这个函数可以在任意一处调用printf打印输出
int fputc(int ch,FILE *f)
{
  HAL_UART_Transmit(&huart4, (uint8_t*)&ch,1,5000);
  return ch;
}

//中断接收函数,aRxBu为接收函数的缓冲区,5代表一次接收5个字符
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
	if (&huart->Instance == &huart2.Instance)
		HAL_UART_Receive_IT(&huart2,aRxBu,5);
}`
/* USER CODE END 4 */

相关文章:

  • 浅谈C++函数的参数
  • 使用STM32CubeMX新建Keil工程
  • 使用QT新建工程并成功编译
  • 旅游整理
  • 简单几步向Android Studio导入Eclipse工程
  • Xmind免费安装使用教程
  • 今天日志
  • Ubuntu下JetBrains 系列软件的免费安装教程
  • 笑傲江湖与三层交换、路由......
  • 清华镜像源安装tensorflow
  • MSNShell效果,来个养眼的......
  • 清华镜像源安装opencv或opencv-contrib
  • 面向对象技术第一讲 多态性(原创)
  • matlab提取图形形心
  • Matlab + Ransac 求两个对应点集的变换矩阵
  • [js高手之路]搞清楚面向对象,必须要理解对象在创建过程中的内存表示
  • github指令
  • iBatis和MyBatis在使用ResultMap对应关系时的区别
  • isset在php5.6-和php7.0+的一些差异
  • Puppeteer:浏览器控制器
  • WordPress 获取当前文章下的所有附件/获取指定ID文章的附件(图片、文件、视频)...
  • 动手做个聊天室,前端工程师百无聊赖的人生
  • 基于遗传算法的优化问题求解
  • 前言-如何学习区块链
  • 容器服务kubernetes弹性伸缩高级用法
  • 什么是Javascript函数节流?
  • 原生JS动态加载JS、CSS文件及代码脚本
  • 运行时添加log4j2的appender
  • ionic入门之数据绑定显示-1
  • 阿里云ACE认证学习知识点梳理
  • 如何用纯 CSS 创作一个菱形 loader 动画
  • ​DB-Engines 11月数据库排名:PostgreSQL坐稳同期涨幅榜冠军宝座
  • ​创新驱动,边缘计算领袖:亚马逊云科技海外服务器服务再进化
  • ​用户画像从0到100的构建思路
  • #Linux(帮助手册)
  • (26)4.7 字符函数和字符串函数
  • (8)STL算法之替换
  • (cljs/run-at (JSVM. :browser) 搭建刚好可用的开发环境!)
  • (Redis使用系列) SpringBoot中Redis的RedisConfig 二
  • (五) 一起学 Unix 环境高级编程 (APUE) 之 进程环境
  • (一)基于IDEA的JAVA基础12
  • ***linux下安装xampp,XAMPP目录结构(阿里云安装xampp)
  • .net 4.0 A potentially dangerous Request.Form value was detected from the client 的解决方案
  • .NET/C# 在代码中测量代码执行耗时的建议(比较系统性能计数器和系统时间)
  • .php文件都打不开,打不开php文件怎么办
  • .set 数据导入matlab,设置变量导入选项 - MATLAB setvaropts - MathWorks 中国
  • .sh
  • @EnableWebMvc介绍和使用详细demo
  • @RequestParam,@RequestBody和@PathVariable 区别
  • @zabbix数据库历史与趋势数据占用优化(mysql存储查询)
  • [].shift.call( arguments ) 和 [].slice.call( arguments )
  • []新浪博客如何插入代码(其他博客应该也可以)
  • [2010-8-30]
  • [2015][note]基于薄向列液晶层的可调谐THz fishnet超材料快速开关——
  • [android] 手机卫士黑名单功能(ListView优化)