💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
* 导师视频讲解:[去听课](https://www.bilibili.com/video/BV1Cb4y1171H?p=15) >[success] **技术支持说明** > 1.**客服**提供简单的技术支持,一般自主学习为主 > 2.可到官方问答社区中提问:[**去提问**](https://bbs.csdn.net/forums/nb-iot) > 3.工程师**会尽快**解答社区问题,但他们是一线开发,【**难以保证**】解答时效,解答辛苦,感谢理解! <br/> 上节课讲解了如何创建工程,但其实ST官方已经创建好一个模板工程,开发者只需要移植该模板工程并进行必要配置即可。 <br/> ## **下载ST的标准库** 本节课需要使用ST标准库,其所在目录: * 《STM32+无线通信开发指南》配套软件工具\6. STM32F0Stdlib.zip >[info] 如您还没下载,可前往下载页:[前往](2384616) <br/> ## **官方模板工程的移植** 创建一个用于存放工程文件的文件夹,并命名为Project。笔者也创建的了一个Project文件夹,在配套资料的如下目录中: ``` //1.STM32开发/2.3 官方标准工程模板/Project ``` <br/> 在标准库中的目录: ``` STM32F0Stdlib\en.stm32f0_stdperiph_lib\STM32F0xx_StdPeriph_Lib_V1.5.0\Projects ``` 找到官方模板工程,如图所示。 ![](https://img.kancloud.cn/e6/a9/e6a90276a97d8a62a7bfb066bd623faf_620x142.png =300x) <br/> 把官方模板工程中的以下内容复制到刚才创建的 Project 目录中,如图所示。 ![](https://img.kancloud.cn/57/f7/57f75beab3047bc51ce38cbc032bceab_656x325.png =500x) <br/> 复制后的结果如图所示。 ![](https://img.kancloud.cn/8a/6a/8a6a5efd8c00ded8d7bc7598d653b3e1_318x300.png =200x) <br/> 接着,把标准库中的 Libraries 目录也复制过来,如图所示。 ![](https://img.kancloud.cn/30/82/3082bbf32c99ede31ab226cdc4363bfe_337x329.png =200x) <br/> 打开MDK-ARM 目录,打开工程文件 ![](https://img.kancloud.cn/07/1b/071ba672ecf628573ba4bf7fcaf4e06d_320x199.png =200x) <br/> 打开文件管理器 ![](https://img.kancloud.cn/8e/65/8e65063a2c4a2c7d53c8435f139c1294_861x382.png =500x) <br/> 选择芯片型号 STM32F030 ![](https://img.kancloud.cn/ca/2b/ca2ba2b73c231291e827d1d3585f834f_803x599.png =500x) <br/> 除 STM32F030 外,把其它型号全部删除 ![](https://img.kancloud.cn/a3/0f/a30f01ab3b5d71b5e06464dba99a90e4_803x599.png =500x) ### 删除方法如下: * 选中对象,然后点击红色“Delete” ![](https://img.kancloud.cn/d0/0b/d00bf2fa957782625eace24622e566a8_803x602.png =400x) * 删除完成 ![](https://img.kancloud.cn/c8/71/c871c1a2ee5c0a14628f5017994e332f_803x602.png =400x) <br/> 删除CMSIS中的所有文件 * 选中CMSIS中的所有文件,并点击上方的交叉图标 ![](https://img.kancloud.cn/ea/cd/eacd5a4cdf6cd3a1732556c9333de38e_803x599.png =300x) * 删除完成 ![](https://img.kancloud.cn/5c/80/5c804ffed36e125d5c570d788d843e8d_803x601.png =300x) <br/> 给CMSIS重新新添加文件 * 点击Add Files ![](https://img.kancloud.cn/23/a3/23a39cb77f2fc6f14261336b06f39355_803x601.png =400x) ### * 返回上一级目录 ![](https://img.kancloud.cn/4d/91/4d917c9843620222f6d57f73ee42ed3d_911x649.png =400x) ### * 进入 Libraries 目录 ![](https://img.kancloud.cn/90/0b/900b53b3a4c750fef26cca38da4a5392_911x646.png =400x) ### * 进入 CMSIS 目录 ![](https://img.kancloud.cn/b7/af/b7afc385424cdf0e73280eefe691b15d_911x646.png =400x) ### * 进入 Device 目录 ![](https://img.kancloud.cn/20/89/20893db4f967f155ba61de332e18c8da_911x646.png =400x) ### * 进入 ST 目录 ![](https://img.kancloud.cn/88/d8/88d8d82a408713fd3e6cc2e725ecba6c_911x646.png =400x) ### * 进入 STM32F0xx 目录 ![](https://img.kancloud.cn/4d/e1/4de111e114ef52ccaa7fa40fbf44d759_911x646.png =400x) ### * 进入 Source 目录 ![](https://img.kancloud.cn/a3/36/a33626ad7eed9483deede8bf72f5859e_911x646.png =400x) ### * 进入Templates 目录 ![](https://img.kancloud.cn/fa/78/fa7862e85f9bf44df0737af71ec5b4d5_911x646.png =400x) ### * 添加 system_stm32f0xx.c文件 ![](https://img.kancloud.cn/f1/d3/f1d3e8087ed3b62903bdbf3cde474165_911x646.png =400x) <br/> * 添加下一个文件,进入arm目录 ![](https://img.kancloud.cn/70/dc/70dc3a36685c4018257c02a4401b3285_911x646.png =400x) ### * 选择startup_stm32f030.s 文件,然后点击Add,接着点击Close,如图所示。 ![](https://img.kancloud.cn/df/d8/dfd85cc84b8a290c3b03bf00ee18971f_511x370.png =400x) >[warning] 在选择文件前,需要按如图所示把文件过滤器更改为Asm Source file(\*.s\*;\*.src;\*.\*.a\*) ### * 添加完成,如图所示。 ![](https://img.kancloud.cn/c4/81/c48172e4cfedaac9b332ba8f4bdc9588_803x603.png =400x) <br/> 删除 StdPeriph_Driver 下所有文件 ![](https://img.kancloud.cn/72/f2/72f25bba7e9a285d5d658b275f906182_803x603.png =500x) ### 删除完成,点击 "OK" ![](https://img.kancloud.cn/94/34/9434b43c2a70e7c7e93dad7dc0cea03c_803x601.png =500x) <br/> <br/> <br/> ## **官方模板工程的配置** 点击魔法棒 ![](https://img.kancloud.cn/0b/3b/0b3b98f40751f7a33365286db921dc4f_649x329.png =500x) <br/> 点击Device选项卡,选择 STM32F030F4Px ![](https://img.kancloud.cn/35/ee/35ee88830f01c67254533e04f6d31f73_800x601.png =500x) <br/> 点击Output选项卡,勾选Create Hex File ![](https://img.kancloud.cn/c5/53/c553ea25d7296f447c5ea1ba6cfff4ae_800x603.png =500x) <br/> 点击C/C++选项卡,在 "C/C++" 选项卡,进行如图所示设置,并且点击OK ![](https://img.kancloud.cn/8e/3c/8e3cd2616ffa7904e345cb11b39395f8_800x604.png =500x) ### 其中,Define内容: ``` USE_STDPERIPH_DRIVER,STM32F030 ``` Include Paths内容: ``` ..\;..\Libraries\CMSIS\Include;..\Libraries\CMSIS\Device\ST\STM32F0xx\Include;..\Libraries\STM32F0xx_StdPeriph_Driver\inc;..\Libraries\STM32F0xx_CPAL_Driver\inc ``` ### 至此,我们已经移植和配置完成,接下来编译一下模板工程。 <br/> ## **编译模板工程** 点击Rebuild,编译整个工程 ![](https://img.kancloud.cn/d8/47/d847b0b00d8216fa3325406e5a9c6ae9_641x326.png =500x) <br/> 如上述操作正确,则编译成功 ![](https://img.kancloud.cn/2c/ee/2ceee08d557d58c99c892397e06bd7f9_936x772.png =500x) <br/> <br/> ## **商务合作** 如有以下需求,可扫码添加管理员好友,注明“**商务合作**” * 项目定制开发,技术范围:**NB-IoT**、**CATn(4G)**、**WiFi**、**ZigBee**、**BLE Mesh**以及**STM32**、**嵌入式Linux**等; * 入驻平台,成为讲师; * 接项目赚外快; * 善学坊官网:[www.sxf-iot.com](https://www.sxf-iot.com/) ![](https://img.kancloud.cn/ca/73/ca739f92cab220a3059378642e3bd502_430x430.png =150x) (非商务合作**勿扰**,此处**非**技术支持)