1、在程序编写好后,能通过电脑上的串口助手查看单片机发送的控制指令是正确的。 2、GSM模块也能直接用电脑操控进行信息的发送。 3、我已经给430单片机设置了串口接收中断,若GSM模块有信息回应的话,会立即出发单片机的串口接收中断,点亮一个发光二极管。 但为什么我把430单片机和GSM模块相连接时却没有任何反应(单片机不停地发送指令给GSM,若GSM模块能接受到指令,无论GSM识别的指令是不是正常,GSM模块都会给单片机回复一个OK或ERROR.,但我这里GSM模块甚至没有丝毫反应,既不发送短信,也不对单片机发送来的指令进行回复)我这里430单片机的串口接收中断一直未被触发。
两个串口要进行通信,一个串口在发送数据发送端电压时7.58V,另一个串口发送数据时发送端的电压是5.18V。以上在单片机发送指令正确的情况下却不能控制GSM模块的问题,会不会是由于串口电压不匹配造成的??? 1. 你的GSM串口是什么接口,RS232的还是TTL的,是否是把RS232和TTL直接接一起了
2. 单片机里发命令时末尾是否加回车字符了,如果不加,GSM模块没反应很正常。 1.串口是RS232的,能用电脑控制GSM模块发送短信,说明GSM模块里的线路应该是正常的吧?? 2.单片机里的每个存储指令的数组最后面都加了/r/n。而且用串口调试助手结束单片机发送出来的指令时,也是有回车的。这点我在编程时注意过。麻烦看看还能有什么问题不?? 你说电压有点不正常,可以在单片机和GSM模块连接的情况下用三用表量一下,各个信号线是否通的,地是否相连了,是否有连接问题。
第二个就是确定你单片机端的串口转换芯片是好的,以及串口转换芯片的工作电压是否正确,将单片机和PC机相连,看收发是否都正常。
再有就是确定你从单片机发出的数据和从计算机上发出的数是一样的,可以将串口打到16进制下比较一下
如果上面都没有问题,我觉得你就得上示波器量一下,看单片机与GSM相连时,单片机发命令后GSM的串口发线上是否有信号出来。
|