我正在使用带有Texas Instrument Launchpad的SIM800L module,带有MSP430G2553微控制器,不使用SIM800L的外部库。
问题陈述:发送简单文本消息(带文本模式的SMS),在手机上作为空白消息接收。
SIM详情:
1. SIM 1:地点:印度。运营商:AirTel,4G兼容SIM卡。
2. SIM 2:地点:印度。运营商:Tata Docomo,3G兼容SIM卡。
我所知道的:
- 固件中的UART驱动程序经过测试和工作,非轮询,中断驱动。
- 没有添加阻塞时间延迟作为AT命令的读取响应的替代。我读了响应并且只在收到肯定确认时继续,大多数命令都是
<CR><LF>OK<CR><LF>
。
- 我已经通过示波器确认了在Tx-Rx引脚上发送和接收的数据位。一切似乎都符合预期,包括电压等级。
我读过的内容:
Stackoverflow上的相关文章:
第一个答案似乎对他有用,但对我来说不起作用。
我试过了什么:
- 我使用了与Docklight串行终端实例相同的模块。从我的手机收到从Docklight发送的短信,并按预期显示,而不是空白。
- 在第0天,在将模块与Launchpad硬件集成之前,我已经使用SIM800L的预期响应的精确副本测试了整个固件状态机。
- 除了一些初始配置之外,两张SIM卡的结果都是相同的,但是在我启动任何与SMS相关的任务之前,我在其中加载了一组典型的配置。
我使用的典型值是:
- 回声
- CSMP:17,167,0,0(我已经尝试过17,167,0,0,但没有运气)。 SIM 1的默认值为17,11,0,246,SIM 2的默认值为17,255,0,0。
- CSCS:“IRA”
串口失败组合:(SIM 1和SIM 2)
- CSMP:17,11,0,246 | CSCS:“IRA” - 发送空白短信
- CSMP:17,11,0,246 | CSCS:“GSM” - 发送空白短信
- CSMP:17,11,0,246 | CSCS:“HEX” - 发送空白短信
串口成功组合:(SIM 1和SIM 2)
- CSMP:17,167,0,0 | CSCS:“IRA”
- CSMP:17,167,0,8 | CSCS:“IRA”
- CSMP:17,11,0,0 | CSCS:“GSM”
- CSMP:17,167,0,0 | CSCS:“GSM”
- CSMP:17,167,0,8 | CSCS:“GSM”
说实话,在我研究了哪些字段反映了这些组合的变化(在SIM800L用户指南中记录不足)之前,我使用这些组合进行了预感。
知道我在这里可能缺少什么吗?我很乐意认为它更像是一个RTFM(Read The Fat Manual)问题。