1、GD32采用ADC同步注入方式时,需要同时配置ADC1和ADC2;

但是只有当ADC时钟分频为6时,才可以执行;大于分频6时,程序会卡死在ADC_GetBitState(ADC1,ADC_FLAG_EOIC)中;

2、ADC1和ADC2同步注入时,出现ADC2通道的采样值一直为零。

需要同时对ADC1和ADC2同时都配置,才能够采样的。(再对硬件板子重新焊接之后就好了)

2.1 利用TIM1的TRGO触犯ADC的采样,TIMER_RepetitionCounter参数设置为1,但是实际触发频率是3个PWM触发一次ADC采样

实际测试条件:内部时钟64MHZ,ADC时钟6分频(对应的ADC的时钟频率不为整数),TIM1不分频;

问题解决:改变ADC的时钟频率,使得其为整数,即可实现一次PWM周期触发ADC采样一次;

2.2 关于利用TIM1的TRGO和CH4通道触发ADC的同步采样,有时候会出现不能触发采样的问题(ADC->STR = 0X0012)

1)利用TRGO触发ADC采样

TIM1分频为8、1和0,ADC分频为4;------仍然会出现有时候不能触发ADC采样的问题

2)利用CH4通道触发

TIM1分频为0,ADC分频为4;------仍然会出现有时候不能触发ADC采样的问题

TIM1分频为8和1,ADC分频为4;------不会出现该问题

3、GPIO_DeInit(GPIOB);函数初始化,只能在第一次使用,如果在初始化相关的IO口,再次使用GPIO_DeInit(GPIOB)该函数,会导致之前配置的IO出现问题。

4、GD32的串口配置加上ADC配置之后的函数,容易出现ORE过载错误,导致无法进入中断。

USART_DataSend(USART3, *Data++);
while(USART_GetBitState(USART3, USART_FLAG_TC)==ERROR){};顺序改为这个就可以正常发送数据了。

5、注意bool类型的定义,否则会导致定义的变量数值不对。

6、读取Hall信号的IO口时,发现输入IO口的信号存在中间阶梯的情况,导致读取信号不对

芯片引脚虚焊导致的该问题。

7、同样的简单测试程序GD32和ST32完全兼容的芯片移植时,需要重新选择芯片配置(在主菜单中打开Flash->Configure Falsh Tools配置窗口,切换到“Utilities"页。按“Setting"按钮进入“Flash download setup"配置窗口,然后一路按“OK”按钮退出配置窗口在“Flash download setup"配置窗口点击“Add”按钮进入“Add Flash Programming Algorlthm"窗口在“Add Flash Programming Algorlthm"窗口),否则会出现“”Error: Flash Download Failed-"Cortex-M3" “”下载烧录错误。

8、GD32F130C8T6和GD32F103C8T6的区别---20171013

1)二者开发时,所用的固件开发库是不一样的()。

2)芯片的时钟频率(48MHZ和108MHZ)也不一样,Flash和SRAM大小也不一样;

3)芯片的引脚35、36不一样(F130:PF6、PF7【I2C2_SCL、I2C2_SDA】;F103:VSS2、VDD2)

4)芯片的引脚2、10复用的功能不一样的

5)F130中含有1个ADC,最多只能采样4路;F103中含有2个ADC,最多只能采样8路;

9、采用ST的V3.50的库开发时,一定要勾选Use MicroLIB,否则会出现无法进入Main函数

STM32移植到GD32的问题---20170923相关推荐

  1. STM32移植RT-Thread后的串口在调试助手上出现:(mq != RT_NULL) assert failed at rt_mq_recv:2085和串口只发送数据不能接收数据问题

    STM32移植RT-Thread后的串口在调试助手上出现:(mq != RT_NULL) assert failed at rt_mq_recv:2085的问题讨论:http://www.rt-thr ...

  2. STM32移植RT-Thread后的串口在调试助手上出现:(mq != RT_NULL) assert failed at rt_mq_recv:2085和不能接收数据问题讨论

    STM32移植RT-Thread后的串口在调试助手上出现:(mq != RT_NULL) assert failed at rt_mq_recv:2085的问题讨论:http://www.rt-thr ...

  3. contiki STM32移植

    1.contiki简介 [2016年6月更新 强烈建议各位使用arm-none-eabi-gcc工具链,推荐在Instant Contiki中开发Contiki应用,不推荐使用IAR] "C ...

  4. micropython STM32移植笔记(一)

    micropython STM32移植笔记(一) 首先,我是一个搞硬件的,说白了是做电路的,呵呵... 一直想学一些软件,只会搞硬件的工程师是没有灵魂的,画了7年的PCB板卡了,但是每次调试硬件都要求 ...

  5. STM32移植uC/OSIII

    坚持就是胜利 一.UCOS简介 01 简介 02 uC/OS-III的任务 03 其他介绍 二.操作过程 01 题目要求 02 配置CubeMX 03 下载代码 04 移植代码 05 效果展示 三.实 ...

  6. stm32 移植java_把Lua移植到stm32上,效果不错! (amoBBS 阿莫电子论坛)

    因为我们产品的需要满足不同行业需求,所以一直在寻找一个脚本语言,以便灵活配置. 前段时间还自己花时间去实现一个C语言解释器,看了一堆编译原理的东西,以及虚拟机等,头都搞大了,把基本功能实现了,但总是不 ...

  7. 来了!STM32移植LuatOS,潘多拉示例全新教程

    进击的五月,继上期<使用Air724UG制作简易贪吃蛇>教程之后,@打盹的消防车 又为大家带来基于STM32的潘多拉LuatOS移植全新教程: 为什么使用潘多拉作为教程呢? STM32不能 ...

  8. STM32移植BME680传感器输出IAQ(室内空气质量)

    STM32移植BME680传感器输出IAQ(室内空气质量) 1.准备材料 软件: stm32cubemx .IAR for arm.jlink(或者stlink)驱动(已安装请忽略).任意的串口调试助 ...

  9. STM32移植LVGL(LittleVGL)

    STM32移植LVGL(LittleVGL) 一.什么是LVGL https://lvgl.io/ 这是LVGL的官网, http://lvgl.100ask.org/8.2/intro/index. ...

最新文章

  1. LeetCode 6062. 设计一个 ATM 机器
  2. 区块链应用@纸贵科技:基于阿里云容器服务护航内容版权
  3. Bootstrap Magic – 轻松创建自己的 Bootstrap 主题
  4. C语言——二维数组转置
  5. 自定义元素探秘及构建可复用组件最佳实践 1
  6. leetcode—11.队列题型python解答
  7. “封号斗罗” 程序员修炼之道:通向务实的最高境界
  8. Oblivious transfer and Garbled circuits
  9. 微信公众号如何添加附件链接
  10. 玩游戏计算机缺失msvcp140,绝地求生计算机丢失MSVCP140.dll解决办法
  11. 重构——46令函数携带参数(Parameterize Method)
  12. 极米H5值得入手吗?极米H5实际体验如何?画面对比实测
  13. python的分布式爬虫框架
  14. 宝讯网捷:拼多多团长佣金怎么领?
  15. java学习第二周周记
  16. C/C++ 控制台高级操作(非常详细)
  17. thinkphp框架源码交易系统资源网站源码
  18. 【Unity3d】带你制作一款类似于金山打字之生死时速的小游戏
  19. 数据存储大讲堂:谈磁盘列阵与RAID技巧
  20. python networkx进行最短路径分析_【Python学习系列二十六】networkx库图最短路径求解...

热门文章

  1. 原创|干货|长文|264亿件包裹怎么破?闪电式自动化分拣技术 细节大起底!
  2. 【Proteus仿真】51单片机+74HC164驱动两个四位数码管
  3. c语言数组子集,C语言实现数组所有子集
  4. HTC使用官方固件作为底包制作rom卡刷包教程
  5. 黑苹果oc清除nvram_基于OpenCore0.6.1的黑苹果安装,小白也能看
  6. Spring AOP官网学习
  7. 【持续更新】1999-2023年英伟达历代桌面GeForce显卡列表,GeForce显卡发布日期
  8. oracle 启动crs进程,由于CRS磁盘dismount造成的CRS进程无法启动问题
  9. 中国兽医参考实验室市场趋势报告、技术动态创新及市场预测
  10. 生成带logo图像的二维码