STM32 3.1.0库工程创建指南
需积分: 9 82 浏览量
更新于2024-10-19
收藏 335KB PDF 举报
"这篇资源是关于STM32微控制器使用3.1.0版本库的工程构建教程,适合初学者。教程中详细介绍了新库与旧版的不同,特别是启动文件、核心CM3文件以及系统初始化文件的变化,并提供了如何配置系统时钟和外部SRAM的方法。"
STM32是一款广泛应用的基于ARM Cortex-M3内核的微控制器,其库的更新旨在提供更好的性能和更多的功能。在3.1.0版本的库中,有一些显著的变化:
1. **启动文件(startup_stm32f10x_xx.s)**:与旧版2.0中的stm32f10x_vector.c文件类似,启动文件负责设置初始堆栈指针、中断向量表以及根据芯片类型进行不同配置。在创建工程时,应根据所选的STM32型号选择对应的启动文件。
2. **核心CM3文件(core_cm3.c)**:此文件包含针对不同调试器的汇编语言代码,用于读写内核寄存器。它的功能与2.0版本的cortexm3_macro.s文件相同。
3. **系统初始化文件(system_stm32f10x.c)**:这是3.1.0版本新增的,主要用于RCC(Reset and Clock Control)系统的初始化。用户可以通过修改预定义的宏来配置系统时钟,例如设置72MHz的系统时钟频率。同时,如果需要使用外部SRAM作为数据存储,可以打开#define DATA_IN_ExtSRAM宏,但仅限于大容量设备。
配置系统时钟的步骤如下:
- 定义外部高速时钟源HSE的频率(如HSE_Value)。
- 根据需求选择合适的系统时钟频率,通过修改#define SYSCLK_FREQ_xxx的值。
- 在主函数中调用SetSysClock()函数,该函数会根据设定自动配置RCC。
外部时钟定义至关重要,因为许多波特率计算和时钟设置依赖于这个参数。在stm32f10x.h头文件中,HSE_Value应该被正确地设置为实际的外部时钟频率。
在使用3.1.0库建立STM32工程时,开发者需要关注这些变化,以确保正确配置和初始化系统。此外,对于初学者来说,理解这些文件的作用和如何配置它们将有助于更好地理解和控制STM32的硬件资源,从而实现更高效、更精确的程序设计。
2011-11-28 上传
292 浏览量
点击了解资源详情
2009-09-15 上传
2022-09-20 上传
2022-09-23 上传
2010-06-11 上传
2012-06-21 上传
2022-07-11 上传
zhangdongqian
- 粉丝: 0
- 资源: 4
最新资源
- 前端协作项目:发布猜图游戏功能与待修复事项
- Spring框架REST服务开发实践指南
- ALU课设实现基础与高级运算功能
- 深入了解STK:C++音频信号处理综合工具套件
- 华中科技大学电信学院软件无线电实验资料汇总
- CGSN数据解析与集成验证工具集:Python和Shell脚本
- Java实现的远程视频会议系统开发教程
- Change-OEM: 用Java修改Windows OEM信息与Logo
- cmnd:文本到远程API的桥接平台开发
- 解决BIOS刷写错误28:PRR.exe的应用与效果
- 深度学习对抗攻击库:adversarial_robustness_toolbox 1.10.0
- Win7系统CP2102驱动下载与安装指南
- 深入理解Java中的函数式编程技巧
- GY-906 MLX90614ESF传感器模块温度采集应用资料
- Adversarial Robustness Toolbox 1.15.1 工具包安装教程
- GNU Radio的供应商中立SDR开发包:gr-sdr介绍