当前位置: 技术问答>linux和unix
串口的问题!!!!!!!!!
来源: 互联网 发布时间:2016-09-18
本文导语: [img=http://hi.csdn.net/space-7261964-do-album-picid-609312.html][/img] ARM9开发板向电脑的串口发送数据的结果, 可是为什么向短信猫发送就没反应了。 求解!!!!!!!!!!!!! | 串口相关的程序...
[img=http://hi.csdn.net/space-7261964-do-album-picid-609312.html][/img]
ARM9开发板向电脑的串口发送数据的结果,
可是为什么向短信猫发送就没反应了。
求解!!!!!!!!!!!!!
ARM9开发板向电脑的串口发送数据的结果,
可是为什么向短信猫发送就没反应了。
求解!!!!!!!!!!!!!
|
串口相关的程序还是比较好调试的,记住两点:
1、数据流程如下:从应用程序=>驱动程序=>芯片=>串口线=>芯片=& gt;驱动程序=>应用程序
2、数据最后都被变成方波在串口线上传播。
-------------------------------
所以调试程序时,一般过程是:
1、先看串口线或者DB针脚上有没有数据,这个可以解决掉大多数的硬件问题(包括连接问题和线的问题)而且故障定位速度很快。
2、串口线上有数据的情况下,一般硬件没问题。这时有两种情况:
2.1、如果串口驱动没有改写过的话,那么应用程序一般都能收到一些数据,只不过可能是乱码。如果是乱码的话,则基本是应用程序的串口配置部分有问题。
2.2、如果串口驱动改写过的话,如果应用程序不能收到数据则可能是驱动程序中串口初始化没有做好。如果应用程序能收到数据但是乱码的话,则可能是驱动程序中串口初始化有问题也可能是应用程序的串口配置部分有问题。
3、至于有些串口设备没有反应的问题,也是基于这个思路来分析。在排除了硬件问题后,最大的可能就是服务程序没有运行或者反馈。
1、数据流程如下:从应用程序=>驱动程序=>芯片=>串口线=>芯片=& gt;驱动程序=>应用程序
2、数据最后都被变成方波在串口线上传播。
-------------------------------
所以调试程序时,一般过程是:
1、先看串口线或者DB针脚上有没有数据,这个可以解决掉大多数的硬件问题(包括连接问题和线的问题)而且故障定位速度很快。
2、串口线上有数据的情况下,一般硬件没问题。这时有两种情况:
2.1、如果串口驱动没有改写过的话,那么应用程序一般都能收到一些数据,只不过可能是乱码。如果是乱码的话,则基本是应用程序的串口配置部分有问题。
2.2、如果串口驱动改写过的话,如果应用程序不能收到数据则可能是驱动程序中串口初始化没有做好。如果应用程序能收到数据但是乱码的话,则可能是驱动程序中串口初始化有问题也可能是应用程序的串口配置部分有问题。
3、至于有些串口设备没有反应的问题,也是基于这个思路来分析。在排除了硬件问题后,最大的可能就是服务程序没有运行或者反馈。
|
还是要提醒一下,短信猫的datasheet上一般都没有严格的时序要求(即前一条指令和后一条指令间的间隔时间没有说明,但其实是有的。自己试试就知道),以前做tc35i的时候也遇过同样问题,传到pc上都是正常,一到猫上就没反应。后来调整了发送数据格式就好了。算是一个经验,希望有帮助。