OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5281|回复: 10

诡异的问题:程序能下载 。就是不执行

[复制链接]

11

主题

60

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2015-10-9
在线时间
24 小时
发表于 2016-3-22 11:19:39 | 显示全部楼层 |阅读模式
10金钱
本帖最后由 xiaoyehack 于 2016-3-22 11:24 编辑

QQ截图20160322111415.jpg

SystemInit();点击全速运行就是不会执行到这,点单步也不会往下走,晶振频率测量了一下 是8m没错。不知道谁遇到过,偶尔会出现几次这样的情况,找不到原因很是麻烦,求解。


22.jpg

点击单步、全速都一直停在这。  10分钟前还用的好好的 突然这样了 。

最佳答案

查看完整内容[请看2#楼]

printf 函数不注释掉 勾上Microlib 整个都正常了
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

11

主题

60

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2015-10-9
在线时间
24 小时
 楼主| 发表于 2016-3-22 11:19:40 | 显示全部楼层
printf   函数不注释掉   勾上Microlib  整个都正常了  
回复

使用道具 举报

27

主题

711

帖子

0

精华

版主

Rank: 7Rank: 7Rank: 7

积分
12566
金钱
12566
注册时间
2015-11-5
在线时间
2150 小时
发表于 2016-3-22 12:26:36 | 显示全部楼层
把芯片erase掉,然后重新全部编译,再下载试试看
拿来长岛冰茶换我半晚安睡
回复

使用道具 举报

11

主题

60

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2015-10-9
在线时间
24 小时
 楼主| 发表于 2016-3-22 12:45:28 | 显示全部楼层
FreeRTOS 发表于 2016-3-22 12:26
把芯片erase掉,然后重新全部编译,再下载试试看

erase full ship?  刚刚试了 不行   刚刚有试过将one elf section per function勾上 可以,但是 还是没明白问题的原因! 是程序大 了?  我看程序也没有超出大小  而且我把主函数的全都注释掉了!
回复

使用道具 举报

11

主题

60

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2015-10-9
在线时间
24 小时
 楼主| 发表于 2016-3-22 12:49:45 | 显示全部楼层
xiaoyehack 发表于 2016-3-22 12:45
erase full ship?  刚刚试了 不行   刚刚有试过将one elf section per function勾上 可以,但是 还是没明 ...

滴答定时器里面有个
if(a == 0x01)/
         {
printf("ÕaêÇê±¼äD£×¼Ãüáî!\r\n");}   把printf 注释掉就好了 不知道原因
回复

使用道具 举报

11

主题

60

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2015-10-9
在线时间
24 小时
 楼主| 发表于 2016-3-22 12:52:02 | 显示全部楼层
把printf 串口打印 函数注释掉了 就好了 求原因
回复

使用道具 举报

4

主题

98

帖子

0

精华

高级会员

Rank: 4

积分
755
金钱
755
注册时间
2015-9-16
在线时间
94 小时
发表于 2016-3-22 13:12:00 | 显示全部楼层
可能是因为在未启用串口时,使用了打印功能。在串口打印中一般都是while(1)循环。由于未启动串口,程序导致卡死在打印函数中
回复

使用道具 举报

11

主题

60

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2015-10-9
在线时间
24 小时
 楼主| 发表于 2016-3-22 13:12:46 | 显示全部楼层
自己结自己的贴 感觉好猥琐  有没有  哈哈 !
回复

使用道具 举报

11

主题

60

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2015-10-9
在线时间
24 小时
 楼主| 发表于 2016-3-24 22:39:14 | 显示全部楼层
SeaOverflow 发表于 2016-3-22 13:12
可能是因为在未启用串口时,使用了打印功能。在串口打印中一般都是while(1)循环。由于未启动串口,程序导 ...

未启用是指没有初始化吗?
回复

使用道具 举报

4

主题

98

帖子

0

精华

高级会员

Rank: 4

积分
755
金钱
755
注册时间
2015-9-16
在线时间
94 小时
发表于 2016-3-24 22:46:47 | 显示全部楼层
xiaoyehack 发表于 2016-3-24 22:39
未启用是指没有初始化吗?

是的,既然解决好了,可以尝试了解一下原因哈
回复

使用道具 举报

11

主题

60

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2015-10-9
在线时间
24 小时
 楼主| 发表于 2016-3-25 15:33:56 | 显示全部楼层
SeaOverflow 发表于 2016-3-24 22:46
是的,既然解决好了,可以尝试了解一下原因哈

恩  你看下回复过程 就能看见了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-19 13:14

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表