遇到过的一些坑BUG

作者有话说

这些年遇到些奇奇怪怪的问题(坑);由于没有记录或者记录后有一些原因又给丢了;
有些网上能找到答案的还好,很快就解决了;
有些网上找不到的,到处查找原因,耗时又耗力,还不见效果;
总有一些感觉,我是不是有衰神附体,撒么子坑我都会掉进去,就感觉全世界就只我遇到了一样,难啊!!!
今天突然工作空闲下来,就把想起的一些记录下,说不定也方便和我一样的人(如果跟我有同感的举个爪,好让我不感到卑微啊(●’◡’●))

1、串口问题

1.1、串口接收数据问题(程序导致)

在一个NB串口与MCU串口通信的项目里遇到一个奇怪的问题,MCU串口初始化看了下啥的没问题,程序也能正常的发送数据,但就是接收不到数据,与demo程序比对没问题;更奇怪的是如果这是再将MCU的UART_RX与串口工具的RX相接(也接了GND)时串口接收就正常了,测试了下百分百是这现象。
程序如下:
在这里插入图片描述
导致原因:
硬件串口电平不匹配问题(想要明白这个可以去了解下,串口传输数据0,1逻辑)
解决方法:
将串口接收脚上拉使能即可。

GPIO_InitStruct.Pull = ENABLE;

**注意:**程序里的配置一定要和串口调试助手里的一置,否者会乱码
在这里插入图片描述
有看到网上红框内程序和助手不一致导致问题的,这里随口提下

1.2、串口接收数据问题(外部接线导致)

先说下事情经过:
要求用MCU串口通过红外用约定好的红外串口协议进行数据传输,因为红外传输在调试时不方便(发送方和接收方要隔得近些才能更好的保证传输正确率)我就在红外TX、RX的板子探点处引线接到串口工具上,然后编写完成程序后发现MCU可以红外发送,但红外接收不到数据(真是的,更上面串口问题是一般人不会遇到这种低级问题),接线如下:
在这里插入图片描述
导致原因:
串口工具的TX接到了MCU的RX,影响了接收脚的电平,导致接收数据失败(推测可能是串口工具的TX未传输数据时有强输出高电平)
解决方法:
将串口工具断开即可。

1.3、串口在MCU休眠后还会打印\0\0\0问题

导致原因:
休眠前没有将串口不使能,或去初始化,程序休眠后有定时器短暂唤醒,串口脚电平不确定导致的
解决方法:
修面前不使能串口,TXRX引脚配置推挽置低。

2、低功耗问题

2.1、低功耗时引脚该怎么配置才是最低功耗的呢

对于刚接触这一行的我就这还用想吗,不直接输出低电平不久行莫。
现实啪啪打脸,真疼!
以我目前掌握的可以大致分为以下三类情况:

2.1.1、MCU一直都没有用到的引脚,且没接入外设(最简单)

正解:对于这种MCU引脚的情况,还是要配置的,一般都是配置成高阻态模式;但高阻态又分为开漏置高,模拟输入,输入不使能这几种方式;对于这种悬空的引脚配置推挽置低是最合理的,因为有些产品使用环境恶劣,潮湿,如果应交有电平就会导致漏电

2.1.2、MCU休眠后没有用到的引脚,而且接入外设(较复杂)

正解:这个需要根据原理图来配置引脚输出电平状态
比如:有些因连接的是moss管充当的是控制一个模块功能是否上电工作的开关,假如是输出高时是关闭模块,输出低时是使用模块功能,那么你此时休眠后是肯定不能让该脚输出低电平的,这样会增加功耗。反正他的原理就是不管你输出高还是输出低,那个可以关闭这个模块你就配置成那个。
例如:下图EPW电路有焊接但并未使用,这里CTL2就需要配置为推挽置高
在这里插入图片描述

2.1.3、MCU休眠后通信引脚(UART、IIC、SPI)(较复杂)

对于休眠状态,如果是使用LPUART等自带低功耗模式的就不需要考虑,其他的就需要根据产品功能考虑了(一般都是使用时开启,不使用关闭),如果需要关闭的配置成推挽置低,重置uart即可,因为对于uart,iic,spi等如果有点压很可能会回流电导致功耗。

2.2、以前遇到过的功耗问题

2.2.1、设备休眠后功耗较高,但放着不动,功耗会慢慢的降下去

用设备查看后发现休眠“低”功耗较高而且唤醒曲线不正常,表现为不平稳波动,
原因:是设备中的电容在充电放电导致,最根本原因还是芯片引脚没有正确配置

3、NB模组问题

AT+CGATT?网络一直附着失败

可能以下几个原因:

1、 天线没接,增益不够。

2、sim流量卡没有流量了。

3、模块供电不足。

4、卡问题(建议换张测试过ok卡验证);
卡问题有很多情况:卡类型选错(模组支持卡,要与选着卡相匹配)
我就遇到过4G模组用电信卡出问题,解释原因相比移动、联通,电信信号差

出现问题分别对照确认一般来说即可解决。

内容修正上传时间20231024


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值