第三章|新建STM32CubeMX工程生成keil工程和proteus联调仿真

STM32CubeMX工程生成keil工程和proteus联调仿真

  • [1 新建STM32CubeMX工程](#1 新建STM32CubeMX工程)
    • [1.1 新建工程](#1.1 新建工程)
    • [1.2 设置晶振](#1.2 设置晶振)
    • [1.3 配置时钟频率](#1.3 配置时钟频率)
    • [1.4 设置引脚](#1.4 设置引脚)
    • [1.5 工程配置](#1.5 工程配置)
    • [1.6 生成MDK工程](#1.6 生成MDK工程)
    • [1.7 编写代码](#1.7 编写代码)
  • [1. **Proteus仿真联合调试**](#1. Proteus仿真联合调试)

1 新建STM32CubeMX工程

软件下载安装教程

c 复制代码
https://docs.qq.com/doc/DS1JUV29DemJ6Unpj 

1.1 新建工程

双击打开STM32CubeMX,点击"ACCESS TO MCU SELECTOR"新建工程。

在弹出的"New Project from a MCU/MPU"窗口"Commercial Part Number"中填入"STM32F103C6",在右半边的选项中选择对应的STM32芯片,点击"Start Project"。

自动跳转到下面的界面。

1.2 设置晶振

配置晶振:点击"Pinout & Configuration",找到"RCC",将"HSE"设置为"Crystal/Ceramic Resonator"。

选完如下图所示

1.3 配置时钟频率

点击"Clock Configuration",可根据自己的需要配置时钟频率,图中为两个可以参考的例子。

外部高速晶振:

内部高速晶振

1.4 设置引脚

设置PA0引脚做输出,点亮LED灯。

1.5 工程配置

点击"Project Manager",配置工程名和保存路径(路径需不包含中文),在"Toolchain / IDE"中选择"MDK-ARM V5"。

点击"Code Generator",按照图中所示配置。

1.6 生成MDK工程

最后点击"GENERATE CODE"即可生成工程,点击"Open Project",会自动使用Keil打开工程。如果文件路径带中文导致报错,打开工程保存找到Keil

1.7 编写代码

代码写在while函数USER CODE BEGIN

USER CODE END之间

编译代码生成hex文件。一般保存在MDK-ARM(工程名称)路径下

出现以下两个消息标明程序编译正常:

FromELF: creating hex file...

  • 0 Error(s), 0 Warning(s).

1. Proteus仿真联合调试

proteus新建工程以及proteus工程下载链接

在Proteus中,双击STM32F103C6芯片,打开"编辑元件"窗口。

点击文件夹图标,配置"Program File"路径为刚刚生成的HEX文件。

配置"Crystal Frequency"为默认(Default)或者8Mhz即可,点击确认。

点击页面左下角的运行按钮,可以看到程序开始运行,且没有报错,表示联合调试成功。

相关推荐
虎王物联7 小时前
STM32 HAL库串口DMA空闲中断:高效接收不定长Modbus数据帧
stm32·单片机·嵌入式硬件·dma·modbus
自小吃多7 小时前
DXF文件导入与PCB板框定义笔记
笔记·嵌入式硬件
单片机仿真设计10 小时前
【proteus仿真】基于 STC89C52 单片机家用智能台灯设计(仿真图+程序)
stm32·单片机·嵌入式硬件·proteus·毕设
2601_9507906810 小时前
深圳国产单片机厂商怎么选?技术能力与服务能力检查表
单片机·嵌入式硬件·国产mcu·芯片厂商·深圳单片机·单片机选型
笨笨饿12 小时前
#135_代码中的类型重定义艺术:从基础封装到函数类型设计
开发语言·stm32·单片机·嵌入式硬件·mcu·物联网·嵌入式实时数据库
西城微科方案开发13 小时前
高精度低功耗胎压计方案——气压表解决方案
单片机·嵌入式硬件
LavaLin0114 小时前
STM32H562RGT6 与 STM32F722RET6 规格对比
stm32
VALENIAN瓦伦尼安教学设备14 小时前
设备状态检测振动分析实训台案例分析
大数据·数据库·人工智能·嵌入式硬件·算法
米饭不加菜14 小时前
一些常用模块简介
经验分享·笔记·嵌入式硬件
佳児素花痴╮15 小时前
STM32U575RIT6(USART)学习
stm32·嵌入式硬件·学习