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

Jlink能正常烧写程序,但stm32就是不能正常工作

[复制链接]
dashiz 提问时间:2019-4-18 22:29 /
本帖最后由 dashiz 于 2019-4-18 22:35 编辑

新做了块板子,用的是STM32L151,用J-Link能正常连接,烧录程序。但MCU就是不工作。用示波器量了晶振的波形,没有波形,应该是晶振根本没有起振。单片机上的3.3V电压供应正常,晶振初步判断是好的。不知有没有人遇到过类似情况?请教一下是什么原因导致的?
另外,boot0接地,boot1悬空。
收藏 评论17 发布时间:2019-4-18 22:29

举报

17个回答
dashiz 回答时间:2019-4-25 15:57:36
今天用公司的示波器在晶振端量了一下,发现晶振已起振。确定是我自己的示波器有问题。
我自己用的示波器是便携式的,通过USB与电脑连接,在电脑上显示波形。品牌是PICo的,国外的,应该不会差的啊。而且奇怪的很,用它量现做板子的晶振波形,就出现如图15楼的不正常波形。测量旧版本的板子,波形就如15楼图正常波形。同样的测量方法,同样的晶振电路和因硬件,但波形就不一样,所以搞得我起先一点也没怀疑便携式示波器有问题。
dashiz 回答时间:2019-4-21 23:18:54
五哥1 发表于 2019-4-19 16:31
一般程序都会考虑外部晶振失效问题,在程序里把外部晶振设为首选,一旦程序检测外部晶振不工作,立马转到内 ...

今天把所有外设去除,用内部时钟源,用cubemx点了LED灯,发现可以运行。然后再打开外部时钟源,再下载程序发现LED灯也闪烁,但用示波器量晶振还是不正常,无波形。真是奇了怪了。
Dylan疾风闪电 回答时间:2019-4-19 10:03:07
1、keil里debug一下,查找程序卡死在那个环节。
2、如果卡在晶振就绪标志,查找硬件晶振电路是否有问题?晶振本身是否坏了?
3、使用内部时钟源,测试程序是否有bug。
-------------------------------------------------------------
一般均可通过dubug仿真找到问题点,先排除软件问题,再排查硬件。

评分

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

查看全部评分

wenyangzeng 回答时间:2019-4-19 07:21:20
楼主应该检查一下代码是否使能了HSE外部晶振。

评分

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

查看全部评分

jyl_518 回答时间:2019-4-19 07:54:04
建议先用内部时钟源试下,

评分

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

查看全部评分

不吃肉的羊 回答时间:2019-4-19 09:08:57
你既然可以用JLINK烧录,那你就在MDK里面DEBUG跑一下,看下停在哪了了

评分

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

查看全部评分

dashiz 回答时间:2019-4-19 14:26:32
Dylan疾风闪电 发表于 2019-4-19 10:03
1、keil里debug一下,查找程序卡死在那个环节。
2、如果卡在晶振就绪标志,查找硬件晶振电路是否有问题?晶 ...

因板子是新做的,虽说是在原来板子基础上修改的,但是新做的,所以第一怀疑硬件问题。不过,晶振没起来,MCU都没工作,程序能跑,哪怕几步?
dashiz 回答时间:2019-4-19 14:27:20
不吃肉的羊 发表于 2019-4-19 09:08
你既然可以用JLINK烧录,那你就在MDK里面DEBUG跑一下,看下停在哪了了

晶振都没起来,MCU也没工作,程序能跑,哪怕几步?
dashiz 回答时间:2019-4-19 14:36:49
wenyangzeng 发表于 2019-4-19 07:21
楼主应该检查一下代码是否使能了HSE外部晶振。

代码是用的外部晶振。
dashiz 回答时间:2019-4-19 14:37:04
jyl518-283289 发表于 2019-4-19 07:54
建议先用内部时钟源试下,

好办法,谢谢。
五哥1 回答时间:2019-4-19 16:31:52
一般程序都会考虑外部晶振失效问题,在程序里把外部晶振设为首选,一旦程序检测外部晶振不工作,立马转到内部时钟源程序,还有对于一个新板子,楼主不妨直接用CUBEMX来弄个点灯程序,就是没有晶振,这个板子照样工作,你试下就知道了。几分钟的事。

评分

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

查看全部评分

dashiz 回答时间:2019-4-19 16:41:14
五哥1 发表于 2019-4-19 16:31
一般程序都会考虑外部晶振失效问题,在程序里把外部晶振设为首选,一旦程序检测外部晶振不工作,立马转到内 ...

CubeMX没用过啊,不过晚上回去试试看。
jyl_518 回答时间:2019-4-22 12:51:32
很明显示波器问题,表笔是否有问题,输入阻抗要大。

评分

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

查看全部评分

五哥1 回答时间:2019-4-22 13:15:08
如果排除你的示波器问题和示波器操作问题,你的问题就是没有问题。STM32F能正常点灯就是正常的。

评分

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

查看全部评分

dashiz 回答时间:2019-4-22 22:46:53
本帖最后由 dashiz 于 2019-4-22 22:59 编辑
jyl518-283289 发表于 2019-4-22 12:51
很明显示波器问题,表笔是否有问题,输入阻抗要大。

我再查查,多谢。
abnormal.jpg
normal.jpg
12下一页

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版