功能需求:

(1)对接收的字符串原样返回(每10个字符一次)。

(2)发送一个字符串完成后改变LED的状态。

1.创建工程

使用的是F407Discovery,4个LED对应PD12-PD14。

(1)使用外部高速时钟

(2)推挽输出4个LED输出端口

(3)使用usart2

(4)外部8M,使用HSE,频率设置为最高(168MHz,这个可随便)

(5)如下,设置用中断

(6)设置使用中断(在usart2中断下边的是外部中断,我测试的时候用的可不用管)

(7)点击这个小齿轮生成工程

2.程序设计

需求中需要接收到10个字符之后原样返回,发送完成后还要改变LED状态,所以要用中断,发送接收都要。

(1)定义一个字符变量,两个缓存数组(uint8_t其实就是unsigned char类型)

(2)在while(1)之前先使能接收中断并绑定接收缓存数组指定大小。在while(1)中:先发送一个字符,再发送字符数组中的字符,最后延时一下要不然一会发送的太快不利于观察。

(3)写回调函数(两个)

(4)下载验证即可

转载于:https://www.cnblogs.com/feipeng8848/p/7326969.html

(5)STM32使用HAL库实现串口通讯——实战操作相关推荐

  1. STM32 HAL库 UART 串口读写功能笔记

    https://www.cnblogs.com/Mysterious/p/4804188.html STM32L0 HAL库 UART 串口读写功能 串口发送功能: uint8_t TxData[10 ...

  2. 【STM32】HAL库 STM32CubeMX教程十一---DMA (串口DMA发送接收)

    前言: 本系列教程将 对应外设原理,HAL库与STM32CubeMX结合在一起讲解,使您可以更快速的学会各个模块的使用 所用工具: 1.芯片: STM32F407ZET6/ STM32F103ZET6 ...

  3. STM32CubeMX | 基于STM32使用HAL库硬件SPI驱动WK2124一拖四SPI转四路串口芯片

    STM32CubeMX | 基于STM32使用HAL库硬件SPI驱动WK2124一拖四SPI转四路串口芯片 STM32基础工程生成 首先使用STM32CUBEMX生成STM32的基础工程,配置时钟到7 ...

  4. 【STM32】HAL库——串口DMA通信(三)

    前期准备: STM32CubeMX STM32RCT6核心板 IDE Keil(MDK-ARM) 关于DMA 1. 什么是DMA? DMA(Direct Memory Access,直接存储器访问) ...

  5. 【STM32】HAL库 STM32CubeMX教程十五---FMC-SDRAM(一)

    前言: 本系列教程将HAL库与STM32CubeMX结合在一起讲解,使您可以更快速的学会各个模块的使用 本文 1首先讲解什么是FMC及SDRAM,W9825G6KH芯片原理,2基于CubeMx创建工程 ...

  6. 【STM32】HAL库 STM32CubeMX教程十四---SPI

    前言: 本系列教程将HAL库与STM32CubeMX结合在一起讲解,使您可以更快速的学会各个模块的使用 在我们的HAL库中,对硬件SPI函数做了很好的集成,使得之前SPI几百行代码,在HAL库中,只需 ...

  7. STM32使用HAL库编写SHT2x温湿度传感器驱动

    温湿度传感器在嵌入式开发中应用场景非常多.本文主要利用STM32及HAL库完成SHT2x温湿度传感器温湿度值得读取及将值通过串口打印出来. 一.SHT20芯片芯片介绍 1.官方收据手册可以该网站下载: ...

  8. 正点原子STM32(基于HAL库)5

    目录 SRAM 实验 存储器简介 SRAM 方案简介 硬件设计 程序设计 程序流程图 程序解析 下载验证 内存管理实验 内存管理简介 硬件设计 程序设计 程序流程图 程序解析 下载验证 SD 卡实验 ...

  9. stm32使用hal库向电脑发送数据

    文章目录 USART 几种协议(可跳过) 实验目的与材料 实验目的 实验材料 软件 硬件连接 HAL库项目创建 1.点击ACCESS TO MCU SELECTOR 2.选择芯片类型 3.可视化配置U ...

  10. 【STM32】HAL库 STM32CubeMX教程九---ADC

    前言: 本系列教程将 对应外设原理,HAL库与STM32CubeMX结合在一起讲解,使您可以更快速的学会各个模块的使用 所用工具: 1.芯片: STM32F407ZET6/ STM32F103ZET6 ...

最新文章

  1. 华为抢购助手_就一句话,华为这个智慧办公新物种“有点东西”!
  2. 使用OpenVAS 9进行漏洞扫描
  3. Struts2 Result详解
  4. HDU-4850 Wow! Such String!(模拟) ——26行代码AC
  5. bzoj4448 SCOI2015 情报传递 message
  6. 网站白痴的 ASP.NET website 学习日志
  7. 雷军:若小米9首月供货不足百万 就去工厂拧螺丝
  8. 数据库基础 新手入门(一)
  9. 股票历史数据下载工具_免费在线批量下载股票历史数据工具
  10. 【opencv4】——fatal error: opencv2/opencv.hpp: No such file or directory #include <opencv2/opencv.hpp>
  11. matlab+dds正弦表,FPGA模拟DDS正弦波信号源1
  12. 成功绩效评估面谈的八个步骤
  13. Android 使用google地图通过经纬度获取详细地址
  14. 阴历日期和阳历日期互相转换(java)
  15. c++ insert
  16. 使用Navicat导入.sql文件(适合新手)
  17. CleanMyMac序列号密钥如何清理苹果电脑内存?
  18. HTML 页面的生命周期、HTML 事件
  19. arcmap坐标点生成线和面
  20. 像中文的罗马音字体复制_罗马音大全可复制app中文下载

热门文章

  1. Vue cli3使用vue-awesome-swiper
  2. MCU——简易单片机按键驱动程序分析
  3. 【数据库原理实验(openGauss)】创建数据库、表和索引
  4. Mysql分区表的使用
  5. java 哈希表入门
  6. flink API之Sink入门
  7. Gedit汇编语法高亮设置
  8. 架构师成长之旅_第一篇:插件与框架是什么?
  9. iOS之app审核遭遇5.2.1的条例被拒
  10. 1051: 平方根的和