硬件有最小系统,指微控制器或处理器能够正常启动和运行所需的最基本电路集合,核心包括电源、时钟、复位电路和处理器本身。软件其实也有类似的概念,如果要生成指定MCU对应的下载程序,最简单情况下,其实只需要芯片启动文件,空的main函数。然后再点击Keil5 Rebuild函数,这样你就会有一个软件最小系统的例子。
为了能够创建这样的软件最小系统,用户需要提前下载设备支持包(Device Family Pack,DFP)。以MSPM0L222x系列芯片为例,为了能够创建该系列芯片工程,用户需要先下载TexasInstruments.MSPM0L_DFP.1.2.1.pack。然后,双击支持包,系统会自动把支持包安装在Keil5环境需要的位置。安装完成后,启动Keil5,系统自动加载新的DFP。Project->new uVison project...,选择工程保存位置,输入芯片型号,确认芯片型号,点击OK。由于只是生成软件最小系统,所以不需要选择第二张图片的任何选项。然后你就创建了该系列芯片的空工程拥有了工程启动文件MSPM0.uvprojx(MSPM0是我输入的名称)。接着修改target下的分组名称,我随意给了个main的名字,然后在分组下面添加芯片启动文件、包含空的main()函数的main.c。


双击组名main,可以向main分组中添加工程目录已存在文件。

点击rebuild,最下方的Build Output窗口会输出编译过程提示信息。生成成功后,双击工程名target_1会打开map文件。map文件包含中断向量表、系统初始化函数信息、函数及变量存储位置等。博主我没有勾选Target下的Use Microlib选项,所以生成文件会大一些。存储布局我选择从Target选项卡加载(Linker->Use Memory Layout from Target Dialog),而不是从分散文件。

输出信息展示在Output选项卡,包含输出目录、输出内容、输出文件名称如Output选项卡所示。

如果想要配置外设功能,需要手动添加相应外设驱动,如果涉及到中断,还需要添加CMSIS对应库。