发布网友 发布时间:2022-04-22 23:01
共1个回答
热心网友 时间:2023-08-30 03:07
GPRS是第二代移动系统向3G时代转变的一个过渡点,GPRS模块本身集成了AT命令,要控制它只需要向它发送AT命令即可,实现这些功能的过程当中,认识到和以前开发很大的不同,以前只需要调试软件,而现在还要调试硬件,需要使用万用表、示波器、焊烙铁等工具,在开发过程当中最大的问题是浪费了太多时间在硬件调试上,ARM有时能够正确发送数据,但收不到,隔一下它又可以收到,这个问题我想是硬件连接的问题,因为我的代码在这个过程当中根本没有动过,但硬件连接又是对的,TX,RX,GND这些都是通过万用表验证过的,非常蛋疼,在测试的过程当中,又可以了-我没有更改硬件连接,这是为什么?不管怎么说硬件调通了,但在对GPRS进行初始化时,只能接收到AT命令的返回,后面的命令被忽视了,这个问题是因为GPRS模块的速度不足以识别到以MCU的速度连续发送的AT命令,在发送第一个命令和每二个命令时应该有一定的时间间隔.对串口的操作应该使用双缓冲队列方式,即接收一个队列,发送一个队列,这样在对串口进行操作时,只需要将数据放入到缓冲队列当中去即可,对串口操作就“封装”起来了。