问题
用官方的ARDUINO UNO板子使用例程挺好使,可以用ARDUNO MEGA2560反而不行
修改方法
代码内
#define GprsSerail Serial
SoftwareSerial DebugSerial(10, 11); // RX, TX
// #define DebugSerial Serial
// #define GprsSerail Serial3 //使用mega2560板子可以用Serial3,不用SoftSerial调试,这样更稳定
修改为
//#define GprsSerail Serial
//SoftwareSerial DebugSerial(10, 11); // RX, TX
#define DebugSerial Serial
#define GprsSerail Serial3 //使用mega2560板子可以用Serial3,不用SoftSerial调试,这样更稳定
然后接线用TX3和RX3去接GSM的RXD和TXD。其他的接线还是参考以前。
调试信息在ARDUINO下载用的那个开发环境内串口监视器去看
原因分析:
- 经测试官方的ARDUINO mega2560板子的Serial也就是下载用的这个串口兼容性不行,只能用于下载,不能外挂串口模块,当外挂串口模块时候容易被下载电路电平影响,使MEGA2560和串口模块(GSM)不能正常通讯。所以可以用其他的Serial1-3这3个串口去接串口模块(GSM),这几个串口没有接其他电路。
- 而官方的ARDUINO UNO R3板子这方面做的很好,兼容性挺好。
|