STM32RCT6程序移植到STM32C8T6 ..\..\Libraries\CMSIS\stm32f10x.h(298): error: #67: expected a "}"
-
如果你编写Keil时遇到 ..\..\Libraries\CMSIS\stm32f10x.h(298): error: #67: expected a "}"该错误,请往下看!
-
STM32RCT6与STM32C8T6区别
ST代表意法半导体,其中ARM有三个系列,分别是A、R、M,所以M表示的是这款芯片是M系列的,F是芯片的子系列,然后103代表是增强型系列(101是基本型),C是引脚数,(T-36脚、C-48脚、R-64脚、Z-144脚、E-100脚...) 、然后接下来的字母或者数字代表Flash容量(C-256K、D-348K、E-512K)在之后是封装描述(H表示BGA、T表示LQFP..),最后数字表示芯片的工业级温度范围6表示-40℃~85℃,具体下图所示
STM32F103RCT6程序可否使用STM32C8T6程序替换,直接看产品选型说明
STM32F103RCT6:256KB FLASH、6个基本定时器、1 个高级定时器、3 个 SPI、21个 I2C、5 个串口、2个 CAN、51 个通用 IO 口等
STM32F103C8T6:64KB FLASH、4个基本定时器、1 个高级定时器、2个 SPI、2个 I2C、3 个串口、1个 CAN、37 个通用 IO 口等
这两款芯片同属于F103系列,可以完成程序的移植工作,仅需修改少部分具体修改如下所示:
1、首先点击魔法棒
2、修改IC为STC32F103C8
RCT6 C8T6
3、修改晶振为8.0M
RCT6 C8T6
4、修改C/C++宏定义,由STM32F10X_HD,USE_STDPERIPH_DRIVER 改为 STM32F10X_MD,USE_STDPERIPH_DRIVER
RCT6 C8T6
5、替换启动文件,由startup_stm32f10x_hd.s修改为startup_stm32f10x_md.s
RCT6 C8T6
6、系统初始化时调用 SystemInit();
这一步做完以后才发现,程序好像跑的慢了10来倍,搜索原子论坛有人同样遇到相同的问题,在某位大神的回复中找到了答案,就是第6步:
补充关于如何配置stlink
RCT6 C8T6
参考文章:https://www.cnblogs.com/vonly/p/7411169.html