打印
[应用相关]

STM32的介绍及MDK

[复制链接]
楼主: qn7a12
手机看帖
扫描二维码
随时随地手机跟帖
41
qn7a12|  楼主 | 2023-4-30 12:11 | 只看该作者 |只看大图 回帖奖励 |倒序浏览
系统类
IRQ: interrupt request 中断请求

FIQ: fast interrupt request 快速中断请求

SW:software 软件

SWI: software interrupt 软中断

RO:read only 只读(部分)

RW:read write 读写(部分)

ZI:zero initial 零初始化(部分)

BSS:Block Started by Symbol 以符号开始的块(未初始化数据段)

使用特权

评论回复
42
qn7a12|  楼主 | 2023-4-30 12:11 | 只看该作者
总线

Bus Matrix 总线矩阵

Bus Splitter 总线分割

AHB:advanced High-preformance Bus 高级高性能总线 AHB用于高性能、高时钟频率的系统结构,典型的应用如ARM核与系统内部的高速RAM、NAND FLASH、DMA、Bridge的连接。

APB:advanced peripheral bus 外围总线 APB用于连接外部设备,对性能要求不高,而考虑低功耗问题。

APB1: low speed APB 低速外围总线

APB2: high speed APB 高速外围总线

ASB :Advanced System Bus 系统总线 ASB是AHB的一种替代方案。

PPB: Private Peripheral Bus 专用外设总线

使用特权

评论回复
43
qn7a12|  楼主 | 2023-4-30 12:12 | 只看该作者
杂类
ALU:Arithmetic Logical Unit 算术逻辑单元

CLZ: count leading zero 前导零计数(指令)

SIMD: single instruction stream multiple data stream 单指令流,多数据流

VFP: vector floating point 矢量浮点运算

使用特权

评论回复
44
qn7a12|  楼主 | 2023-4-30 12:12 | 只看该作者
词汇/词组
Big Endian 大段存储模式

Little Endian 小段存储模式

context switch 任务切换(上下文切换)(CPU寄存器内容的切换)

task switch 任务切换

literal pool 数据缓冲池

使用特权

评论回复
45
qn7a12|  楼主 | 2023-4-30 12:14 | 只看该作者
STM32开发
固件库概念
FWlib叫固件库,FW的单词是Firmware.即固件的意思。STM32的固件库包含C文件和H文件,主要用于存放STM32的一些寄存器的定义及一些底层驱动函数

使用特权

评论回复
46
qn7a12|  楼主 | 2023-4-30 12:15 | 只看该作者
容量
对于 103 系列,主要是用其中 3 个启动文件
• startup_stm32f10x_ld.s: 适用于小容量 产品,小容量:FLASH≤32K
• startup_stm32f10x_md.s : 适用于中等容量产品,中容量:64K≤FLASH≤128K
• startup_stm32f10x_hd.s: 适用于大容量产品,大容量:256K≤FLASH

使用特权

评论回复
47
qn7a12|  楼主 | 2023-4-30 12:15 | 只看该作者
STM32启动模式
B0 B1 启动模式
0 X 主闪存存储器
1 0 系统存储器
1 1 内置SRAM

使用特权

评论回复
48
qn7a12|  楼主 | 2023-4-30 12:15 | 只看该作者
STM32软件
MDK介绍
MDK是keil公司开发的,为基于Cortex、arm7、arm9等处理器设备提供的一个完整开发环境。
MDK(Microcontroller Development Kit,字面的意思就是“微控制器开发套装”)。
MDK(Microcontroller Development Kit,字面的意思就是“微控制器开发套装”)是keil公司开发的,为基于Cortex、arm7、arm9等处理器设备提供的一个完整开发环境。
MDK源自德国的KEIL公司,是RealView MDK的简称。在全球MDK被超过10万的嵌入式开发工程师使用。

使用特权

评论回复
49
qn7a12|  楼主 | 2023-4-30 12:15 | 只看该作者
MDK5
MDK5向后兼容MDK4和MDK3等,以前的项目同样可以在MDK5上进行开发(但是头文件方面得全部自己添加)

MDK5同时加强了针对Cortex-M微控制器开发的支持,并且对传统的开发模式和界面进行升级
MDK5由两个部分组成:MDK Core和Software Packs。其中,Software Packs可以独立于工具链进行新芯片支持和中间库的升级。

使用特权

评论回复
50
qn7a12|  楼主 | 2023-4-30 12:15 | 只看该作者
MDK Core又分成四个部分:uVision IDE with Editor(编辑器),ARM C/C++ Compiler(编译器),Pack Installer(包安装器),uVision Debugger with Trace(调试跟踪器)。

使用特权

评论回复
51
qn7a12|  楼主 | 2023-4-30 12:16 | 只看该作者
Software Packs(包安装器)又分为:Device(芯片支持),CMSIS(ARM Cortex微控制器软件接口标准)和 Mdidleware(中间库)三个小部分
点击MDK5的Build Toolbar的最后一个图标调出Pack Installer,来进行各种组件的安装

使用特权

评论回复
52
qn7a12|  楼主 | 2023-4-30 13:56 | 只看该作者
MDK安装
o 在软件资料,1,软件,MDK5
o 无脑安装
• MDK5**
o File license Mangement 复制CID
o 在keygen**软件中运行CID 得到秘钥,记得选择32
o 用管理员身份打开MDK5,再次进入license Management 的New ID Code粘贴

使用特权

评论回复
53
qn7a12|  楼主 | 2023-4-30 13:56 | 只看该作者
生成HEX文件
点击魔术棒,进入配置菜单,选择 Output。然后勾上下三个选项。 其中 Create HEX file 是编译生成 hex 文件,Browser Information 是可以查看变量和函数定义。

使用特权

评论回复
54
qn7a12|  楼主 | 2023-4-30 13:57 | 只看该作者
支持包安装
要让MDK5支持STM32F407的开发,还要安装STM32F4的器件支持包:Keil.STM32F4xx_DFP .1.0.8.pack
包的下载地址是www.keil.com/dd2/pack 点击Install将会来此下载

可以下载软件,Keil.STM32F1xx_DFP.1.0.5.pack
双击安装

使用特权

评论回复
55
qn7a12|  楼主 | 2023-4-30 13:57 | 只看该作者
添加宏
因为 3.5 版本的库函数在配置和选择外设的时候通过宏定义来选择的,所以我们需要配置一个全局的宏定义变量。

使用特权

评论回复
56
qn7a12|  楼主 | 2023-4-30 13:57 | 只看该作者
c/c++界面,然后填写“STM32F10X_HD,USE_STDPERIPH_DRIVER”到 Define 输入框里面

使用特权

评论回复
57
qn7a12|  楼主 | 2023-4-30 13:57 | 只看该作者
如果你用的是中容量那么STM32F10X_HD 修改为 STM32F10X_MD,小容量修改为 STM32F10X_LD. 然后点击 OK。

使用特权

评论回复
58
qn7a12|  楼主 | 2023-4-30 13:57 | 只看该作者

使用特权

评论回复
59
qn7a12|  楼主 | 2023-4-30 13:57 | 只看该作者
添加头文件路径
对于任何一个工程,我们都需要把工程中引用到的所有头文件的路径都包含到进来 。
点击魔术棒 ,出来一个菜单,然后点击 c/c++选项.然后点击Include Paths 右边的按钮。
弹出一个添加 path 的对话框,然后我们将图上面的 3 个目录添加进去。

使用特权

评论回复
60
qn7a12|  楼主 | 2023-4-30 13:58 | 只看该作者
记住,keil 只会在一级目录查找,所以如果你的目录下面还有子目录,记得 path一定要定位到最后一级子目录。然后点击 OK.

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则