1:检查AP端串口配置是否ok:
a:高通平台查看DMA传输:
echo 1 > /sys/kernel/debug/msm_serial_hsl/loopback.0 //打开回环开关
adb shell cat /dev/ttyHSL1
另起窗口
# adb shell
# echo 11111111 > /dev/ttyHSL1
若DMA通道ok,控制台会循环显示;
b:查看uart gpio是否ok:
tx高电平、rfr为低电平,rx,cts为输入;
如果tx为低电平,那么gpio肯定没有配置好,再次检查gpio配置问题;
如果以上2步都ok,那么UART应该ok了,再次检查:
adb shell cat /dev/ttyHSL1
将TX与RX短接;
另起窗口
# adb shell
# echo 11111111 > /dev/ttyHSL1
循环显示那么恭喜UART功能配置好了。
2:Termios参数配置:
影响通讯数据格式的关键
几个参数:
1:波特率-speed,通常
115200,最高4M;
2:奇偶校验-Parity,通
常为None;
3:数据位-Data,通常
8bit;
4:停止位-Stopbits,通
常1bit;
一般情况下默认为115200 8N1,也就是波特率115200,8bit数据位,无奇偶校验,1bit停止位。
为了使得AP可以与模块串口通讯,必须先了解模块的termios设置。
Ap端termios设置:
首先应用打开串口时会设置termios:
a:高通平台查看DMA传输:
echo 1 > /sys/kernel/debug/msm_serial_hsl/loopback.0 //打开回环开关
adb shell cat /dev/ttyHSL1
另起窗口
# adb shell
# echo 11111111 > /dev/ttyHSL1
若DMA通道ok,控制台会循环显示;
b:查看uart gpio是否ok:
tx高电平、rfr为低电平,rx,cts为输入;
如果tx为低电平,那么gpio肯定没有配置好,再次检查gpio配置问题;
如果以上2步都ok,那么UART应该ok了,再次检查:
adb shell cat /dev/ttyHSL1
将TX与RX短接;
另起窗口
# adb shell
# echo 11111111 > /dev/ttyHSL1
循环显示那么恭喜UART功能配置好了。
2:Termios参数配置:
影响通讯数据格式的关键
几个参数:
1:波特率-speed,通常
115200,最高4M;
2:奇偶校验-Parity,通
常为None;
3:数据位-Data,通常
8bit;
4:停止位-Stopbits,通
常1bit;
一般情况下默认为115200 8N1,也就是波特率115200,8bit数据位,无奇偶校验,1bit停止位。
为了使得AP可以与模块串口通讯,必须先了解模块的termios设置。
Ap端termios设置:
首先应用打开串口时会设置termios: