安卓端与开发板通信
安卓端与开发板通信
1、由于我们本实验使用到的是串口2,,即串口2给wifi核心板使用,改变跳线帽,让原来串口2是提供给zigbee使用的,改为给wifi使用.
2、添加ser2net应用程序
上一次我们成功的让驱动程序支持了串口 2,并且做了简单的测试。接下来, 我们就为串口 2 添加一个应用程序,从而实现 Wi-Fi 串口
# cd /openwrt/trunk/
# make menuconfig
Network -> ser2net 保存退出
# make V=99
3、烧录固件,进入系统配置wifi串口
既然是 Wi-Fi 串口, 那么我们就可以理解为它由两部分组成, 一部分是网络编程器
的 TCP 服务器,用于接收客户端通过 Wi-Fi 传来的数据;另一部分就是串口,用于将 TCP
服务器接收到的数据通过串口发送出去。既然是 TCP 服务器,那么我们需要设置它的 IP
地址和端口号。既然是串口,那么我们需要设置它的波特率等参数。那么,这些参数,我们
怎么来设置呢?通过修改 ser2net.conf 这个配置文件来实现,位于开发板上的/etc 目录
下。将上面编译出来的固件,重新烧写到开发板上面,然后上电启动,进入/etc 目录
# cd /etc
# vi ser2net.conf
查看信息可配置
# <TCP port>:<state>:<timeout>:<device>:<options>
<TCP port>:用于设置 TCP 服务器要监听的端口号;
<state>:用于设置 TCP 服务器的状态;
<timeout>:用于设置超时时间,如果设置为 0,表示不开启超时时间;
<device>:用于选择使用哪个串口设备;
<options>:用于设置波特率、校验位等参数。
如果我想让我们的 Wi-Fi 串口实现监听 8002 这个端口,然后通过串口 2 输出, 波特率 是 115200
8002:raw:0:/dev/ttyS0:115200
保存退出,reboot
测试wifi串口
1). 将开发板的串口 2 和电脑的串口连接起来,然后打开串口助手,设置好相应的串口
2). 启动 ser2net 软件,只需要在调试串口测,输入如下命令即可: # ser2net
3). 手机连接上开发板发出的 WiFi 信号 OpenWrt。
4). 启动“网络调试助手”软件,这个安卓端的apk我们在本实验的”附加:安卓端”文件 夹中有提供。
开机自启动wifi串口
# vi /etc/rc.local
然后在 exit0 前面加入一条 ser2net,详情如下。
# Put your custom commands here that should be executed once
# the system init finished. By default this file does nothing.
ser2net
exit 0
注意:发现好多人调试不通,原因大概有以下两个问题:
1.短路帽位置不对,请仔细看手册最上面的图1
2.波特率设置不对,显示乱码或无输出
3.手机建立 tcp 客户端显示连接失败,一般是端口号不对,请用 ps 查下正确的端口号再连 接。
还有一种就是 ser2net 没有启动,最好再做一次此实验,