打印

关于STM32引脚设置为输出后死机的求助

[复制链接]
2626|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wsxlf|  楼主 | 2010-7-31 19:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
各位高人,我们使用的STM32F103RB,当B口的15引脚配置为输出后(不管是推挽还是开漏),立即死机。
   而B口的8-14脚则没有这个情况,可以随意配置为推挽输出或是开漏输出。
  当然,设置为输入则不会死,但是15脚是我们的一个LCD的数据线中的一根,必须配置成输出口,其它的7根是B口的8-14脚。
  
  我们的CPU由于封装资料搞错,偏大,后用细铜线重新焊接上,不知这是否有些影响,但是无法解释为何单单15脚出现异常。
  另外,当死机后,利用开发平台的调试软件观察发现其实设置已经成功了,也就是PB15已经变为推挽或者开漏输出了。
  甚至还可以利用开发平台的调试软件将PB15设置为高电平或者是低电平,实际测量也表明PB15确实变高或变低了。
  看来这个口子并没有和其它地方短路,但这样更难分析问题所在了,还请高人指点,万分感谢
沙发
eydj2008| | 2010-7-31 21:06 | 只看该作者
1.老大啊 你还要画封装啊 I服了U  AD6 有专门ST的封装
2.最容易出现问题是 配置重复,复用功能重复 RCC重复产生 ,把不要的RCC 复用功能 GPIO去掉

使用特权

评论回复
板凳
香水城| | 2010-7-31 23:09 | 只看该作者
死机是什么意思?什么现象?

使用特权

评论回复
地板
eydj2008| | 2010-8-1 08:29 | 只看该作者
仿真看一下 就知道程序跑在哪里 进入死循环了。硬件错误之类。。。估计的哈

使用特权

评论回复
5
wsxlf|  楼主 | 2010-8-1 19:07 | 只看该作者
3楼: 死机是什么意思?什么现象?
3楼的敢情是大名鼎鼎的香主?死机的现象是在启动文件STM3210x.S中反复执行第一句的B.语句,进入死循环了。
2楼的,感谢你的分析,不过,我没有重复配置,已经多次检查了这个B口的配置,没发现重复配置的情况。我修改了启动文件的,增加了对TIM5的中断,我现在怀疑因此引起奇怪的问题,虽然这没什么逻辑,明天试试。感谢大家的关心。

使用特权

评论回复
6
香水城| | 2010-8-1 22:44 | 只看该作者
看看这个口是否短接到其它信号,造成对其它信号线的干扰。

使用特权

评论回复
7
xqscu| | 2010-8-2 09:22 | 只看该作者
死机的现象是在启动文件STM3210x.S中反复执行第一句的B.语句,进入死循环了。


看看是哪个中断,是不是你配置了pb15的外部中断。

使用特权

评论回复
8
香水城| | 2010-8-2 10:43 | 只看该作者
如果死机的现象是在启动文件STM3210x.S中反复执行第一句的B.语句,很可能是反复进入复位,你看看复位寄存器,复位源是什么?

使用特权

评论回复
9
wsxlf|  楼主 | 2010-8-2 17:46 | 只看该作者
问题已经解决,确实因为修改启动文件STM32F10X.S引起的,仅仅因为加了TIM5中断,去掉后,就好了。怪啊,看似风马牛不相及。

使用特权

评论回复
10
香水城| | 2010-8-2 18:38 | 只看该作者
肯定不是"仅仅"这么简单,:lol

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

11

帖子

1

粉丝