在GD32F103移植STM32F103代码
在GD32F103移植STM32F103代码
使用相同FLASH和管脚数量相同的芯片,例如GDF103C8T6移植STM32F103C8T6程序。虽然两个款芯片的寄存器地址以及架构基本相同。但是需要注意的是GD32F10x主频是108兆,但是STM32F10x主频是72兆。所以需要针对以RCC时钟进行修改。
例如打开原子哥的ALIENTEK MINISTM32 实验8 PWM输出实验例程
先将芯片的选项进行修改
然后将STM32的启动文件替换成GD的启动文件
当然也可以不替换,我这里选择替换掉。
然后就想修改时钟相关配置
①打开stm32f10x.h文件,找到定义
//#define HSE_STARTUP_TIMEOUT ((uint16_t)0x0500) /*!< Time out for HSE start up /
修改为
#define HSE_STARTUP_TIMEOUT ((uint16_t)0xFFFF) /!< Time out for HSE start up */
这是因为GD频率高,并且稳定内部8兆的时钟HSE需要更多的时间,这里给满。
②修改system_stm32f10x.c文件
按照72MHz方式,添加108兆代码
1)
改为
2)将
改为
3)将
改为
STM32的27位28位是保留的,但是GD的是用来配合PLL倍频的
在最后添加108兆的时钟配置程序
全局时钟配置寄存器在GD中命名时RCC_GCFGR,在STM32中命名为RCC_CFGR,关于PLL倍频系数配置PLLMF不同,红框内是先将HSE(8兆)分频为2得到4兆,然后27倍频得到108兆。
这时就得到了108兆的主频时钟
然后修改读取时钟的函数void RCC_GetClocksFreq(RCC_ClocksTypeDef* RCC_Clocks)
当发现时RCC_CFGR第27位置位了,就将倍频数从12+15 = 27.
至此,GD32F103移植ST32F103的工程就修改完成了,就可以尽情的使用ST的库代码了。
在GD32F103移植STM32F103代码相关推荐
- ROS移植KCF代码
ROS 移植KCF代码 首先说明一下,melodic版本支持python2.7, 因此python版本的kcf没有尝试过,3.6版本的python可以直接调用 安装过opencv_contrib3.4 ...
- STM32F103代码远程升级(三)基于YModem协议串口升级程序的实现
文章目录 一.YModem协议简介 二.YModem的数据格式 1.起始帧的数据格式 2.数据帧的数据格式 3.结束帧的数据格式 4.文件传输过程 三.基于Ymodem协议串口升级程序的实现过程 1. ...
- GD32F103替代STM32F103带来串口不能用的问题
近期,由于需要,先前使用GD32F103的替换STM32F103的芯片,它的系统主频提升到104MHZ, 众所周之,STM32F103的主频是72MHZ,这里没有什么问题,只要改一下SYSTEMCLO ...
- 嵌入式Linux内核移植相关代码分析(转)
本文通过整理之前研发的一个项目(ARM7TDMI +uCLinux),分析内核启动过程及需要修改的文件,以供内核移植者参考.整理过程中也同时参考了众多网友的帖子,在此谢过.由于整理过程匆忙,难免 错误 ...
- N32G457VEL7移植FreeRTOS代码
代码 先附上代码链接(在分支里) 或者直接拉取: git@gitee.com:sanfro/mcu.git 移植 内核移植的东西比如滴答定时器初始化等等,FreeRTOS都帮忙写好了,移植方法其实与S ...
- 野火霸道者开发板移植LVGL代码
具体移植参考教程:http://t.csdn.cn/8AYlf 下面是修改引脚后适用于霸道者开发板的代码: https://pan.baidu.com/s/1ozXlEk_XHZRCNRyT-KgPA ...
- RTX移植STM32F103,超详细~
目录 RTX移植 前言 移植 1.创建工程 2. 配置工程 3. 添加LED文件 4. 编写测试代码 5. 编译烧录 RTX移植 [往期回顾] ☞为什么需要RTOS? 前言 keil RTX是一款应用 ...
- STM32F103代码远程升级(五)基于MQTT协议WiFi远程升级代码的实现
文章目录 一.WiFi模块的选用与介绍 二.ESP8266的固件擦除与烧写 1.ESP8266 Flash擦除工具的安装与使用. 2.ESP8266固件烧写 (1)在线获取固件文件 (2)获取SDK ...
- 关于最近GD32F103替代STM32F103方案个人记录
由于最近STM32芯片价格猛涨,公司要求寻找替代方案.考虑到开发时间最终选择了pin-pin兼容的GD32. 在STM32原有工程基础上不做大发动,只要细微修改下面图示一个地方便可以实现替代. 一.使 ...
最新文章
- AAAI 2021 | 语义解析最新进展解读
- 高性能javascript-数据访问笔记
- <马哲>商品二因素及其辩证关系2017-12-27
- Goroutine的几个例子
- 判断字符串的长度,中文占两个字符
- 国产操作系统要起来,这款Linux是你的菜吗?
- dbms_xplan之display_cursor函数的使用
- C++ 高级篇(五)—— 预处理指令
- Istio调用链埋点原理剖析—是否真的“零修改”分享实录
- mysql和jfinal的区别_mysql与JFinal的数据关系-阿里云开发者社区
- mysql 慢_MySQL很慢... 怎么破??-阿里云开发者社区
- STM32F103 mbed输出互补pwm
- 管理感悟:正确认识自己的工作
- centos7 安装 卸载docker
- 电机噪声之谐波分析(内附simulink中FFT分析的相关参数配置与解析)
- wpa_supplicant
- 计算机 未保存,电脑突然关机wps没保存怎么办
- 四位共阳极数码管显示函数_DS1302,四位共阳极数码管显示时钟,可调时间
- 从实习生到算法专家,他只用了2年!
- 机器学习 --- 逻辑回归
热门文章
- android手机可以换字体吗,安卓手机字体怎么改?安卓手机爱字体换字体教程
- U盘杀毒专家3.21 官方最新版已破解
- 网易笔试题2:会话列表
- Staring into the Abyss: An Evaluation of Concurrency Control with One Thousand Cores 论文阅读笔记
- 利用python实现文件搜索功能
- java 汉字转拼音工具_【转载】Java汉字转全拼工具
- uploadify API
- source insight教程:常用设置、快捷键、附带source insight3.5和4的对比
- WIN10/WIN7网络优化工具实现
- 过程仪表校验仪fluke754