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

调试记录 单片机GD32F103C8T6(兆易创新) 程序烧写完成但是没有现象 (自己做的板子)

1. 单片机GD32F103C8T6 的资料

CPU内核:ARM  Cortex-M3

CPU最大主频:108MHz

工作电压范围:2.6V~3.6V

程序存储容量:64KB

程序存储器类型:FLASH RAM, 总容量:20KB

GPIO端口数量:37

最高主频可达108MHz,

资料链接:1473490296871.pdf (szlcsc.com)



2. 问题现象及说明

1.  烧写最简单的 跑马灯程序,但是板子上的LED灯没有反应。

2.  检查单片机电压电源是否正常。 实际情况:供电正常。

3.  检查单片机的晶振是否起振。 使用示波器测量,晶振已经起振。(有正弦波的波形)

4. 检查软件方面程序是否正确 。 (官方例程,程序正常)

5. 软件程序烧写是否正常?  (Keil5 显示烧写正常,并且程序烧写成功)



3. 问题解决过程

1.  因为硬件上面没有可以查的东西了,所以我们先查软件。 

2.  软件人员启动在线调试,一个命令一个命令的执行,发现 程序卡在 一个时钟函数的while 循环里面, 查一下发现是一个 根据 晶振起振时间来判断,外部晶振是否正常的函数。假如起振时间小于0.9S 程序将卡在 while 循环起不来。 到了这里我知道是 单片机晶振的问题。

3. 我一看原理图 晶振旁的电容(滤波电容)溶值是 30pF, 我观看cpu是GD32F103C8T6的多个原理图,发现 8MH 晶振旁的电容溶值一般是 10pF, 或者 22pF。

4. 我把电容换成 10pF 的, 程序还是卡在了晶振的计时函数里面, 我想了下,叫软件技术人员把  外部晶振的 起振计时的值调大一点, 本来是 0.9S, 调成了 1.2 S,。

5. 最后程序正常执行,问题解决。


http://www.kler.cn/news/108046.html

相关文章:

  • 替换所有的问号
  • Dockerfile文件详细教程
  • 前端面试基础题——12
  • C# 图解教程 第5版 —— 第12章 枚举
  • golang中快速用melody搭建轻量的websocket服务
  • redirect导致的循环重定向问题(史上最全)
  • 使用反射调用类的私有内部类的私有方法
  • lvs+keepalived: 高可用集群
  • PHP 同城服务共享茶室小程序系统是如何实现的?
  • C语言二、八、十六进制转换
  • 【Apache Flink】实现有状态函数
  • 2023年马丁·加德纳聚会数学魔术分享之《不只是奇偶性的魔术》回顾
  • Android 13.0 根据包名授权悬浮窗权限
  • CSS宽度100%和宽度100vw之间有什么不同?
  • windows PC virtualBox 配置
  • 【计算机网络笔记】Web缓存/代理服务器技术
  • 用Visual Studio(VS)开发UNIX/Linux项目
  • excel巧用拼接函数CONCAT输出JSON、SQL字符串
  • Powershell脚本自动备份dhcp数据库
  • 僵尸网络|让人防不胜防的内部网络安全问题,作为企业IT不得不了解的基础安全
  • 酷开科技 | 酷开系统大屏电视,打造精彩家庭场景
  • Blueprints - 虚幻中的行为树(Behavior Tree)
  • 排序算法-堆积树排序法(HeapSort)
  • SQL企业微信群机器人消息推送
  • 关于数据中台的理解和思考
  • 实战经验分享FastAPI 是什么
  • Flutter笔记:完全基于Flutter绘图技术绘制一个精美的Dash图标(上)
  • react-antd组件 input输入框: 实现按回车搜索
  • 密码学与网络安全:量子计算的威胁与解决方案
  • 038-第三代软件开发-简易视频播放器-自定义Slider (二)