STM32F10x到GD32F10x移植指南

版权申诉
5星 · 超过95%的资源 2 下载量 80 浏览量 更新于2024-07-10 收藏 1.13MB PDF 举报
"该文档是关于从STM32F10x系列微控制器移植到GD32F10x系列的指南,详细介绍了移植过程中可能遇到的硬件差异、软件环境设置以及外设移植的注意事项。" STM32F10x系列与GD32F10x系列移植详解: 1. **前言**: 移植过程是为了充分利用GD32F10x系列的特性,如更高的性能或更低的成本。这个过程涉及硬件和软件的适应性修改。 2. **硬件差异**: STM32F10x与GD32F10x虽然都基于ARM Cortex-M3内核,但可能存在时钟系统、内存大小、外设接口等方面的差异,这些差异会影响软件的移植工作。 3. **内部资源对比**: 这部分对比了两个系列微控制器的内部资源,如闪存大小、SRAM容量、GPIO引脚数量、定时器、ADC、CAN等模块的差异。 4. **软件环境设置**: - **Keil**:介绍了如何在Keil4和Keil5中添加GD32F10x的支持,包括设备库的配置和调试工具的设置。 - **GD-Link**:使用GD-Link作为调试工具开发GD32F10x的方法。 - **J-Link**:介绍了J-Link在GD32F10x开发中的应用。 - **IAR**:讲解了在IAR环境中添加GD32F10x设备并进行编译调试的步骤。 5. **外设移植**: - **System**: - **HSE注意事项**:确保正确配置外部高速时钟源。 - **软件区分GD32和STM32**:可能需要修改初始化代码以适应新的芯片。 - **Flash取指零等待**:注意GD32F10x的Flash访问速度,可能需要调整预取指设置。 - **上电启动异常**:检查启动配置和电源管理。 - **SWD下载问题**:确保SWD接口的硬件连接和固件兼容性。 - **GPIO**: - **EXTI响应**:可能需要更新中断服务程序。 - **PA8特性**:了解新芯片对特定引脚的不同处理。 - **PB1和PB2特性**:可能有新的功能或限制。 - **GPIO上拉输入**:检查IO口的上拉电阻和电源电压。 - **TIM**: - **中断标志位清除**:检查中断标志的清除机制。 - **输入捕获/正交编码**:确保配置正确。 - **CAN**: - **离线恢复**:检查CAN模块的唤醒和故障恢复机制。 - **接收异常**:分析数据丢失的原因,可能是波特率或滤波设置问题。 - **ADC**: - **采集数据异常**:检查ADC的采样设置和参考电压。 - **同步模式问题**:在ADC1和ADC2同步模式下,注意不同版本的兼容性。 - **查询法通道错乱**:检查通道配置和读取顺序。 - **DMA模式下数据错乱**:检查DMA配置和ADC中断处理。 这个文档为从STM32F10x到GD32F10x的移植提供了详细的指导,涵盖了从基本的开发环境配置到复杂的外设适配,有助于开发者顺利进行平台迁移。