小批量的产品出现的一点bug

2019-08-12 17:14发布

本帖最后由 abcxuyangyang 于 2017-10-24 19:16 编辑

由于产品需求:主控芯片选用STM32F051  无线模块选用si4432,作为从机,通信方式使用是spi模式;
问题描述:在测试的过程中,作为从机STM32F051 si4432收到数据之后,会让一个不搭噶的单片机引脚PC12输出数据发生反转(PC12初始化输出为1),通信协议里不包含任何会让PC12输出状态改变的数据;

最后调试:经过各种验证和在线仿真,首先确定了,PC12引脚不带任何复用功能,其次,PC12我初始化之后,让其输出为高,之后再不做任何改变,程序运行一段时间之后,PC12引脚状态发生改变。再次确定作为从机,si4432接收的数据里不带任何修改PC12状态的数据;
其次经过在线仿真发现,单片机除了PC12受影响,其他引脚都不会受到影响;


结果:抓头挠腮,想了好久,还是想不到解决方法,唯一的方法就是不用PC12,方法可行。但,这个问题还是没有解决,放在心里一直不舒服,所以想咨询下,用过SI4432的有没有遇到过这个问题的,顺便问下,keil软件给内存设置断点的教程,有的可以分享下吗,

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
12条回答
操作系统
1楼-- · 2019-08-12 22:49
还有这种事情.莫不是硬件连接到一起去了,或者单片机坏了.不然,不至于有这个样子的问题.
小温
2楼-- · 2019-08-13 00:30
看一下PC12是芯片内部哪个外设有用到,是不是该外设的状态变化导致引脚翻转
simms01
3楼-- · 2019-08-13 05:03
引脚状态改变 不是自己 就是外部   先把外部断开 看他还变不变  然后一段一段屏蔽功能  很容易就找出来了
八度空间
4楼-- · 2019-08-13 10:08
一个一个功能屏蔽来找问题,看下在什么地方有操作PC12这个管脚,断开外部的硬件连接,将PC12接上示波器,然后硬件仿真硬件跑起来,一步一步下去看下在什么地方PC12电平发生了翻转,这样找原因比较好点,先排除外部硬件的干扰
abcxuyangyang
5楼-- · 2019-08-13 13:24
 精彩回答 2  元偷偷看……
abcxuyangyang
6楼-- · 2019-08-13 16:28
八度空间 发表于 2017-10-24 17:26
一个一个功能屏蔽来找问题,看下在什么地方有操作PC12这个管脚,断开外部的硬件连接,将PC12接上示波器,然 ...

之前就是按照你所说的方式使用在线调试,一步步来定位,看看到底在哪里让PC12的 ODR相应位清零了 ,调试发现每次ODR清零,都是在刚进入定时器中断时候。所以不好定位了,比较尴尬

一周热门 更多>