用户工具

站点工具


icore3l_arm_5

这是本文档旧的修订版!


银杏科技有限公司旗下技术文档发布平台
技术支持电话0379-69926675-801
技术支持邮件Gingko@vip.163.com
技术论坛http://www.eeschool.org
版本 日期 作者 修改内容
V1.0 2020-11-06 gingko 初次建立

STM32CubeMX教程五——UART通讯实验

1.在主界面选择File–>New Project或者直接点击ACCEE TO MCU SELECTOR 2.出现芯片型号选择,搜索自己芯片的型号,双击型号,或者点击Start Project进入配置 在搜索栏的下面,提供的各 种查找方式,可以选择芯片内核,型号等等,可以帮助你查找芯片。本实验选取的芯片型号为:STM32F429IGHx。 3.配置RCC,使用外部时钟源 4.配置调试引脚 5.将LED对应的3个引脚(PH14,PI3,PI4)设置为GPIO_Output 6.引脚模式配置 7.设置串口

 在NVIC Settings一栏使能接收中断

8.时钟源设置,选择外部高速时钟源,配置为最大主频 9.工程文件的设置, 这里就是工程的各种配置,我们只用到有限几个,其他的默认即可。IDE我们使用的是 MDK V5.27。 10.点击Code Generator,进行进一步配置

  • Copy all used libraries into the project folder
  • 将HAL库的所有.C和.H都复制到所建工程中
    • 优点:这样如果后续需要新增其他外设又可能不再用STM32CubeMX的时候便会很方便
    • 缺点:体积大,编译时间很长
  • Copy only the necessary library files
  • 只复制所需要的.C和.H(推荐)
    • 优点:体积相对小,编译时间短,并且工程可复制拷贝
    • 缺点:新增外设时需要重新用STM32CubeMX导入
  • Add necessary library files as reference in the toolchain project configuration file
  • 不复制文件,直接从软件包存放位置导入.C和.H
  • 优点:体积小,比较节约硬盘空间
  • 缺点:复制到其他电脑上或者软件包位置改变,就需要修改相对应的路径自行选择方式即可

11.然后点击GENERATE CODE 创建工程 创建成功,打开工程。



实验五:UART通信实验——通过命令控制LED

一、实验目的与意义

  1. 了解STM32 GPIO结构
  2. 了解STM32 GPIO特征
  3. 掌握USART的使用方法
  4. 掌握STM32 HAL库中USART属性的配置方法
  5. 掌握KEIL MDK 集成开发环境使用方法

二、实验设备及平台

  • iCore3L 双核心板
  • JLINK(或相同功能)仿真器
  • Micro USB线缆
  • Keil MDK 开发平台
  • STM32CubeMX开发平台
  • 装有WIN XP(及更高版本)系统的计算机

三、实验原理

UART简介

  • UART,即通用同步/异步串行接收/发送器,由时钟发生器、数据发送器和接收器三大部分组成。UART是一个全双工通用同步/异步串行收发模块,该接口是一个高度灵活的串行通信设备。STM32F429IGHx具有6个UART收发器,可使用相应的代码使能后使用。

UART特点

  • 全双工操作(相互独立的接收数据和发送数据)。
  • 同步操作时,可主机时钟同步,也可从机时钟同步。
  • 支持8和9位数据位,1或2位停止位的串行数据桢结构。
  • 由硬件支持的奇偶校验位发生和检验。
  • 数据溢出检测。
  • 帧错误检测。
  • 包括错误起始位的检测噪声滤波器和数字低通滤波器。
  • 三个完全独立的中断,TX发送完成、TX发送数据寄存器空、RX接收完成。
  • 支持多机通信模式。
  • 支持倍速异步通信模式。

UART时序

  • 空闲位:高电平。
  • 启动位:一个低电平。
  • 字符数据:可以选择8和9位数据位。
  • 奇偶校验位:根据需要选择是否进行校验。
  • 停止位:一个高电平。
  • 本试验使用的芯片STM32F429IGHx,使用USART为USART1,引脚位PB6和PB7,经过串口转USB芯片CH340转换后,可通过USB接口与计算机通讯。计算机安装 CH340驱动后,可通过串口工具来接收串口发送的数据和向串口发送给数据。其中ARM上的PB3脚为USART1_RX, ARM上的PA15脚为USART1_TX。用串口工具打开iCore3L对应的端口,波特率设为115200,发送相应的命令,便可以控制ARM LED的亮灭情况。

串口命令如下表:

icore3l_arm_5.1605323714.txt.gz · 最后更改: 2020/11/14 11:15 由 zgf