1、第第03章章 串口基本应用开发串口基本应用开发战略性信息产业教育服务提供商 联世界 育未来创新物联教育目目 录录4.关键代码解析2.实验原理1.实验描述3.实验实现战略性信息产业教育服务提供商 联世界 育未来创新物联教育1.1.实验描述实验描述n【实验目的】【实验目的】n进一步理解并掌握串口的功能特性;进一步理解并掌握串口的功能特性;n掌握串口的通讯程序编写;掌握串口的通讯程序编写;n进一步掌握进一步掌握Android事件编程机理,掌握事件编程机理,掌握Android的继承实现方法。的继承实现方法。战略性信息产业教育服务提供商 联世界 育未来创新物联教育【实验环境】【实验环境】n硬件:二维码实
2、验箱,移动互联终端,硬件:二维码实验箱,移动互联终端,PC机(至少一个串机(至少一个串口、若干个口、若干个USB口),一根串口数据线(连接移动互联终端口),一根串口数据线(连接移动互联终端的的COM1与二维码实验箱与二维码实验箱COM口),一根口),一根MiniUSB线(连线(连接接PC的的USB接口与移动互联终端的接口与移动互联终端的USB OTG接口)。接口)。n软件:软件:Eclipse4.2平台的平台的Android开发环境。开发环境。n备注:后续实验环境若没有特别列出实验软硬件设备,则备注:后续实验环境若没有特别列出实验软硬件设备,则是与本实验使用相同的软硬件实验环境。是与本实验使用
3、相同的软硬件实验环境。战略性信息产业教育服务提供商 联世界 育未来创新物联教育【实验内容】【实验内容】n设计基本串行通信程序,实现串口的数据通信功能。理设计基本串行通信程序,实现串口的数据通信功能。理解二维码实验箱与解二维码实验箱与Android移动终端之间串口通讯的机制移动终端之间串口通讯的机制,应答模式,一发一收。本实验在移动互联终端的界面效,应答模式,一发一收。本实验在移动互联终端的界面效果分别如图果分别如图3-1所示(需先安装所示(需先安装“03.软件与工具软件与工具02.可可执行程序执行程序安卓端安卓端”中的中的apk程序,第一种方法:可以使程序,第一种方法:可以使用第三方的用第三方
4、的Android手机连接助手对手机连接助手对apk文件的安装;第文件的安装;第二种方法:可以将二种方法:可以将apk文件拷贝到文件拷贝到SD卡中,在卡中,在Android系统中使用文件管理器进行安装)。系统中使用文件管理器进行安装)。n 1、可对通讯串口的端口、波特率进行设置,本课程实验、可对通讯串口的端口、波特率进行设置,本课程实验过程中一般情况串口选择的是过程中一般情况串口选择的是COM1,波特率选择的,波特率选择的115200。战略性信息产业教育服务提供商 联世界 育未来创新物联教育战略性信息产业教育服务提供商 联世界 育未来创新物联教育n 2、串口基本应用开发默认的使用的是、串口基本应
5、用开发默认的使用的是“软解码软解码”模块进行的实验,所以在移动互联设备与二维码模块进行的实验,所以在移动互联设备与二维码实验箱通过串口线相连后需要在二维码实验箱的实验箱通过串口线相连后需要在二维码实验箱的显示屏上点击显示屏上点击“软解码软解码”,如图,如图3-2所示。所示。战略性信息产业教育服务提供商 联世界 育未来创新物联教育n 3、点击图、点击图3-1中的中的“打开串口打开串口”,如果成功,则,如果成功,则在右上方会出现在右上方会出现“打开串口成功打开串口成功”的提示。(注的提示。(注意:以后的实验过程中在打开串口前一定要选中意:以后的实验过程中在打开串口前一定要选中图图3-2所示的相应模
6、块。)所示的相应模块。)n 4、在发送文本框输入字符,单击发送按钮,可将、在发送文本框输入字符,单击发送按钮,可将字符发送到二维码实验箱。字符发送到二维码实验箱。n 5、接收来自二维码实验箱反馈的字符。、接收来自二维码实验箱反馈的字符。战略性信息产业教育服务提供商 联世界 育未来创新物联教育目目 录录4.关键代码解析2.实验原理1.实验描述3.实验实现战略性信息产业教育服务提供商 联世界 育未来创新物联教育2.2.实验原理实验原理n 1串口概念串口概念n 串口是计算机上一种非常通用设备通信的协议(不要与通用串行总串口是计算机上一种非常通用设备通信的协议(不要与通用串行总线线Universal
7、Serial Bus或者或者USB混淆)。大多数计算机包含两个基混淆)。大多数计算机包含两个基于于RS232的串口。串口同时也是仪器仪表设备通用的通信协议;很多的串口。串口同时也是仪器仪表设备通用的通信协议;很多GPIB兼容的设备也带有兼容的设备也带有RS-232口。同时,串口通信协议也可以用于口。同时,串口通信协议也可以用于获取远程采集设备的数据。获取远程采集设备的数据。n 串口通信的概念非常简单,串口按位(串口通信的概念非常简单,串口按位(bit)发送和接收字节。尽管)发送和接收字节。尽管比按字节(比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数)的并行通信慢,但是串口可以
8、在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。比如比如IEEE488定义并行通行状态时,规定设备线总长不得超过定义并行通行状态时,规定设备线总长不得超过20米,米,并且任意两个设备间的长度不得超过并且任意两个设备间的长度不得超过2米;而对于串口而言,长度可米;而对于串口而言,长度可达达1200米。米。战略性信息产业教育服务提供商 联世界 育未来创新物联教育n 典型地,串口用于典型地,串口用于ASCII码字符的传输。通信使用码字符的传输。通信使用3根线完成:(根线完成:(1)地线,(地线,(2)发送线,(
9、)发送线,(3)接收线。由于串口通信是异步的,端口能)接收线。由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据。其他线用于握手够在一根线上发送数据同时在另一根线上接收数据。其他线用于握手,但是不是必须的。串口通信最重要的参数是波特率、数据位、停止,但是不是必须的。串口通信最重要的参数是波特率、数据位、停止位和奇偶校验。对于两个进行通行的端口,以下这些参数必须匹配。位和奇偶校验。对于两个进行通行的端口,以下这些参数必须匹配。n a,波特率:这是一个衡量通信速度的参数。它表示每秒钟传送的,波特率:这是一个衡量通信速度的参数。它表示每秒钟传送的bit的个数。例如的个数。例如3
10、00波特表示每秒钟发送波特表示每秒钟发送300个个bit。当我们提到时钟周。当我们提到时钟周期时,我们就是指波特率例如如果协议需要期时,我们就是指波特率例如如果协议需要4800波特率,那么时钟波特率,那么时钟是是4800Hz。这意味着串口通信在数据线上的采样率为。这意味着串口通信在数据线上的采样率为4800Hz。通。通常电话线的波特率为常电话线的波特率为14400,28800和和36600。波特率可以远远大于。波特率可以远远大于这些值,但是波特率和距离成反比。高波特率常常用于放置的很近的这些值,但是波特率和距离成反比。高波特率常常用于放置的很近的仪器间的通信,典型的例子就是仪器间的通信,典型的
11、例子就是GPIB设备的通信。设备的通信。战略性信息产业教育服务提供商 联世界 育未来创新物联教育b,数据位:这是衡量通信中实际数据位的参数。当计算机,数据位:这是衡量通信中实际数据位的参数。当计算机发送一个信息包,实际的数据不一定是发送一个信息包,实际的数据不一定是8位的,标准的值是位的,标准的值是5、7和和8位。如何设置取决于你想传送的信息。比如,标准的位。如何设置取决于你想传送的信息。比如,标准的ASCII码是码是0127(7位)。扩展的位)。扩展的ASCII码是码是0255(8位)。如果数据使用简单的文本(标准位)。如果数据使用简单的文本(标准ASCII码),那么每码),那么每个数据包使
12、用个数据包使用7位数据。每个包是指一个字节,包括开始位数据。每个包是指一个字节,包括开始/停停止位,数据位和奇偶校验位。由于实际数据位取决于通信协止位,数据位和奇偶校验位。由于实际数据位取决于通信协议的选取,术语议的选取,术语“包包”指任何通信的情况。指任何通信的情况。战略性信息产业教育服务提供商 联世界 育未来创新物联教育n c,停止位:用于表示单个包的最后一位。典型的值为,停止位:用于表示单个包的最后一位。典型的值为1,1.5和和2位。由于数据是在传输线上定时的,并且每一个设备位。由于数据是在传输线上定时的,并且每一个设备有其自己的时钟,很可能在通信中两台设备间出现了小小的有其自己的时钟,
13、很可能在通信中两台设备间出现了小小的不同步。因此停止位不仅仅是表示传输的结束,并且提供计不同步。因此停止位不仅仅是表示传输的结束,并且提供计算机校正时钟同步的机会。适用于停止位的位数越多,不同算机校正时钟同步的机会。适用于停止位的位数越多,不同时钟同步的容忍程度越大,但是数据传输率也越慢。时钟同步的容忍程度越大,但是数据传输率也越慢。战略性信息产业教育服务提供商 联世界 育未来创新物联教育n d,奇偶校验位:在串口通信中一种简单的检错方式。有,奇偶校验位:在串口通信中一种简单的检错方式。有四种检错方式:偶、奇、高和低。当然没有校验位也是可四种检错方式:偶、奇、高和低。当然没有校验位也是可以的。
14、对于偶和奇校验的情况,串口会设置校验位(数据以的。对于偶和奇校验的情况,串口会设置校验位(数据位后面的一位),用一个值确保传输的数据有偶数或者奇位后面的一位),用一个值确保传输的数据有偶数或者奇数逻辑高位。例如,如果数据是数逻辑高位。例如,如果数据是011,那么对于偶校验,那么对于偶校验,校验位为校验位为0,保证逻辑高的位数是偶数个。如果是奇校验,保证逻辑高的位数是偶数个。如果是奇校验,校验位位,校验位位1,这样就有,这样就有3个逻辑高位。高位和低位不真个逻辑高位。高位和低位不真正的检查数据,简单置位逻辑高或者逻辑低校验。这样使正的检查数据,简单置位逻辑高或者逻辑低校验。这样使得接收设备能够知
15、道一个位的状态,有机会判断是否有噪得接收设备能够知道一个位的状态,有机会判断是否有噪声干扰了通信或者是否传输和接收数据是否不同步。声干扰了通信或者是否传输和接收数据是否不同步。战略性信息产业教育服务提供商 联世界 育未来创新物联教育n 2、RS-232介绍介绍n RS-232(ANSI/EIA-232标准)是标准)是IBM-PC及其及其兼容机上的串行连接标准。可用于许多用途,比兼容机上的串行连接标准。可用于许多用途,比如连接鼠标、打印机或者如连接鼠标、打印机或者Modem,同时也可以,同时也可以接工业仪器仪表。用于驱动和连线的改进,实际接工业仪器仪表。用于驱动和连线的改进,实际应用中应用中RS
16、-232的传输长度或者速度常常超过标准的传输长度或者速度常常超过标准的值。的值。RS-232只限于只限于PC串口和设备间点对点的串口和设备间点对点的通信。通信。RS-232串口通信最远距离是串口通信最远距离是50英尺。英尺。战略性信息产业教育服务提供商 联世界 育未来创新物联教育n DB-9针连接头针连接头n-n 1 2 3 4 5/n 6 7 8 9/n-n 从计算机连出的线的截面。从计算机连出的线的截面。n RS-232针脚的功能:针脚的功能:战略性信息产业教育服务提供商 联世界 育未来创新物联教育n 数据:数据:n TXD(pin 3):串口数据输出):串口数据输出n RXD(pin 2
17、):串口数据输入):串口数据输入n 握手:握手:n RTS(pin 7):发送数据请求):发送数据请求n CTS(pin 8):清除发送):清除发送n DSR(pin 6):数据发送就绪):数据发送就绪n DCD(pin 1):数据载波检测):数据载波检测n DTR(pin 4):数据终端就绪):数据终端就绪战略性信息产业教育服务提供商 联世界 育未来创新物联教育n 地线:地线:n GND(pin 5):地线):地线n 其他其他n RI(pin 9):铃声指示):铃声指示战略性信息产业教育服务提供商 联世界 育未来创新物联教育n 3、RS-422介绍介绍n RS-422(EIA RS-422-
18、A Standard)是)是Apple的的Macintosh计算机的串口连接标准。计算机的串口连接标准。RS-422使用差分信号,使用差分信号,RS-232使用非平衡参考地的信号使用非平衡参考地的信号。差分传输使用两根线发送和接收信号,对比。差分传输使用两根线发送和接收信号,对比RS-232,它能更好的抗噪声和有更远的传输距离,它能更好的抗噪声和有更远的传输距离。在工业环境中更好的抗噪性和更远的传输距离。在工业环境中更好的抗噪性和更远的传输距离是一个很大的优点是一个很大的优点战略性信息产业教育服务提供商 联世界 育未来创新物联教育n 4、RS-485介绍介绍n RS-485(EIA-485标准
19、)是标准)是RS-422的改进,因为它增加的改进,因为它增加了设备的个数,从了设备的个数,从10个增加到个增加到32个,同时定义了在最大个,同时定义了在最大设备个数情况下的电气特性,以保证足够的信号电压。有设备个数情况下的电气特性,以保证足够的信号电压。有了多个设备的能力,你可以使用一个单个了多个设备的能力,你可以使用一个单个RS-422口建立口建立设备网络。出色抗噪和多设备能力,在工业应用中建立连设备网络。出色抗噪和多设备能力,在工业应用中建立连向向PC机的分布式设备网络、其他数据收集控制器、机的分布式设备网络、其他数据收集控制器、HMI或者其他操作时,串行连接会选择或者其他操作时,串行连接
20、会选择RS-485。RS-485是是RS-422的超集,因此所有的的超集,因此所有的RS-422设备可以被设备可以被RS-485控制。控制。RS-485可以用超过可以用超过4000英尺的线进行串行通信。英尺的线进行串行通信。战略性信息产业教育服务提供商 联世界 育未来创新物联教育n DB-9 引脚连接引脚连接n-n 1 2 3 4 5/n 6 7 8 9/n-n 从计算机连出的线的截面。从计算机连出的线的截面。战略性信息产业教育服务提供商 联世界 育未来创新物联教育n RS-485和和RS-422的引脚的功能:的引脚的功能:n 数据:数据:TXD+(pin 8),),TXD-(pin 9),)
21、,RXD+(pin 4),),RXD-(pin 5)n 握手:握手:RTS+(pin 3),),RTS-(pin 7),),CTS+(pin 2),),CTS-(pin 6)n 地线:地线:GND(pin 1战略性信息产业教育服务提供商 联世界 育未来创新物联教育n 5、握手、握手n RS-232通行方式允许简单连接三线:通行方式允许简单连接三线:Tx、Rx和和地线。但是对于数据传输,双方必须对数据定时地线。但是对于数据传输,双方必须对数据定时采用使用相同的波特率。尽管这种方法对于大多采用使用相同的波特率。尽管这种方法对于大多数应用已经足够,但是对于接收方过载的情况这数应用已经足够,但是对于接
22、收方过载的情况这种使用受到限制。这时需要串口的握手功能。在种使用受到限制。这时需要串口的握手功能。在这一部分,我们讨论三种最常用的这一部分,我们讨论三种最常用的RS-232握手形握手形式:软件握手、硬件握手和式:软件握手、硬件握手和Xmodem。战略性信息产业教育服务提供商 联世界 育未来创新物联教育n a,软件握手:我们讨论的第一种握手是软件握手,软件握手:我们讨论的第一种握手是软件握手。通常用在实际数据是控制字符的情况,类似于。通常用在实际数据是控制字符的情况,类似于GPIB使用命令字符串的方式。必须的线仍然是三使用命令字符串的方式。必须的线仍然是三根:根:Tx,Rx和地线,因为控制字符在
23、传输线上和和地线,因为控制字符在传输线上和普通字符没有区别,函数普通字符没有区别,函数SetXModem允许用户允许用户使能或者禁止用户使用两个控制字符使能或者禁止用户使用两个控制字符XON和和OXFF。这些字符在通信中由接收方发送,使发送。这些字符在通信中由接收方发送,使发送方暂停。方暂停。战略性信息产业教育服务提供商 联世界 育未来创新物联教育n 例如:假设发送方以高波特率发送数据。在传输例如:假设发送方以高波特率发送数据。在传输中,接收方发现由于中,接收方发现由于CPU忙于其他工作,输入忙于其他工作,输入buffer已经满了。为了暂时停止传输,接收方发已经满了。为了暂时停止传输,接收方发
24、送送XOFF,典型的值是十进制,典型的值是十进制19,即十六进制,即十六进制13,直到输入,直到输入buffer空了。一旦接收方准备好接收空了。一旦接收方准备好接收,它发送,它发送XON,典型的值是十进制,典型的值是十进制17,即十六进,即十六进制制11,继续通信。输入,继续通信。输入buffer半满时,半满时,LabWindows发送发送XOFF。此外,如果。此外,如果 XOFF传传输被打断,输被打断,LabWindows会在会在buffer达到达到75和和90时发送时发送XOFF。显然,发送方必须遵循此。显然,发送方必须遵循此守则以保证传输继续守则以保证传输继续战略性信息产业教育服务提供商
25、 联世界 育未来创新物联教育n b,硬件握手:第二种是使用硬件线握手。和,硬件握手:第二种是使用硬件线握手。和Tx和和Rx线一线一样,样,RTS/CTS和和DTR/DSR一起工作,一个作为输出,另一起工作,一个作为输出,另一个作为输入。第一组线是一个作为输入。第一组线是RTS(Request to Send)和)和CTS(Clear to Send)。当接收方准备好接收数据,它)。当接收方准备好接收数据,它置高置高RTS线表示它准备好了,如果发送方也就绪,它置高线表示它准备好了,如果发送方也就绪,它置高CTS,表示它即将发送数据。另一组线是,表示它即将发送数据。另一组线是DTR(Data Te
26、rminal Ready)和)和DSR(Data Set Ready)。)。这些线主要用于这些线主要用于Modem通信。例如:当通信。例如:当Modem已经准已经准备好接收来自备好接收来自PC的数据,它置高的数据,它置高DTR线,表示和电话线线,表示和电话线的连接已经建立。读取的连接已经建立。读取DSR线置高,线置高,PC机开始发送数据机开始发送数据。一个简单的规则是。一个简单的规则是DTR/DSR用于表示系统通信就绪,用于表示系统通信就绪,而而RTS/CTS用于单个数据包的传输。用于单个数据包的传输。战略性信息产业教育服务提供商 联世界 育未来创新物联教育n c,XModem握手:最后讨论的
27、握手叫做握手:最后讨论的握手叫做XModem文件传输协议。这个协议在文件传输协议。这个协议在Modem通通信中非常通用。尽管它通常使用在信中非常通用。尽管它通常使用在Modem通信通信中,中,XModem协议也能够直接在其他遵循这个协协议也能够直接在其他遵循这个协议的设备通信中使用。在议的设备通信中使用。在LabWindows中,实际中,实际的的XModem应用对用户隐藏了。只要应用对用户隐藏了。只要PC和其他和其他设备使用设备使用XModem协议,在文件传输中就使用协议,在文件传输中就使用LabWindows的的XModem函数。函数是函数。函数是XModemConfig,XModemSen
28、d和和XModemReceive。战略性信息产业教育服务提供商 联世界 育未来创新物联教育n XModem使用如下参数的协议:使用如下参数的协议:start_of_data、end_of_data、neg_ack、wait_delay、start_delay、max_tries、packet_size。这些参数需要通信双方认定,标准的。这些参数需要通信双方认定,标准的XModem有一个标准的定义有一个标准的定义:然而,可以通过:然而,可以通过XModemConfig函数修改,以满足具体需要。这函数修改,以满足具体需要。这些参数的使用方法由接收方发送的字符些参数的使用方法由接收方发送的字符neg
29、_ack确定。这通知发送方确定。这通知发送方使其准备接收数据。它开始尝试发送,有一个超时参数使其准备接收数据。它开始尝试发送,有一个超时参数start_delay;当超时的尝试超过;当超时的尝试超过max_tries次数,或者收到接收方发送的次数,或者收到接收方发送的 end_of_data,发送方停止尝试。如果从发送方收到,发送方停止尝试。如果从发送方收到start_of_data,接收方将读取后继信息数据包。包中含有包的数目、包数目的补码,接收方将读取后继信息数据包。包中含有包的数目、包数目的补码作为错误校验、作为错误校验、packet_size字节大小的实际数据包和进一步错误检字节大小的
30、实际数据包和进一步错误检查的求和校验值。在读取数据后,接收方会调用查的求和校验值。在读取数据后,接收方会调用wait_delay,然后,然后向发送方发送响应。向发送方发送响应。战略性信息产业教育服务提供商 联世界 育未来创新物联教育如果发送方没有收到响应,它会重新发送数据包,如果发送方没有收到响应,它会重新发送数据包,直到收到响应或者超过重发次数的最大值直到收到响应或者超过重发次数的最大值max_tries。如果一直没有收到响应,发送方通知。如果一直没有收到响应,发送方通知用户传输数据失败。由于数据必须以用户传输数据失败。由于数据必须以packet_size个字节按包发送,当最后一个数据包发送
31、时,如果个字节按包发送,当最后一个数据包发送时,如果数据不够放满一个数据包,后面会填充数据不够放满一个数据包,后面会填充ASCII码码NULL(0)字节。这导致接收的数据比原数据多。)字节。这导致接收的数据比原数据多。在在XModem情况下一定不要使用情况下一定不要使用XON/XOFF,因,因为为XModem发送方发出包的数目很可能增加到发送方发出包的数目很可能增加到XON/OFF控制字符的值,从而导致通信故障。控制字符的值,从而导致通信故障。战略性信息产业教育服务提供商 联世界 育未来创新物联教育n 6.串口的基本知识串口的基本知识n 串口数据线如图串口数据线如图3-3所示。所示。战略性信息
32、产业教育服务提供商 联世界 育未来创新物联教育n 本指导书所涉及的串口通讯传输格式均为本指导书所涉及的串口通讯传输格式均为8位数据位数据位,位,1位停止位,无校验位;波特率默认位停止位,无校验位;波特率默认115200bps。n 串口通讯的处理通讯方式的有串口通讯的处理通讯方式的有“应答模式应答模式”和和“响应模式响应模式”两种方式:两种方式:n应答模式:就是发送后等待一定时间后接收,应答模式:就是发送后等待一定时间后接收,根据需要判断接收数据是否有效。(上下位机控根据需要判断接收数据是否有效。(上下位机控制使用比较多)。制使用比较多)。n响应模式:是缓冲区内有数据就响应事件响应模式:是缓冲区
33、内有数据就响应事件,接收接收处理。处理。战略性信息产业教育服务提供商 联世界 育未来创新物联教育n 串口通讯步骤如图串口通讯步骤如图3-4所示。所示。战略性信息产业教育服务提供商 联世界 育未来创新物联教育n 7、code库下的库下的Uart类说明类说明n(1)public int openUart(int com,int baudrate)n 功能描述功能描述:打开串口打开串口n 参数:参数:com 串口号串口号 1 表示表示com1,2表示表示com2,baudrate波特率波特率n 返回:串口句柄号返回:串口句柄号n(2)public void closeUart()n 功能:关闭串口功
34、能:关闭串口战略性信息产业教育服务提供商 联世界 育未来创新物联教育n(3)public void sendCommand(byte cmd)n 函数名称函数名称:sendCommandn 功能描述功能描述:发送指令发送指令 战略性信息产业教育服务提供商 联世界 育未来创新物联教育目目 录录4.关键代码解析2.实验原理1.实验描述3.实验实现战略性信息产业教育服务提供商 联世界 育未来创新物联教育3.3.实验实现实验实现n 实验步骤:实验步骤:n 第一步:第一步:硬件连接硬件连接n(1)一根串口数据线,连接移动互联终端与二维码实验)一根串口数据线,连接移动互联终端与二维码实验箱箱;n(2)一根
35、)一根USB线,连接线,连接PC的的USB接口与移动互联终端的接口与移动互联终端的USB OTG接口。接口。战略性信息产业教育服务提供商 联世界 育未来创新物联教育n 第二步:创建第二步:创建“AndroidCODE_Demo2”基本基本应用程序。应用程序。n 在在Eclipse中,创建中,创建“AndroidCODE_Demo2”项目。在项目。在Android应用程序目录结构中,展开应用程序目录结构中,展开“reslayout”,打开打开“activity_setting.xml”与与“s_decoding_image.xml”文件。按照图文件。按照图3-1所示的所示的LinearLayou
36、t布局效果添加控件,并按照布局效果添加控件,并按照表表3-1修改各控件属性。修改各控件属性。战略性信息产业教育服务提供商 联世界 育未来创新物联教育战略性信息产业教育服务提供商 联世界 育未来创新物联教育n 第三步:添加外部第三步:添加外部jar文件。将本书配套的资料文件。将本书配套的资料“03.软件与工具软件与工具05.类库类库Android端端”中的中的“newlandCode.jar”,“armeabi文文件夹件夹”两个文件拷贝到程序的两个文件拷贝到程序的“libs”目录下(在目录下(在Eclipse中,展开项中,展开项目文件,右击目文件,右击“libs”目录,点击目录,点击“Paste
37、”进行粘贴),并按进行粘贴),并按F5刷刷新。其中新。其中armeabi目录包含了目录包含了libSoftDecodingLinuxc.so,libHardDecodingLinuxc.so,libnlthmprn.so文件。文件。n 第四步:展开第四步:展开“srccom.newland.androidcode_demo2”,打开打开“CODE2_Activity.java”文件。参照参考代码文件。参照参考代码“03.软件与工具软件与工具03.分章节代码分章节代码Android端端”添加代码,实现程序的功能。添加代码,实现程序的功能。战略性信息产业教育服务提供商 联世界 育未来创新物联教育n
38、 第五步:调试程序,在第五步:调试程序,在Eclipse中,右击中,右击“AndroidRFID_Demo2”项目,在弹出的菜单项目,在弹出的菜单上执行上执行“Run ASAndroid Application”命命令,如图令,如图3-5所示。此时会弹出如图所示。此时会弹出如图3-6所示的界所示的界面,选择运行设备,单击面,选择运行设备,单击“OK”按钮,则程序将按钮,则程序将会运行在移动互联终端的界面上,以便进行系统会运行在移动互联终端的界面上,以便进行系统的测试。的测试。战略性信息产业教育服务提供商 联世界 育未来创新物联教育图图3-5 调试程序调试程序战略性信息产业教育服务提供商 联世界
39、 育未来创新物联教育图图3-6 选择运行设备选择运行设备战略性信息产业教育服务提供商 联世界 育未来创新物联教育n 第六步:在运行调试的同时,在移动互联终端也第六步:在运行调试的同时,在移动互联终端也会安装上该测试的会安装上该测试的DEMO程序,如图程序,如图3-7所示,所示,则在以后的系统测试过程中也可以直接点击移动则在以后的系统测试过程中也可以直接点击移动互联终端上的互联终端上的“CODE_Demo2”。n 第七步:测试系统,检测所有系统功能能否正常第七步:测试系统,检测所有系统功能能否正常运行。运行。战略性信息产业教育服务提供商 联世界 育未来创新物联教育目目 录录4.关键代码解析2.实
40、验原理1.实验描述3.实验实现战略性信息产业教育服务提供商 联世界 育未来创新物联教育关键代码解析关键代码解析战略性信息产业教育服务提供商 联世界 育未来创新物联教育战略性信息产业教育服务提供商 联世界 育未来创新物联教育战略性信息产业教育服务提供商 联世界 育未来创新物联教育战略性信息产业教育服务提供商 联世界 育未来创新物联教育战略性信息产业教育服务提供商 联世界 育未来创新物联教育战略性信息产业教育服务提供商 联世界 育未来创新物联教育战略性信息产业教育服务提供商 联世界 育未来创新物联教育战略性信息产业教育服务提供商 联世界 育未来创新物联教育战略性信息产业教育服务提供商 联世界 育未来创新物联教育战略性信息产业教育服务提供商 联世界 育未来创新物联教育