STM32F103RCT6 基于STM32Cube_FW_F1_V1.8.0库建立工程模板

1、下载STM32Cube_FW_F1_V1.8.0库文件

官方下载地址:

https://www.st.com/content/st_com/en/products/embedded-software/mcu-mpu-embedded-software/stm32-embedded-software/stm32cube-mcu-mpu-packages/stm32cubef1.html

官方下载地址需要注册,也可以在下面百度网盘下载:

链接: https://pan.baidu.com/s/1Xbs2_v_AdSL52KA-J1fgLg 提取码: 7y6f

2、建立工程文件夹

新建工程目录HAL_Template,在工程目录HAL_Template内新建CORE、USER、OBJ、HAL_LIB四个文件夹;

CORE            存放内核头文件和启动文件

HAL_LIB        存放外设库文件

OBJ                存放编译好的HEX文件

USER             存放自己编写的程序文件和STM32的一般头文件、顶层头文件、重要c文件

3、复制文件

①:将STM32Cube_FW_F1_V1.8.0\Drivers\CMSIS\Device\ST\STM32F1xx\Source\Templates\arm文件夹下的startup_stm32f103xe.s和STM32Cube_FW_F1_V1.8.0\Drivers\CMSIS\Include文件夹下的cmsis_armcc.h、core_cm3.h、cmsis_version.h、cmsis_compiler.h文件,共五个文件复制到CORE文件夹下。

②:将STM32Cube_FW_F1_V1.8.0\Drivers\STM32F1xx_HAL_Driver文件夹下Inc、Src两个文件夹全部复制到HAL_LIB文件夹下。

③:将STM32Cube_FW_F1_V1.8.0\Drivers\CMSIS\Device\ST\STM32F1xx\Include文件夹下的stm32f1xx.h、stm32f103xe.h、system_stm32f1xx.h三个头文件复制到USER目录下。

④:将STM32Cube_FW_F1_V1.8.0\Projects\STM32VL-Discovery\Templates\Inc文件夹下的main.h、stm32f1xx_hal_conf.h、stm32f1xx_it.h三个头文件复制到USER目录下。

⑤:将STM32Cube_FW_F1_V1.8.0\Projects\STM32VL-Discovery\Templates\Src文件夹下的main.c、stm32f1xx_hal_msp.c、stm32f1xx_it.c、system_stm32f1xx.c四个头文件复制到USER目录下。

4、在MDK-5中新建工程,工程文件保存到USER目录下。

选择芯片型号——>确定

5、打开Manage Project Items窗口,进行如下设置

注意:在加入文件值CORE目录要在最下边,选成所有文件类型。

           HAL_LIB加入文件是HAL_LIB目录下src目录中的所有文件。

           USER加入USER目录下的所有.c的文件。

6、点击魔术棒按钮打开设置对话框,按照如下设置

Include Paths选择如下三个文件夹

7、编译工程,出现如下错误

处理方法:打开main.h文件,删除#include "stm32vl_discovery.h"这一行。

stm32vl_discovery.h  好像是针对开发板的头文件

重新编译报错如下:

是重复定义错误,处理方法如下:

①去除HAL_LIB\Src目录下stm32f1xx_hal_timebase_tim_template.c文件的只读属性然后打开,删除或注释掉HAL_StatusTypeDef HAL_InitTick(uint32_t TickPriority)、void HAL_SuspendTick(void)、void HAL_ResumeTick(void)三个函数。

②去除HAL_LIB\Src目录下stm32f1xx_hal_msp_template.c文件的只读属性并打开文件,删除或注释掉void HAL_MspInit(void)和void HAL_MspDeInit(void)函数。

 

 

最后编译,没有报错和警告。

一直在网上找相关的资料,大部分是1.7.0版本的资料,仿照着写一下,没有写程序验证,随后试一下,如果有问题随后修改。

标记一下:2019年11月20日21点发稿

 

  • 4
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: demo_stm32f103rct6_8bit 是指一个使用STM32F103RCT6芯片的演示程序。 STM32F103RCT6是一款32位的ARM Cortex-M3内核微控制器,由STMicroelectronics(意法半导体)公司生产。它运行在72MHz频率下,并具有64KB的Flash存储器和20KB的SRAM。该芯片支持8位通信,可以与其他设备进行串行通信,允许数据传输和控制操作。 demo_stm32f103rct6_8bit是一个演示程序,用来展示STM32F103RCT6芯片的功能和特性。这个演示程序可能包含一些基本的操作,如GPIO引脚的控制、ADC(模数转换器)的使用、串口通信等。通过运行这个演示程序,可以对STM32F103RCT6的功能有一个初步的了解,并且可以在开发过程中参考这个演示程序。 此外,demo_stm32f103rct6_8bit也可以作为一个学习资源和参考,帮助初学者了解和学习如何使用STM32F103RCT6芯片进行开发。它可以提供一些示例代码和使用说明,帮助开发者学习如何使用不同的外设和功能。 总之,demo_stm32f103rct6_8bit是一个使用STM32F103RCT6芯片的演示程序,用于展示芯片的功能和特性,并帮助开发者学习如何使用这个芯片进行开发。 ### 回答2: Demo_stm32f103rct6_8bit是指一个使用了STM32F103RCT6微控制器的8位演示程序。 STM32F103RCT6是一款由STMicroelectronics设计的高性能ARM Cortex-M3内核微控制器。它具有高性能、低功耗和丰富的外设集成,是一款广泛应用于各种嵌入式系统中的微控制器。 Demo_stm32f103rct6_8bit是为了展示STM32F103RCT6微控制器的性能和功能而开发的一个演示程序。由于它是一个8位演示程序,它可能主要演示了STM32F103RCT6微控制器的低位处理能力和其在处理8位数据时的高效性。 通过Demo_stm32f103rct6_8bit,开发人员和用户可以了解到STM32F103RCT6微控制器在处理8位数据和运行8位应用程序时的能力。它可能包含了一些基本的8位操作指令、逻辑运算、位移操作等,以展示该微控制器在处理8位数据时的灵活性和高效性。 此外,Demo_stm32f103rct6_8bit还可能包含一些与外设的交互示例,例如与LED、按键或LCD显示屏等的连接和控制。这些外设的示例可以展示STM32F103RCT6微控制器的各种外设接口和通信能力。 总之,Demo_stm32f103rct6_8bit是一个旨在展示STM32F103RCT6微控制器在处理8位数据时的能力和功能的演示程序。通过它,可以更好地理解STM32F103RCT6微控制器在8位应用程序开发中的应用和优势。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值