
本帖最后由 wugy315 于 2016-5-14 23:59 编辑
本专业的小伙伴做了个立体车库,明天要参加比赛,托我帮忙写个Android客户端用来控制车库运行。
于是我就粗糙地写了两个APP(五月份比较忙,没有太多时间去优化到完美)。
写的过程中发现网上极难找到用来与单片机通信的Android Application的源码。
所以,虽然写得粗糙,还是决定发到基宅来跟大家分享,以供参考。(此源码也可以用来遥控小车、飞机等等各种硬件设计,原理都是一样的)
这也是为什么发到电子开发科而不发到IT区的原因。
由于设计要求,我写了两个APP。
一个APP的功能是:查看车库信息、存车、取车、复位单片机。
另一个APP的功能只有预约车位、查看车库信息。
APP与单片机使用wifi模块通信(这里使用的wifi模块是USR-TCP-232)
通信协议使用的是Socket TCP/IP。
读写数据使用的是DataInputStream以及DataOutputStream。难点在网络通信和IO流的处理。
顺带一提,除了这种通信方式,跟单片机通信还可以使用蓝牙通信。
我个人是更建议使用蓝牙通信的。因为你连接了wifi模块以后,你的手机就没有网络啦=。=
这样毕竟影响网络功能使用。如果使用蓝牙模块的话,就没有这种弊端了。
下面放APP说明、wifi模块操作手册和源码。
有困难和疑问欢迎回帖交流,不出意外的话,楼主会常驻基宅。都能看到哒。@@15!!
/**
* APP说明
* @author 吴耕宇
*
* 此APP用于查看车库信息、存车、取车、复位单片机。
* 当点击查看车库信息按钮时,客户端向单片机发送"W",接收单片机响应(单片机返回剩余车位数)并更新UI。
* 当点击存车按钮时,客户端向单片机发送"S",接收单片机响应(单片机返回取车密码)并更新UI。
* 当点击取车按钮时,客户端向单片机发送"G",随后在新Actyvity中输入密码,再发送给单片机
* 当密码正确时,单片机返回1,客户端提示正在取车;密码错误时,单片机返回9,客户端提示密码错误。
* 当点击复位按钮时,先校验密码。当密码正确时,向单片机发送"F",单片机执行复位操作。
*/
/**
* APP说明
* @author 吴耕宇
*
* 此APP用于查看车库信息、预约车位。
* 当点击查看车库信息按钮时,客户端向单片机发送"W",接收单片机响应并更新UI。
* 当点击预约按钮时,客户端向单片机发送"Y",接收单片机响应(预约成功时,单片机发回"1",失败时,单片机发回"9")。
* 当预约成功时,客户端开始1分钟倒计时。若倒计时结束,向单片机发送"R"取消预约
*/
wifi模块说明: