第一章 stm32 cubemx基础配置实验以及proteus 8的使用
文章目录
前言
STM32CubeMX是ST发布的一款芯片配置工具,通过亲和的图形界面生成初始化代码,可以大大减轻开发工作,时间和费用。本章描述了stm32 cubemx的基础配置以及利用Proteus进行仿真的简单介绍。
一、STM32 Cubemx基础配置实验
Cubemx版本:5.3.0
实验平台:STM32 F103
实验内容:使用任意两个GPI/O口点亮两个LED灯。
二、配置步骤
1.打开Cubemx 新建工程
2. 选中芯片
我这里用到的是stm32 F103C6Tx,选中后双击打开。
3.页面介绍
4.配置系统核心
1)sys中,选好调试方式,DEBUG中选中Serial Wire,实际上板子测试时会占用PA13和PA14两个I/O口,用作下载或者调试。
2)RCC时钟,晶振选择,选择HSE(外部高速时钟)为Crystal/Ceramic Resonator,外部低速时钟(LSE)可有可无。
3)时钟配置,记录系统时钟频率,这里是72M用作仿真时选择芯片的晶振频率
4)其他配置此工程不用,暂不配置。
5.配置引脚
点击想要用到的引脚,鼠标左击选择GPIO_OUTPUT,我用到了PA4、PA5(自选)两个引脚,其他配置为cubemx默认状态即可。
6.生成工程
选择Project Manager,输入工程名字,选择工程路径,注意不要出现中文,IDE选择MDK5.
在Code Generator中,我选择复制所有库函数(可以选择第二、三项可减少生成以及编译时间),勾选Generated periphera initialization as a pair of ‘.c/.h’ files per IP,可以将外设功能处理为独立的C文件和头文件。生成代码后会自动打开keil 5。
三、找到主函数,添加程序,编译,生成HEX文件
找到主函数,点击编译,第一次编译较慢,选择如图标所示生成HEX文件。之后可将HEX文件烧写到Proteus中进行仿真,或者烧写到stm32板子中进行运行。
在gpio.c中可以找到cubemx生成的初始化函数,添加简单的跑马灯函数,编译。
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4, GPIO_PIN_SET);
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_RESET);
HAL_Delay(100);
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4, GPIO_PIN_RESET);
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_SET);
HAL_Delay(100);
`
四、Proteus仿真或者烧录可直接看到效果
1)利用Proteus进行仿真,新建工程,添加工程名字,路径(注意不要有中文),然后一直点Next,直至生成文件,打开工程。
2)添加需要用到的元器件,双击即可添加,需要用到stm32 F103的芯片,电阻(RES),LED灯。由于Proteus软件自带最小系统以及供电,这里直接画出原理图可使用,不需要再画最小系统电路。
3)添加元器件并连接后如图所示
4)选择Design,选择Power Rail Configuration,将如图所示中的VDDA添加到VDD中,VSSA添加到GND中。
5)选择HEX文件,选择晶振频率72M,点击OK。
6)运行即可看到两个小灯呈现跑马灯方式亮灭。
五、Proteus仿真的补充说明
左下角红框中的时间为仿真实时运行时间,仿真时间相比实际时间较慢,在System中,Set Animation Options可以修改仿真速度。
总结
上就是今天要讲的内容,本文仅仅简单介绍了stm32 cubemx的基础配置,以及Proteus的简单仿真。
来源:oschina
链接:https://my.oschina.net/u/4333379/blog/4504884