2.1 STM32F103C8T6最小系统板的固件开发环境

       STM32F103C8T6的开发板有很多,我们称板上资源最少的开发板为最小系统板,注意,这是板上,不是片上,如图。

       通用计算机一般拥有较为丰富和强大的资源,具有标准和输入设备和输出设备。因此它既是桌面应用系统的运行平台又是开发平台。而嵌入式系统通常是一个资源受限的系统,其运算能力相对较弱,存储能力有限,具有各种各样的输入和输出设备,有的甚至没有显示设备,很难直接在嵌入式系统的硬件上进行应用开发。

       因此,与通用计算机不同,嵌入式系统的开发平台一般并不是最终的运行平台,构建嵌入式系统的开发环境是进行嵌入式系统开发的基础和前提。

       嵌入式系统的固件开发环境称为交叉开发环境,由宿主机、宿主机上的嵌入式固件开发工具,目标机、烧录器以及它们之间的连接构成。

       1.宿主机

       宿主机是用于嵌入式系统开发的计算机,一般为通用的PC或工作站,是嵌入式开发工具的运行环境。它通常拥有丰富的硬件资源和软件资源,为嵌入式系统开发提供全过程的支持。

       2.嵌入式固件开发工具

       常见的嵌入式固件开发工具有Keil MDK-ARM、STM32CubelDE、IAR Embedded Workbench。

       主要介绍使用Keil MDK-ARM这款软件,编写C语言代码来开发STM32F103C8T6最小系统板。

       3.目标机

       目标机是所开发的嵌入式系统。

       4.烧录器

       烧录器的主要作用是将固件烧录到ROM类型中,烧录器一边通过USB(Universal Serial Bus,通用串行总线)接口连接电脑,一边连接到目标机接口上(如JTAG接口、SWD接口、SWIM接口),以实现烧录。

       以下为常见的烧录器。

       1)ST-LINK烧录器

       市面上,目前这种烧录器分为V1、V2和V3版本,目前常用的是V2版本,经典的ST-LINK V2烧录器是以下两款,均支持三种接口,JTAG接口、SWD接口和SWIM接口。

        4.烧录连接

       宿主机上生成的可执行映像文件,也就是固件,需要通过烧录器连接目标机,目标及与烧录器连接的接口一般为JTAG接口、SWD接口、串口。使用STM32F103C8T6相关的开发板时,烧录所使用的接口常见为SWD接口。

       1)JTAG接口

       有一个团队,叫Joint Test Action Group,它成立于1985年,他们创造了这个接口,并给这个接口取名为JTAG接口,在1990年IEEE觉得一切妥当,于是发布了IEEE Standard 1149.1-1990。该标准定义了JTAG接口的基本引脚,但并没有限制必须只有这些引脚。为了保持与标准的兼容性,同时满足更广泛的应用需求,设计者可能会在基本引脚的基础上增加额外的引脚。常见的是10引脚的,14引脚的,16引脚的和20引脚的JTAG接口。

       2)SWD接口

       SWD串行调试(Serial Wire Debug),是ARM内核调试器的一种通信协议。相比于JTAG协议,占用更少的端口资源。一般只用四个接口即可:SWDIO、SWCLK、VCC、GND。

       3)SWIM接口

       SWIM(Single Wire Interface Module)是一种由STMicroelectronics(意法半导体)开发的单线调试接口。它用于与ST微控制器的内部调试模块进行通信,支持编程、调试和测试操作。SWIM接口的特点是使用单根线(通常是微控制器的某个I/O引脚)来进行所有通信,从而简化了硬件设计和布线。它是一种替代JTAG和SWD(Serial Wire Debug)接口的选项,尤其是在资源受限的嵌入式应用中。  

       5.交叉开发环境小节

       综上所述,嵌入式系统的固件开发环境中,宿主机和目标机是不同的机器。嵌入式固件开发在宿主机上使用嵌入式开发工具进行编写、编译、链接和定位,生成可在目标机上执行的二进制代码,然后通过烧录器下载到目标机上。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值