你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32F103C8T6在SWD可运行,上电自运行后无反应

[复制链接]
路芽辉 提问时间:2019-1-21 21:06 /
3ST金币
  1.芯片使用STM32F103C8T6,能够烧写程序并进行程序调试,百度谷歌,万用表啥的测试整了一圈了,摸不着头脑。
  2.使用的BOOT启动方式是BOOT0通过10k电阻接到地,BOOT1悬空。
  3.检查过芯片供电,3.3V电压等都一切正常,芯片管脚上也能测得。
  4.NRST引脚通过引线短触DGND,无反应。
  5.在使用IAR通过SWD烧写程序后,退出调试模式,这时如果拔出SWCLK和SWDIO线,只保留供电线路,程序仍然能够正常运行。
  6.当重新上电,程序不能运行。
  7.补充说明,晶振使用的都是有源晶振,拿示波器检测过,晶振都是正常工作的。

硬件芯片电路

硬件芯片电路

稳压电路

稳压电路

最佳答案

查看完整内容

复位信号原理没画出来,如果是上拉10K、对地0.1uF的RC复位的话,没问题。 有上拉的情况下,短接复位到GND,应该也是可以复位的。 先用STM32CubeMX建个简单的点灯程序跑着试试,排除一下硬件问题。内部时钟和外部晶振都试试。 如果的确如你描述的话,软件的问题可能性大,但你没有附工程。
收藏 评论6 发布时间:2019-1-21 21:06

举报

6个回答
七哥 回答时间:2019-1-21 21:06:09
本帖最后由 toofree 于 2019-1-22 09:47 编辑

复位信号原理没画出来,如果是上拉10K、对地0.1uF的RC复位的话,没问题。
有上拉的情况下,短接复位到GND,应该也是可以复位的。
先用STM32CubeMX建个简单的点灯程序跑着试试,排除一下硬件问题。内部时钟和外部晶振都试试。
如果的确如你描述的话,软件的问题可能性大,但你没有附工程。

评分

参与人数 1蝴蝶豆 +3 收起 理由
STMCU + 3

查看全部评分

wudianjun2001 回答时间:2019-1-22 09:57:53
复位加个对地电容试试

评分

参与人数 1蝴蝶豆 +1 收起 理由
STMCU + 1

查看全部评分

xiaolingoei 回答时间:2019-1-22 10:13:06
不运行一般是下面几个问题:
1、复位电路怎么设计的?
2、VBAT不用的话就直接接3.3V。
3、晶振电路呢?可能是晶振频率和工程里面不一致。
4、认真检查一下VDD和VSS系列的引脚,少接、漏接一个,都有可能不运行。

祝早日调出。

评分

参与人数 1蝴蝶豆 +2 收起 理由
STMCU + 2

查看全部评分

路芽辉 回答时间:2019-1-22 11:15:32
刚测试完了,重新写了个闪灯的程序,底部电路没有任何问题。
再转回到自己的应用程序,一个一个屏蔽,最后发现问题出现在使用的原子RTC库,在RTC的初始化函数卡死。
没搞明白为何SWD调试时可以,正常上电不行,等会接着调试看看。反正用CUBE生成的RTC没法用,HAL库函数里面都没有时间保存的操作。
路芽辉 回答时间:2019-1-22 11:18:40
toofree 发表于 2019-1-22 09:45
复位信号原理没画出来,如果是上拉10K、对地0.1uF的RC复位的话,没问题。
有上拉的情况下,短接复位到GND, ...

我用不到复位,考虑到成本,所以根本就没加这块的东西了。
实际测试后发现在软件这块出现问题,分给你吧
破灬晓 回答时间:2020-3-25 01:32:00
你好,我也遇到了这问题,我用的是某宝上买的最小系统版,长条形,C8T6,然后用SWD供电,程序可以正常运行,用USB口供电,就不能运行程序了。请问怎么解决呢?
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版