APP下载

ARDUINIO开发板与ANDROID手机蓝牙通信的设计与实现

2016-10-18朱鹏

电脑知识与技术 2016年21期
关键词:防火墙网络安全

朱鹏

"

"

摘要:随着嵌入式的应用与发展,越来越多的计算机爱好者参与其中。但是硬件开发板作为下位机,ANDROID手机移动端作为上位机,如何实现二者连接一直是越来越多的软硬件开发者感兴趣的话题。该文针对当前非常流行的ARDUINO UNO R3开发板,提供一种新的思路和方法,设计简单易行的方案,用手机自动搜索开发板上蓝牙设备实现软硬件的连接并进行相互通信。

关键词:嵌入式;移动端;蓝牙

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)21-0065-02

当前在信息化快速发展的大潮中,计算机不仅在科学研究、军事和工业领域大量应用,而且也越来越多的应用到我们每个人的日常生活当中。随着嵌入式产品的大力发展和进一步推广,嵌入式设备影响到我们生活的方方面面,小到遥控器、PDA等数字化产品,大到数字机床、车载电子设备,都离不开嵌入式产品的应用。

1 硬件设备介绍

1.1 Arduino UNO R3开发板

本次研究平台基于开源Arduino UNO R3开发板。Arduino UNO R3是2012年最新推出的一款易用型开源控制器,硬件上与之前Arduino UNO相比并没有大的变动,最大不同在于USB转串口电路部分,改用的是一块ATMega16U2单片机。除了之前所有的特点外,这块板可以使用ATmega16U2替代了8U2。这允许更快的转换速度和更大内存,Linux或者Mac不需要驱动程序,并且有能力外接键盘、鼠标、摇杆等。

Arduino是一个基于开源的、有简单的I/O接口的物理计算平台。Arduino可以用于独立做项目开发的控制核心,也可以与PC进行直接的 USB连接完成与电脑间的互动。Arduino开源IDE开发环境可以通过相关文档的链接直接免费下载(支持Window,Linux以及Max系统)。

1.2 HC-05蓝牙模块

本次研究使用HC-05主从一体蓝牙串口模块作为Arduino UNO R3开发板和ANDROID手机进行无线通信的设备。

HC-05是一款主从一体可以设置的蓝牙芯片,具有传统蓝牙技术的功能,模块的接口有串口、spi接口和usb接口。HC-05经过测试在室内可达10m以内的通信距离。在实际使用的过程中,当蓝牙设备与蓝牙设备配对连接成功后,我们可以忽视蓝牙内部的通信协议,直接将蓝牙当做串口用。当建立连接,两设备共同使用一通道也就是同一个串口,一个设备发送数据到通道中,另外一个设备便可以接收通道中的数据。

2 ANDUINO开发板C语言代码原理

本次研究是利用开发板串口连接蓝牙接口,当接上到ANDROID上位机发来指令为1时让LED1变换状态(如果原来是亮状态则切换为灭状态,反之为亮状态),发送的指令为2时让LED2变换状态。

首先是LED灯宏定义,让LED1和LED2分别连接开发板第4和第5引脚。

#define LED1 4

#define LED2 5

其次是开发板串口宏定义,使用开发板的串口10作为发送端口,串口11作为接收端口。

#define TX 10

#define RX 11

通过给定的函数库来定义蓝牙模块,NewSoftSerial bluetooth(TX,RX);

使用setup函数对LED1、 LED2和蓝牙模块进行初始化。

pinMode(LED1, OUTPUT); //将LED1设置为输出模式

pinMode(LED2, OUTPUT); //将LED2设置为输出模式

bluetooth.begin(9600); //设置蓝牙接收数据波特率

最后编写loop函数,接收ANDROID上位机的指令,通过判断接收的指令来让改变LED1状态还是LED2状态。

if (bluetooth.available()) {

int LED = bluetooth.read();

switch (LED) {

case 1: //如果接收的指令为1,则让LED1变换状态

led1 = !led1;

digitalWrite(LED1, led1);

break;

case 2: //如果接收的指令为2,则让LED2变换状态

led2 = !led2;

digitalWrite(LED2, led2);

break;

}

3 ANDROID移动端代码原理

ANDROID移动端代码主要分三个部分,一个部分设计ANDROID界面,其次是是寻找到ARDUINO开发板的蓝牙并连接,最后一个部分是向ARDUINO开发板发送指令。

本研究只是上位机和下位机蓝牙连接,所以界面设计比较简单。通过XML布局文件设置两个按钮,分别命名为LED1和LED2,通过点击LED1和LED2发出事件,通过事件函数由手机自带蓝牙向ARDUINO开发板发送指令。同时增加一个列表,用于列出ANDRODI移动端平台搜索到的附近蓝牙设备。

接下来定义类BluetoothUtils,在构造函数中编写搜索附近蓝牙设备。

public BluetoothUtils() { //构造函数

devices = new ArrayList();

adapter = BluetoothAdapter.getDefaultAdapter();

摘要:该文阐述了疗养院网络安全的概念以及在完全管理中出现问题的原因,并就网络安全的分类及技术特点及影响网络安全的因素,提出了相应的解决方法,让疗养院网络安全、可靠、高效的运行,增强网络的保密性。

关键词:网络安全;入侵监测;防火墙;包过滤

中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2016)21-0061-02

随着计算机技术和网络和不断发展,疗养院信息化的也呈跨越式的发展。所有疗养人员的信息都已经通过网络数字化存入了网络数据库,使疗养人员的健康管理,疗案跟踪以及医护人员的定点服务能够快速、准确。所以疗养院网络的安全,将直接关系到疗养工作的正常进行。网络上的漏洞、病毒等如果不进行有效的技术控制防护杀毒,将会带来巨大的灾难和损失。那么,对于网络安全管理来说,管理员应该从哪些方面,如何才能做到安全管理呢,我们一步一步进行分析。

1 网络安全技术分析

网络安全技术一般都由多种安全技术组成,如网络防火墙技术、网络入侵检测技术、网络防病毒技术、网络安全漏洞扫描技术。

1.1 网络防火墙技术

网络防火墙又分为硬件防火墙和软件防火墙,他们的功能基本相同,都是在疗养院内部可信任网络和外部不可信任的公共网络之架起一座桥梁,然后根据内部网络的要求,允许授权的包通过,同时防止外部未经授权的用户非法访问内部网络,也可以完全阻止外部用户的访问,进而保护内部网络免受非法用户的入侵。不管是硬件防火墙还是软件防火墙都能够根据一定的安全规则来控制内外网之间的信息流,并且保护自身不受非法用户的攻击。防火墙技术从应用上来说一般分为“包过滤”型(Packet Filtering)、“应用代理”型(Application Proxy),网络地址转换型(Network Address Translation)三种。

“包过滤”型:它是依据网络中的数据包传输,根据防火墙制作的过滤包的规则来检测攻击行为。因为网络上传输的数据都是以“包”为单位进行传输的,每一个数据包都包含特定的信息,像数据源地址、目的地址、端口号等等。包过滤会检查这些是否来自可信任的安全站点,如果发现数据包不正常或来自不安全的地址,就会拒绝这些数据包通过。管理员可根据自身网络的需要来制定相应的包过滤规则。包过滤也有一定的缺点,因为它是工作在网络层,通过数据包的信息来判断,如果有黑客伪造地址和端口等方法就能很容易通过包过滤型的防火墙。

“应用代理”型:应用代理型的防火墙其实就是使用代理服务器作为防火墙用,代理服务器处于客户机和服务器之间,内部网络用户可以通过代理服务使用外部网络,而外部网络用户无法访问内部网络,保护了内部网络上的数据。由于内外之间没有直接连接,都是通过代理服务器进行,所以安全性较高。代理服务器还可以同时提供安全审计和日志服务。代理服务虽然安全性较高,对病毒和木马入侵十分有效,但是因为所有客户机的访问都要由代理服务器进行连接,加重了代理服务器的负担,而且速度较慢。

“网络地址转换”型:它是把内部网络用户的内部IP临时转换成具有外部网络的IP地址的计算机来访问外网。外部网络不能访问内部网络,所有内部网络的机器在访问外网果,都由NAT服务器来产生一个映射地址,然后在映射出一个伪装的端口通过网卡访问,这样就隐藏了实际的内部网络地址。“网络地址转换”型的优点是可以使内部所有的机器共享几个外网的IP访问外网,对于内网安全性较高,但是同样网络访问速度慢。

1.2 网络入侵检测技术

入侵检测技术能够监视计算机系统或网络系统中发生的各种事件并形成日志文件,并且进行完整检测分析,从中找到不安全的因素或系统中存在的漏洞。一般把入侵检测的软件与硬件的组合称为入侵检测系统。它是一种主动型的安全防护系统,可以对内部攻击、误操作和外部攻击做实时防护,在计算机网络和系统受到危害之前提前报警、拦截和响应。入侵检测系统可分为两类。基于主机的入侵检测系统用于保护关键应用的服务器,实时监视可疑的连接、系统日志检查,非法访问的闯入等。特点是:精确,可以精确地判断入侵事件;高级,可以判断应用层的入侵事件;对入侵时间立即进行反应;针对不同操作系统特点;占用主机宝贵资源。基于网络的入侵检测系统用于实时监控网络关键路径的信息。特点是:能够监视经过本网段的任何活动;实时网络监视;监视粒度更细致;精确度较差;防入侵欺骗的能力较差;交换网络环境难于配置。

1.3 网络防病毒技术

计算机病毒是危害网络信息系统安全的重要问题之一,它可以通过光盘、优盘、移动硬盘、网上下载、电子邮件等方式进行传播,一旦网络中的某一台主机受到病毒感染,病毒程序就会很快迅速传播,一般的蠕虫病毒可能拖慢计算机速度,恶意的病毒则可能使用信息泄漏、文件丢失甚至造成计算机崩溃,最严重的病毒甚至可以造成计算机硬件烧毁,如CIH病毒等。网络防病毒一般是在全网安装防病毒软件客户端,由一台防病毒服务器来运行服务端软件。服务端和客户软件都具有检查和清除病毒的功能,服务端还可以设置所有在线机器的定时杀毒以及网全网杀毒。当服务端的杀毒程序升级更新后所有的客户端都可以自动更新,增加内部网络的防病毒能力。

1.4 网络安全漏洞扫描技术

网络安全漏洞扫描技术是网络安全技术中不可或缺的一部分,它能够增强内部网络的安全性,能够扫描分析系统中存在的安全问题,并针对扫描到的安全漏洞提供详细的安全解决方案,使系统管理员及时打好系统安全补丁,避免因存在的漏洞而让黑客有可乘之机,造成数据丢失。现在的漏洞扫描工具分为两类,一类是基于服务的,一类是基于网络的。基于服务器的漏洞扫描工具可以对服务器进行全方位的扫描,如弱口令、共享文件、WWW服务、系统漏洞等,扫描完成后会给出详尽的分析说明。基于网络的安全扫描工具主要扫描设定网络内的交换机、路由器、数据库服务器、防火墙等设备的安全漏洞,还可以设定模拟攻击,以便测试系统的防御能力。通过漏洞扫描技术的应用,管理可以针对相应的问题,制定切实可行的安全解决方案。

猜你喜欢

防火墙网络安全
网络安全知多少?
全民总动员,筑牢防火墙
网络安全
网络安全人才培养应“实战化”
上网时如何注意网络安全?
海南新农合有了“防火墙”
在舌尖上筑牢抵御“僵尸肉”的防火墙
下一代防火墙要做的十件事
新汉 HENGETM工业防火墙
“4.29首都网络安全日”特别报道