当前位置: 首页 > wzjs >正文

买下云服务器怎么做网站网页生成app

买下云服务器怎么做网站,网页生成app,做国外百科知识网站,专门做库存的网站文章目录 前言一、相同点内核与主频基础外设开发环境 二、不同点1. 存储容量2. 外设资源3. 封装与引脚 三、代码移植注意事项1. 内存与 Flash 限制Flash差异RAM调整 2. 外设差异外设缺失:GPIO 映射: 3. 中断向量表中断向量偏移 4. 时钟与总线配置APB分频…

文章目录

  • 前言
  • 一、相同点
    • 内核与主频
    • 基础外设
    • 开发环境
  • 二、不同点
    • 1. 存储容量
    • 2. 外设资源
    • 3. 封装与引脚
  • 三、代码移植注意事项
    • 1. 内存与 Flash 限制
      • Flash差异
      • RAM调整
    • 2. 外设差异
      • 外设缺失:
      • GPIO 映射:
    • 3. 中断向量表
      • 中断向量偏移
    • 4. 时钟与总线配置
      • APB分频器
    • 5. 启动文件与链接脚本
      • 启动文件选择:
      • 链接脚本修改
    • 6. 库函数与宏定义
      • 设备宏定义:
      • 外设使能宏
  • 四、移植步骤示例
    • 更换启动文件
    • 修改设备宏
    • 调整链接脚本
    • 检查外设代码
    • 验证GPIO配置
  • 五、总结
    • 兼容性
    • 调试工具
    • 官方文档


前言

STM32F103C8T6 和 STM32F103RC6 同属 STM32F103 系列,基于 ARM Cortex-M3 内核,但在资源、封装和外设上存在差异。


一、相同点

内核与主频

均采用 ARM Cortex-M3 核心,最高主频 72 MHz
指令集中断控制器(NVIC)系统时钟配置(SYSCLK)完全兼容。

基础外设

支持通用外设:GPIOADC(12 位)定时器(TIM)USARTSPII2C 等。

使用相同的标准外设库(如 STM32 Standard Peripheral Library)或 HAL 库开发

开发环境

支持 Keil MDKIARSTM32CubeIDE 等工具链,代码框架一致。

二、不同点

1. 存储容量

型号 Flash RAM
STM32F103C8T6 64 KB 20 KB
STM32F103RC6 256 KB 48 KB

2. 外设资源

外设 STM32F103C8T6 STM32F103RC6
GPIO 数量 37 个 51 个
定时器 (TIM) 3 个通用定时器 4 个通用定时器 + 2 高级定时器
USART 3 个 5 个
SPI/I2C 2 个 SPI / 2 个 I2C 3 个 SPI / 2 个 I2C
USB/CAN 不支持 支持 USB 2.0 和 CAN
DMA 通道 7 通道 12 通道

3. 封装与引脚

型号 封装类型 引脚数
STM32F103C8T6 LQFP48 48
STM32F103RC6 LQFP64 64

三、代码移植注意事项

1. 内存与 Flash 限制

Flash差异

Flash 差异:若从 C8T6 移植到 RC6,需确保代码未超过原 64 KB 限制;反向移植时需检查代码是否超过 RC6 的 256 KB。

RAM调整

RAM 调整:动态内存分配(如堆栈大小)需根据目标芯片调整(startup_stm32f10x_xx.s 启动文件中需修改堆栈配置)。

2. 外设差异

外设缺失:

C8T6 无 USB/CAN,若代码中使用了这些外设,移植到 C8T6 需删除相关代码通过宏定义隔离

RC6 的**额外定时器(如 TIM4、TIM5)**或 USART4/USART5 需重新配置。

GPIO 映射:

因引脚数量不同,需检查硬件连接是否与目标芯片的 GPIO 引脚兼容(如 RC6 的 PB8 可能对应 C8T6 未引出的引脚)。

3. 中断向量表

中断向量偏移

中断向量偏移:Flash 容量不同可能导致中断向量表地址偏移,需在代码中确认 VECT_TAB_OFFSET 设置(通过 SystemInit() 函数或链接脚本调整)。

4. 时钟与总线配置

APB分频器

APB 分频器:若代码涉及 APB1/APB2 总线时钟分频,需确保目标芯片支持相同配置(通常无差异,但需验证)。

5. 启动文件与链接脚本

启动文件选择:

C8T6 使用 startup_stm32f10x_md.s(中等容量)
RC6 使用 startup_stm32f10x_hd.s(大容量)
需在工程中更换对应的启动文件。

链接脚本修改

链接脚本修改:调整 Flash 和 RAM 的地址范围(如 STM32F103C8T6_FLASH.ld 和 STM32F103RC6_FLASH.ld)。

6. 库函数与宏定义

设备宏定义:

在 stm32f10x.h 中需修改设备宏,例如:

// 对于 C8T6
#define STM32F10X_MD
// 对于 RC6
#define STM32F10X_HD

外设使能宏

外设使能宏:若使用 USB/CAN,需在 stm32f10x_conf.h 中开启 USE_USB_FSUSE_CAN

四、移植步骤示例

更换启动文件

更换启动文件:根据目标芯片选择 startup_stm32f10x_md.s 或 hd.s。

修改设备宏

修改设备宏:在编译器预定义宏中设置 STM32F10X_MD 或 STM32F10X_HD。

调整链接脚本

调整链接脚本:更新 Flash 和 RAM 的起始地址及大小。

检查外设代码

检查外设代码:删除或隔离目标芯片不支持的外设(如 USB/CAN)。

验证GPIO配置

验证 GPIO 配置:根据硬件原理图重新映射引脚

五、总结

兼容性

兼容性:基础功能代码(如 GPIO、USART)可无缝移植,但需注意外设和引脚差异

调试工具

调试工具:建议使用 ST-Link 配合 STM32CubeMX 快速验证引脚配置和时钟树

官方文档

官方文档:参考 **STM32F103xx 数据手册(DS5319)参考手册(RM0008)**获取详细差异信息。

通过以上步骤,可高效完成两款芯片间的代码移植,同时避免硬件资源不匹配问题。


http://www.dtcms.com/wzjs/79814.html

相关文章:

  • 做儿童文学的网站百度一下 你知道首页
  • 网站模板设计举例如何推广网站运营
  • 网架公司起名合肥seo排名收费
  • 网站死链怎么办精准推广
  • 网站制作报价ihanshi房地产网站建设
  • 电子商务网站建设题库seo整体优化步骤怎么写
  • 涿州市网站建设网站搜索引擎
  • wordpress导入主题慢广州seo推广优化
  • 奉化网站建设网站关键词排名服务
  • 网站设计开发是啥石家庄关键词优化报价
  • 网站建设支付搜索引擎优化的概念
  • 自助外贸英文网站建设国际新闻最新消息今天
  • 凡科建站官网怎么样石景山区百科seo
  • 如何将网站做成app推销产品怎么推广
  • 深圳 网站制作市场营销十大经典案例
  • 学生做兼职哪个网站seo关键词优化的技巧
  • 做甜品网站栏目百度推广客户端手机版
  • 如何禁止ip访问网站南京百度seo排名
  • 网站模板购买 优帮云谷歌搜索网页版入口
  • 网站建设报价单模板合肥百度关键词排名
  • 河南省建设工程标准定额管理网站b站免费建网站
  • 网站不用了 怎么关闭吗优化排名seo
  • 自己做视频网站会不会追究版权合肥seo公司
  • 珠海政府网站建设公司北大青鸟培训机构官网
  • 宣城网站开发网络公司北京最新疫情最新消息
  • 商洛网站制作网盘资源共享网站
  • 怎样做网站呢最佳搜索引擎
  • 网站制作评分标准长春seo网站排名
  • 沈阳品牌网站建设如何创建自己的网站平台
  • 房地产网站开发如何在百度上发布自己的文章