arrays.xml : 资源数组;colors.xml : 颜色值;dimens.xml : 像素值; strings.xml :字符串值;tyles.xml : 样式值。此文件夹,也有屏幕适配作用。比如:dimens在不同分辨率下的值。同样的是加-1280x720这样的后缀。对于strings,有各种语言的版本对应。默认为英文。中文的文件夹名字应该是:values-zh-rCN,values-zh-rTW。
(7) raw文件夹:存放不需要系统编译成二进制的文件,例如字体文件等同assets文件夹类似。
(8) xml文件夹存放xml文件。
以下是手机端实现功能的程序流程图如图5.2所示。
图5.2 蓝牙通信流程图
26
一、 手机界面程序设计
在设置手机界面的时候,在Eclipse集成开发环境下,首先新建一个android项目工程,兴建路径是File—New—android project—project name 选择android 1.6版本,工程名命名为Bluetooth-car,选择Create Activity,则自动创建了一个Activity.在创建Activity时,需要注意一下四个要点:
1、一个Activity就是一个类,并且这个类要继承Activity。
2、需要复写Oncreate方法(当一个Activity第一次运行显示在手机上或者虚拟机上的时就会调用Oncreate方法)。
3、每一个Activity都需要在Androidmanifast.xml文件当中配置。 4、为Activity添加必要的控件。如图5.3所示,在制作蓝牙小车手机界面的时候,我用到了Textview 文本控件和 Butten按钮控件,并且在添加控件时采用相对布局形式[18、19]。
图5.3 手机界面图
两个Textview文本控件分别命名为:重庆邮电大学自动化学院和蓝牙控制系统,在layout布局文件下可以任意改变控件的位置、字体的大小、背景图片。改变背景图片的方法为:首先将需要用到的背景图片,分别拖入到drawable下,高中低分辨率都拖入一张,以便不同分辨率的手机识别,然后在layout布局文
27
件下,打开Activity buletooth-car文件,调用添加安卓手机界面背景的语句为 android:background=\ >,就能得到我们所修改的背景图片。
二、手机监听程序设计
在Eclipes开发平台上,首先在Layout文件中采用相对布局的形式设计完成手机界面以后,就要考虑为我们的每个Butten按键绑定监听程序,以实现在每个按键按下时,就能通过手机蓝牙发送相应的数据到小车蓝牙接收模块。首先在Layout文件中,每添加一个控件,都会为这个控件设置一个ID,(如android:id=\),然后在R.JAVA文件就会自动生成一个ID地址。然后在主程序里面编写监听程序,当按键按下的时候,通过监听按键的ID地址的不同,采用switch结构,跳转到不同的case里,向小车蓝牙模块发送不同的数据。在程序里直接写进小车蓝牙模块的蓝牙地址(00:12:10:31:01:70),当程序开始运行时,将会自动搜索该地址的蓝牙芯片,当进行过一次配对连接以后,将会记忆该地址,以后每次只要打开手机界面,开始运行时就会自动进行搜索配对连接好[20、21]。 * 按钮点击事件.
* @param v */
public void onClick(View v) {
switch (v.getId()) { //转写按钮 case R.id.button1:
message[0] = (byte) 0x41; vibrator();
Toast.makeText(this, \前进\bluesend(message); break;
//设置按钮 case R.id.button2:
message[0] = (byte) 0x44; vibrator();
28
}
}
Toast.makeText(this, \后退\bluesend(message); break;
message[0] = (byte) 0x43; vibrator();
Toast.makeText(this, \左转\bluesend(message); break;
message[0] = (byte) 0x42; vibrator();
Toast.makeText(this, \右转\bluesend(message); break;
message[0] = (byte) 0x61; vibrator();
Toast.makeText(this, \停止\bluesend(message); break; break;
case R.id.button3:
case R.id.button4:
case R.id.button5:
default:
第三节 本章小结
本章主要介绍本系统的软件设计,其中就包括单片机端的C语言程序设计和Android手机端的JAVA程序设计。由于我们在本科阶段都只接触过C语言,对JAVA语言从未涉及过,所以在做起来的时候遇到了很多的困难。首先对
29
JAVA语言的开发环境Eclipes的使用不熟悉,对新接触语言的语法不熟悉。后来通过查找资料和对一些做好的工程例子的学习以后,有了对JAVA语言的大致的了解,就开始先学习着做简单的手机界面的程序。然后通过网上找到一些相关的程序进行修改以及在指导老师的指导和修改下,完成了手机端的软件设计。
30