kl800.com省心范文网

基于GPRS的嵌入式家庭智能系统设计


南京航空航天大学 硕士学位论文 基于GPRS的嵌入式家庭智能系统设计 姓名:刘佳 申请学位级别:硕士 专业:电路与系统 指导教师:刘方 20080101

南京航空航天大学硕士论文





随着人们生活水平的日益提高, 家居智能化已经成为了当今社会科技发展的 一大趋势。因此,将住宅中各种通信设备、家用电器和家庭保安装置通过内部网 络连接到一个智能控制系统之上,进行集中或异地监视、控制和管理的智能家居 控制系统已经成为近年来一个热门研究课题。本设计采用嵌入式系统、GPRS 通 信技术和 RS485 总线技术相结合的方式,搭建了一个家庭智能管理平台。通过该 平台可以将家中的电器、安防系统等有机结合起来,实现对家用电器和各个子系 统的智能控制和管理, 并通过手机短信等方式对家庭子系统中的各个模块的状态 进行远程监控。 该系统主要包括家庭智能控制器和家庭子系统两大模块。其中,家庭智能控 制器为整个系统的控制核心, 用于完成对于家庭子系统的控制、 管理和对于 GPRS 的通信;家庭子系统则是由现实生活中家庭常用的几个电子系统子模块构成,包 括:红外家电控制、温度测试、电子门禁、开关量控制等,对这些子模块的监控, 均由单片机实现;家庭子系统与家庭智能控制器之间采用 RS485 总线连接的方 式,实现家庭智能控制器对家庭子系统的实时监控。 论文首先介绍了家庭智能系统的背景和发展前景, 分析了其技术特点和基本 功能,并在此基础上提出了一个简练的家庭智能系统的设计方案。随后,详细介 绍了该方案的软、硬件设计。家庭智能控制器的硬件配置以优龙公司的 ARM9 FS2410 核心板为基础,以优龙公司 ARM9 开发板 ST2410 为参考依据,根据系统 需求完成了包括电源电路、键盘接口电路、GPRS 模块外部接口电路、串口接口 电路及 RS485 转换电路、LCD 及触摸屏接口电路等的设计,实现并完成了以上电 路的原理图和 PCB 板制作,构成了一个初步满足基于 GPRS 的嵌入式智能家庭控 制器功能的小型开发板; 家庭子系统的硬件设计主要实现了运用单片机控制红外 子模块、温度测试子模块、电子门禁子模块和开关量控制子模块的测试电路等的 设计,并实现了以上电路的原理图和 PCB 板制作,构成了家庭子系统的试验板。 软件设计部分,包含了家庭智能控制器、家庭子系统及 RS485 通信协议等的软件 结构设计。 最后,对设计和实施做出简要结论,并对后续工作提出建议。

关键词:家庭智能系统,ARM,GPRS,嵌入式系统,RS485

i

基于 GPRS 的嵌入式家庭智能系统设计

ABSTRACT
With the improvement of people’s living environment and standard, smart house has become a major tendency of the current social development. Smart house system using network internal connects all kinds of communication equipments, domestic appliance and family security equipment to intelligent control system which performed remote or concentrated house management and monitor. The research on smart house system becomes a hot field in recent years. In this paper, a Home Intelligent management platform, which combines home applications, burglary protection system and hydroelectric system organicly, is established by using embedded system combined with GPRS technology and RS485 bus technique to realize intelligent management of homeapplications and other home systems, and based on the platform, SMS can be used to realize remote control of the home subsystem. The system in the thesis is divided into two parts: Home Intelligent controller modular and home subsystem modular. In Home Intelligent controller modular which is also the core of the system, the intelligent management of home subsystem and wireless communication of GPRS modular are accomplished. In home subsystem modular, some commonly-used functions are realized based on single chip microcomputer, such as infrared control of home application, temperature testing, electronic entrance guard system and control of switching signals of home equipment. The Home Intelligent controller is connected home subsystem modular with RS485 bus, so as to monitor the home subsystem in real time. First in the thesis, the background and developing tendency of Home Intelligence system are introduced and the essential characteristics and functions are discussed and on the basis of which, the scheme of Home Intelligent control system is presented. Then, the design of hardware and software of the system are discussed in detail. The design of hardware of Home Intelligent controller modular is based on the ARM9 FS2410 core boards, which refer to the ARM9 ST2410 development boards. The circuit design of power supply unit, keyboard interface, external interface of GPRS modular, serial port interface, convert of RS485 and LCD& touch screen interface is completed. And the schematic diagrams and PCBs of them are accomplished. Then, a development board of a wireless Home Intelligent controller based on GPRS technology and embedded system is established. In the design of hardware of home
ii

南京航空航天大学硕士论文

subsystem, the schematic diagrams and PCBs of home subsystem, which consists of infrared control of home application subsystem, temperature testing subsystem, electronic entrance guard subsystem and control of switching signals of home equipment subsystem, are also accomplished. And the software design includes software design for Home Intelligent controller modular, home subsyetem modular software design and protocol and communication process of RS485. At last, a sum-up and presumption of latter work are presented.

Key Word: Home Intelligent Controller, ARM, GPRS, Embedded System, RS485

iii

基于 GPRS 的嵌入式家庭智能系统设计

图 目 录
图 2.1 系统网络结构 .............................................5 图 2.2 家庭智能系统框图 .........................................6 图 3.1 系统硬件框图 ............................................14 图 3.2 主控模块硬件设计框图 ....................................15 图 3.3 外接 12V 电源 ............................................16 图 3.4 主电源电路 ..............................................16 图 3.5 GPRS 模块电源电路 .......................................16 图 3.6 外围电路电源电路 ........................................17 图 3.7 键盘接口电路 ............................................17 图 3.8 MC39i 结构框图 ..........................................19 图 3.9 MC39i 引脚接线 ..........................................19 图 3.10 启动信号时序图 .........................................20 图 3.11 IGT 启动电路(1) ......................................20 图 3.12 IGT 启动电路(2) ......................................21 图 3.13 PD 关机电路 ............................................21 图 3.14 DCE-DTE 串口对应关系 ...................................21 图 3.15 MC39i 与 ARM 处理器串口连接关系图 .......................22 图 3.16 SIM 卡座接口示意图 .....................................22 图 3.17 MC39i 与 SIM 卡连接电路 .................................23 图 3.18 SYNC 端指示灯电路 ......................................23 图 3.19 串口接口电路 ...........................................24 图 3.20 半双工 RS485 通信网络结构框图 ...........................25 图 3.21 RS485 转换电路 .........................................26 图 3.22 与 74LVC16245 连线图 ....................................27 图 3.23 LCD 及触摸屏接口硬件接口电路 ...........................28 图 3.24 工作状态指示灯电路 .....................................28 图 3.25 子模块硬件设计结构框图 .................................29 图 3.26 红外发射单元电路 .......................................30 图 3.27 红外接收单元电路 .......................................30 图 3.28 电子密码锁单片机连线电路 ...............................32 图 3.29 键盘接入电路 ...........................................32 图 3.30 LED 接入电路 ...........................................33
vi

南京航空航天大学硕士论文

图 3.31 温度测量电路图 .........................................34 图 3.32 LED 灯测试子模块 .......................................35 图 3.33 开关量测试电路 .........................................35 图 4.1 家庭智能系统结构图 ......................................36 图 4.2 软件各模块之间相互关系 ..................................38 图 4.3 AppProtocalSendToBuf 处理流程 ...........................39 图 4.4 静态计数器控制每次进入程序时的状态设置 ..................40 图 4.5 GPRS 模块初始化过程 .....................................41 图 4.6 按键扫描过程 ............................................42 图 4.7 Bootloader 处理流程 .....................................44 图 4.8 编码方式 ................................................45 图 4.9 码组定义 ................................................46 图 4.10 脉冲间隔的测量 .........................................47 图 4.11 电子门禁程序流程图 .....................................48 图 4.12 单片机实现温度转换读取温度数值程序流程图 ...............51

vii

基于 GPRS 的嵌入式家庭智能系统设计

表 目 录
表 3.1 技术参数 ............................................... 18 表 3.2 MC39i 和处理器串口接线表................................ 21 表 4.1 ROM 操作命令 ............................................49 表 4.2 内存操作命令 ............................................50 表 4.3 字节传输序列 ............................................53 表 4.4 帧格式 ..................................................53 表 4.5 控制码格式 ..............................................54 表 4.6 传输速率的特征字 Z ......................................55 表 4.7 数据标识结构 ............................................56 表 4.8 主站请求帧 ..............................................56 表 4.9 读数据从站正常应答帧 ....................................56 表 4.10 读数据从站异常应答帧 ...................................57 表 4.11 写数据请求帧 ...........................................57 表 4.12 写数据从站正常应答帧 ...................................57 表 4.13 写数据从站异常应答帧 ...................................57 表 4.14 对时命令帧 .............................................58 表 4.15 写地址请求命令帧 .......................................58 表 4.16 写地址从站正常应答帧 ...................................58 表 4.17 更改速率请求帧 .........................................59 表 4.18 确认应答帧 .............................................59 表 4.19 否认应答帧 .............................................59 表 4.20 写密码请求帧 ...........................................60 表 4.21 写密码从站正常应答帧 ...................................60 表 4.22 错误特征字 .............................................60 表 4.23 基本参数及数据列表 .....................................61 表 4.24 主站 IP 地址和端口数据格式 ..............................64 表 4.25 主站电话号码和短信中心号码数据格式 .....................65

viii

南京航空航天大学硕士论文

注释表
ARM GPRS GSM MMU IDE DTE DCE IEEE DMA Advanced RISC Machines 先进的精简指令集计算机 General Packet Radio Service 通用分组无线服务 Global System for Mobile Communications 全球移动通讯系统 Memory Management Unit 内存管理单元 Integrated Development Enviroment 集成开发环境 Data Terminal Equipment 数据终端设备 Data Communication Equipment 数据通信设备 The Institute of Electrical and Electronics Engineers 电机电子工程师协会 Direct Memory Access 直接内存存取

ix

承 诺 书

本人郑重声明:所呈交的学位论文,是本人在导师指导下,独立 进行研究工作所取得的成果。尽我所知,除文中已经注明引用的内容 外,本学位论文的研究成果不包含任何他人享有著作权的内容。对本 论文所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明 确方式标明。 本人授权南京航空航天大学可以有权保留送交论文的复印件,允 许论文被查阅和借阅,可以将学位论文的全部或部分内容编入有关数 据库进行检索,可以采用影印、缩印或其他复制手段保存论文。

作者签名: 日 期:

南京航空航天大学硕士论文

第一章 绪论
随着社会经济和科技的发展,人们对于家居生活的要求也不断提高,人们期 望的所生活的居家环境也要随着科技的发展能够满足舒适、高效、便捷、安全等 要求。 智能家居系统是一个开放的、使用了多项高新技术的智能化、人本化的集成 型家居系统,它把宽带互联网、家电设备、家居自动化和家庭安全防护防盗有机
[1] 地结合到一起 。

1.1 研究背景
1.1.1 家庭智能系统的发展及现状 近年来计算机、自动控制和通信技术的发展,己经深刻地改变了人们的工作 方式,极大地提高了企业的生产效率,为社会创造了巨大的财富,相比之下带给个 人和家庭生活的好处却十分有限,传统的居家方式并没有因信息时代的到来而产 生多大变化。 家电产品种类日益增多,分散控制给人们带来了极大的不便,作为社 会组成的基本单元--家庭,几乎成为信息时代的孤岛。 在这样的背景下,人们开始关注居住环境,注重家居环境的安全、健康、便捷 和舒适,如何有效地在家居环境里组建家庭信息网络,将各种家电产品结合成一 个有机整体,以实现对各种家电设备的集中或并通过它对家电设备进行集中或异 地的智能化控制与管理,更好地为人们提供家居环境的各类信息,为开发网络化、 智能化、数字化的新型住宅提供必要的软硬件支持。 家庭智能系统,也被称为智能家居系统(Smart Home System),在国外已 经获得了长足地发展。 自世界上第一幢智能建筑于1984年在美国康涅迪格州出现 后,美国、加拿大、欧洲、澳大利亚和东南亚等经济比较发达的国家和地区先后 提出了各种智能家居方案。 目前,美国有近万户家庭安装了这类系统。在新加坡有近30个社区的近5000 户家庭采用了这种家庭智能化系统。美国智能家居行业的专业顾问公司PARKS的 统计资料显示:1995年,美国一个家庭要安装家庭自动化设备的平均费用在 7000-9000美元之间,而目前的费用己经大大降低。预计在今后的4年内,家庭自 动化市场的年平均增长率为8%
[23]



1

基于 GPRS 的嵌入式家庭智能系统设计

在国内,智能家居尽管起步较晚,但大有风行正健之势。目前,建设部己批 准7个普及型网络社区, 而北京市己经计划建设30个网络社区, 总户数将达3万户。 按照建设部的要求,到2010年,大中城市中60%的住宅要实现智能化[2]。 可以看出,我国已经成为了全球最有潜力的智能建筑市场。随着数字化的进 一步发展,随着三网融合的逐渐实现,随着高速宽带、路由器和无线技术的广泛 使用,数字家庭网络必然会逐渐进入市场成长期并取得迅速发展[3]。 1.1.2 研究开发的必要性 随着计算机、电子技术、尤其是网络技术的发展,以及生活水平的提高,人 们在居住环境的舒适、安全等方面对家庭智能提出了更多的要求。希望家庭智能 终端不仅能实现对家用电器、设备的自动控制和调节,而且能通过网络实现与外 部信息的交换。使得用户不仅能够在本地,即使在工作或者外出时也能对家庭进 行集中的监视、控制及家庭事务的管理。从而满足人们对高度安全性、生活舒适 性、通信快捷性的需求,营造一个更加安全、舒适、开放的生活环境。因此实现 智能家居终端的远程控制已经成为一种趋势。 传统家庭智能远程控制的实现主要有以下两种方法 1) 通过电话网络实现对家庭智能控制终端的控制。 用户外出时,拨打家庭电话,控制终端通过检测振铃信号,对振铃次数进行 计数,若振铃超过一定次数,控制终端实现模拟摘机,播放语音提示音,用 户根据提示音进行操作实现监控。 2) 通过以太网实现。 将控制终端通过 PC 机接入以太网或者直接在控制终端的微控器外部扩展完 整的网络设备,通过网线接入以太网。用户只需访问家庭主页即可实现对家 庭系统的监控。 以上两种方式都具有操作简单且成本较低的优点,但是通过电话网络的方 式,需要占用电话设备,当外人拨通家中电话时,也有可能进入控制模式,即使 设置了密码, 也容易出现一些误操作。 而且电话网络和以太网都属于有线的方式, 随着网络技术的发展,将逐渐被无线网络所取代[4]。 1.1.3 方案的提出 网络化的嵌入式无线智能家居控制系统是未来智能家居的发展方向, 它能够 提供标准化接口和无线网络互连功能。各种家庭互连的无线标准不断提出,推动 了智能家居控制系统的无线化和接口标准化发展, 无线互联为人们提供更好的移 动性和更多的便利,而标准化无线接口为不同厂家产品提供互兼容特性。各种无 线网络技术迅速发展,从广域网(Internet,GSM/GPRS/3G),到基于IEEE802.11
2
[20]



南京航空航天大学硕士论文

系列的无线局域网(WLAN)、基于蓝牙的无线个人网(WPAN),新网络技术标准 不断涌现, 给智能家居行业的设计赋予了一种全新的技术理念。 “网络控制一切” 将会在不久的将来成为生活中的现实。加上嵌入式系统的发展,人们可以以更低 的成本来开发家居主控制器, 并且家居设备和主控制器都能够以低功耗方式来运 行,降低了运作的成本[22]。 本文根据GPRS(General Packet Radio Service 通用分组无线服务)技术先 进,速度快,接入范围广等特点,将GPRS技术与嵌入式系统相结合,设计智能 家庭系统,通过手机短信等方式解决了用户在异地对家庭智能系统的远程查 询,控制等问题。同时采用RS485拓扑总线完成了家庭内部的布线和组网。

1.2 论文的主要结构
1.2.1 论文主要完成的任务 本文提出了嵌入式系统的总体设计方案,阐述了包括通讯方案的决策,组网 方案的选择,软硬件开发平台的设计及主要芯片模块的配置。 硬件方面,完成家庭智能控制系统和家庭子系统的总体设计,包括原理图的 设计、PCB板的制作及调试。 软件方面,完成对整个系统总体软件设计,包括了系统总体软件结构设计、 家庭智能控制系统和家庭子系统模块的软件结构设计及通讯协议的设计。 1.2.2 论文结构 论文共分五章,各章具体内容如下: 第一章主要介绍了智能家居的起源和发展背景, 分析了它的基本特点和所要 实现的基本功能。 第二章根据第一章提出的功能需求, 提出对本文所要实现的嵌入式家庭智能 系统的总体设计思路和设计方案。 第三章详细介绍了嵌入式家庭智能控制系统的硬件设计, 包括家庭智能控制 器和家庭子系统的设计。其中,家庭智能控制器的硬件设计以优龙公司的ARM9 FS2410核心板为基础,以优龙公司ARM9开发板ST2410为参考依据,根据系统需求 完成了包括电源电路、键盘接口电路、GPRS模块外部接口电路、串口接口电路及 RS485转换电路、LCD及触摸屏接口电路等的设计,实现并完成了以上电路的原理 图和PCB板制作,构成了一个初步满足基于GPRS的嵌入式智能家庭控制器功能的 小型开发板;家庭子系统的硬件设计主要实现了运用单片机控制红外子模块、温 度测试子模块、电子门禁子模块和开关量控制子模块的电路等的设计,并实现了 以上电路的原理图和PCB板制作,构成了家庭子系统的试验板。
3

基于 GPRS 的嵌入式家庭智能系统设计

第四章介绍了家庭智能控制系统的软件设计, 包括对家庭智能控制器和家庭 子系统以及RS485总线通讯协议等的设计及数据定义; 第五章对全文进行总结,并对后续工作提出设想。

4

南京航空航天大学硕士论文

第二章 系统设计
2.1 嵌入式家庭智能系统设计

2.1.1 家庭智能系统网络结构 数字家庭网络是指通过家庭网关将公共网络功能和应用延伸到家庭, 并以有 线网络或无线网络连接各种信息终端(如家电、PC等),提供集成的话音、数据、 多媒体、控制和管理等功能,达到信息在家庭内部终端之间及其与外部公网的充 分流通和共享
[25-27]



在设计中,系统网络采用如图2.1所示的结构,包括了家庭智能控制系统、 家庭子系统与外部网络三大部分,其中家庭智能控制系统+家庭子系统可被视为 家庭内部网络。
外网

家庭智能控制系统

通信协议 RS485

家庭子系统
家电系统 安防系统 抄表系统 其他

图 2.1 系统网络结构

2.1.2 家庭智能系统功能分析 在家庭智能系统的设计过程中,主要考虑的是家庭内部网络的设计。而家庭 内部网络的设计主要包括家庭智能控制系统的设计和家庭子系统的设计。 其中,家庭智能控制系统作为家庭内部网络的核心,是家庭智能系统内部网 络的重要组成部分,起到核心、监控以及与外部网络通信的作用。它是家庭内部
5

基于 GPRS 的嵌入式家庭智能系统设计

网络与外部网络的物理接口、要完成家庭内部网络与外部通信网络间的数据交 换,同时还要负责对家庭子系统的实时监控。后简称为主控模块。 家庭子系统则是通过其内部各个子模块对各种家居设备进行控制, 继而使得 各种家居设备之间采用统一的控制总线构成子系统网络, 并与家庭智能控制系统 相连接,便于子系统受家庭智能控制器的管理。 基于对以上基本功能的考虑,本文设计的家庭智能系统框图如图2.2所示。

家庭智能
远 程 用 户 GPRS 通 信网

控制系统

RS485

RS485

RS485

RS485

电子门禁

温度测试

家电控制

图 2.2 家庭智能系统框图

该系统将要完成的具体功能包括以下的几个方面: 1) 家用设备的数据采集:采集的数据包括室内温度,灯具、防盗门等设备 的状态数据,经控制器处理后反馈给用户。 2) 本地控制:用户通过控制器上的键盘和显示屏,对家用设备进行监控。 3) 远程控制:远程用户可以通过发送手机短信或通过互联网对家庭系统进 行控制和查询。 4) 自动报警:当控制器检测到非法闯入或温度超高等报警信号时,及时触 发室内报警装置,并通过发送报警短信等方式及时通知用户。 5) 温度查询:用户可以通过控制器查询室内温度。 6) 防盗门密码设置:用户可以通过本地或远程方式修改防盗门的密码,在 门外输入正确密码后才可打开门。 7) 红外家电控制:接收用户命令,通过红外发射电路控制电视、空调等红 外可控的家电设备。 8) 其它灯具等开关量控制:接收用户命令控制灯具等开关量设备。

6

南京航空航天大学硕士论文

2.2

嵌入式家庭智能系统设计方案

2.2.1 嵌入式系统概述 嵌入式系统就是以应用为中心,以计算机技术为基础,软硬件可剪裁,适合 应用系统对功能、可靠性、成本、体积和功耗要求的专用的计算机系统。嵌入式 系统的概念的提出已经有相当长的时间, 但最初主要用于军事领域和工业控制领 域, 随着数字技术的发展和新的体积更小的控制芯片和功能更强的操作系统的出 现,嵌入式系统已经越来越多的应用于消费电子产品。而信息家电、智能家居就 是嵌入式系统在消费电子产品中的一个重要应用[6]。 嵌入式技术在最近几年得到了广阔的发展。 嵌入式处理器的性能得到了显著 的提高,这就为以嵌入式为基础的智能化家居系统的发展奠定了硬件基础,使较 复杂的检测和识别算法在系统中得到应用。在软件方面,出现了丰富的支持嵌入 式设备的软件,使嵌入式系统的开发的难度降低。出现了大量专注于嵌入式的企 业,使嵌入式开发能得到良好的技术支持。同时智能化家居的概念也更加明确, 相关的智能化技术得到了显著的发展,使开发能获得大量先进的资料[7]。 基于嵌入式技术的优越性,本文选择嵌入式系统来实现家庭智能系统。 2.2.2 2.2.2.1 系统硬件方案选择 ARM 微处理器介绍

由于嵌入式系统应用需求的多样性, 市场上基于RISC结构的嵌入式处理器提 供商也日渐增多。据统计数据表明,2002年32位嵌入式处理器市场销售额排在前 3位的公司分别是ARM(Advanced RISC Machines)、Motorola和MIPS,其中ARM 公司的芯片销售量达1.5亿,市场份额超过70%[8-9]。 目前基于ARM核的处理器有以下几类: Xscale/StrongARM。 其中,ARM9系列微处理器在高性能和低功耗方面提供最佳的性能,具有以下 特点[11]: 1) 5 级流水线,指令执行效率更好。 2) 提供 1.1MIPS/MHz 的哈佛结构。 3) 支持 32 位 ARM 指令集和 16 位 Thumb 指令集。 4) 支持 32 位的高速 AMBA 总线接口。 5) 全性能 MMU,支持 Windows CE、Linux、Palm OS 等多种主流嵌入式操作 系统。
7
[10]

ARM7、ARM9、ARM9E、ARM10E、

ARM11、SecurCore、OptimoDE数据引擎内核、MPCore多处理器核、Intel的

基于 GPRS 的嵌入式家庭智能系统设计

6) MPU 支持实时操作系统。 7) 支持数据 Cache 和指令 Cache,具有更高的指令和数据处理能力。 2.2.2.2 嵌入式硬件方案设计 本系统家庭智能控制系统即主控模块的处理器内核采用SAMSUNG公司推出的 S3C2410处理器。该处理器是Samsung公司基于ARM公司的ARM920T处理器核,采用 0.18μm制造工艺的32位微控制器,拥有:独立的16KB指令Cache和16KB数据 Cache,MMU,支持TFT的LCD控制器,NAND闪存控制器,3路UART,4路DMA,4路带 PWM的Timer ,I/O口,RTC,8路10位ADC,Touch Screen接口,IIC-BUS 接口, IIS-BUS 接口,2个USB主机,1个USB设备,SD主机和MMC接口,2路SPI。S3C2410 处理器最高可运行在203MHz。 目前,市场上出现了众多基于ARM9的核心板产品。核心板的优势在于,一个 核心板就已经构成了最小系统,并且能充分考虑接口的扩展问题,使得用户可以 充分发挥想象力,利用它设计制造出高性能、高可靠性的嵌入式应用产品。 在此,选用了优龙公司的FS2410核心板。该款核心板是基于SAMSUNG公司的 ARM920T——S3C2410,它充分考虑接口的扩展问题,在80mm×80mm的PCB上,集 成了电源、CPU、SDRAM、Nor Flash、Nand Flash、10M网口、复位电路、JTAG 调试接口、实时时钟等。通过四条双排68针的连接器,引出了外部扩展需要用到 的全部数据、地址总线、各外设接口、IO信号等。 该核心板的物理特性为[24]: 1) 六层板设计; 2) 长 80 毫米,宽 80 毫米; 3) 四条 68PIN 的连接器,每条连接器均为双排 2 毫米间距。 硬件资源包含了: 1) 中央处理器 S3C2410 (SAMSUNG),ARM920T,主频203MHz。 2) 外部存储器 2M字节NOR FLASH (SST39VF160或SST39VF1601,可支持4M字节的 SST39VF320或SST39VF3201) 64M字节SDRAM (两片32M字节的K4S561632H) 64M字节NAND FLASH (K9F1208,可以支持16M、32M或128M的Nand Flash) 3) 网络接口 采用10M网络接口芯片CS8900Q3,支持存储器和IO模式。
8

南京航空航天大学硕士论文

4) 其他 一个复位小按键 一个电源指示灯和两个系统运行指示灯 RTC实时时钟 20针Multi-ICE标准JTAG调试接口。 在总共68×4的连接器里面,包含有电源线、地线、用户扩展可能要用到的 地址线、数据线、读写线、片选线、中断线、各外设接口、IO信号等。 在此基础上,以优龙公司ST2410开发板的硬件设计思路为参考和依据,根据 家庭智能系统主控模块的需要,以FS2410核心板为基础,设计其外围电路,构成 一个能够基本满足嵌入式家庭智能系统控制需要的自行设计的小型开发板。 主控 模块和各个功能子模块之间以及与GPRS通信模块之间都是通过串口进行通信。 各 个功能子模块的各种功能主要选用51系列的单片机和相应的传感器电路来实现。 2.2.3 嵌入式软件方案选择 从整个家庭智能系统的结构上来看, 可以把家庭智能系统的软件分成三个部 分,即后台软件,主控制器软件,及子系统的各个子模块软件。其中以主控制器 和子系统的各子模块软件设计为主。 在嵌入式系统开发中,通常会使用嵌入式操作系统,可以减少软件开发的复 杂程度,也可以充分利用32位嵌入式处理器的强大功能。因此,在对于主控制器 的软件开发中,采用模块化的设计思路,各模块之间既相互关联又相对独立,并 采用嵌入式操作系统作为软件开发平台。 目前比较常用的嵌入式操作系统主要是Windows CE和μClinux。两种操作 系统各有利弊。Windows CE与Windows系列有较好的兼容性,无疑是Windows CE 推广的一大优势,其中Windows CE3.0是一种针对小容量、移动式、智能化、32 位的模块化实时嵌入式操作系统。为建立针对掌上设备、 无线设备的动态应用程 序和服务提供了一种功能丰富的操作系统平台,它能在多处理器体系结构上运 行,并且通常适用与那些对内存占用空间具有一定限制的设备。操作系统的内核 基本需要至少200KB的ROM。从技术角度上讲,Windows CE作为嵌入式操作系统也 存在一些缺陷: 没有开放源代码, 使应用开发人员很难实现产品的定制; 在效率、 功耗方面的表现并不出色;版权许可费也是厂商不得不考虑的因素[12]。 而μClinux最大的特点就是源代码公开而且遵循GPL协议,它主要是针对目 标处理器没有存储管理单元MMU(Memory Management Unit)的嵌入式系统而设 计的。 它已经被成功地移植到了很多平台上。由于没有MMU,其多任务的实现需 要一定技巧。μClinux是一种优秀的嵌入式Linux版本,是Micro-Control- Linux的缩写。它秉承了标准Linux的优良特性,经过各方面的小型化改造,形成
9

基于 GPRS 的嵌入式家庭智能系统设计

了一个高度优化的、代码紧凑的嵌入式Linux。虽然它的体积很小,却仍然保留 了Linux的大多数的优点:稳定、良好的移植性、优秀的网络功能、对各种文件 系统完全地支持和标准丰富的API。它专为嵌入式系统做了许多小型化的工作, 目前已支持多款CPU。其编译后的目标文件可控制在几百KB数量级。根据以上的 分析,本文选用μClinux操作系统作为软件开发平台。 2.2.4 家庭网络布线方案及网络通讯方案设计 在本次设计的家庭智能系统中, 家庭智能控制系统和家庭子系统构成的家庭 内部网络需要通过一定的布线方式联系起来,同时,家庭子系统内部也需要通过 一定的布线方式使家庭子系统内部的各种各个子功能模块相互连接起来。 家庭网络的布线方式包括有线和无线两种。其中,有线方式包括了电话线、 RS485总线、X10自动控制系统、Upnp技术等方式;无线方式包括了2.4GHz设备、 802.11x、蓝牙、IrDA(红外线技术、超带宽技术、FM发射技术等)等。 随着网络技术的不断发展,无线解决方案必将成为以后的发展趋势,但就目 前而言,市场上带有智能芯片的信息家电还没有得以普及,因此无线智能控制方 式还不是很实用,且成本相对较高。所以,选用组网方便且成本低的有线组网方 式才更为实用。 本系统的设计,选用RS485总线作为布线方式,该总线采用的是主从通信方 式,同一总线上可以挂32个结点[13]。相对于家庭智能控制系统而言,主控制模块 为主站,家庭子系统中的各个被单片机控制的家电设备为从站,通过RS485总线 构成主从控制系统。 家庭内部网络与外部网络的通讯用于实现远程用户对家庭网络的实时监控。 目前主要的通信方式也包含了有线方式和无线方式两大类。其中,常见的有 线接入方式包括了:通过电话网络、通过有线连接以太网(如:Modem拨号上网、 ISDN、 ADSL、 Cable Modem利用有线电视网接入等方式) 无线接入包括了: ; GPRS、 EDGE等[32]。 考虑到成本和资源问题, 本系统在设计上采用了目前应用较广泛的GPRS分组 交换技术来实现远程控制。GPRS(General Packet Radio Service)是通用分组 无线业务的简称,它是第2.5代移动通信系统,是向3G过渡的一个桥梁。GPRS的网 络结构是建立在网络结构的基础之上的,是重叠在GSM网络上的一个分组数据网 络,它在空中接口上提供了分组数据信道,同时提供了基本上独立于GSM的一种分 组数据交换和传输网络[14]。

10

南京航空航天大学硕士论文

2.3

硬件方案设计
硬件方案主要包括两个部分:家庭智能控制系统模块及子系统模块两个部

分。 2.3.1 主控模块方案 主控模块硬件方案: 主控模块硬件主要是在优龙公司FS2410 ARM9系统板的基础上以扩展板的方 式扩展实现系统所需要的硬件功能。 主控模块软件: 为方便程序的模块化设计及以后的功能扩展, 主控模块的软件是在μClinux 的基础上进行开发。 1) μClinux 开发环境: 基于μClinux 嵌入式应用开发一般采用一种特殊的 模式:主机-目标机模式,使用交叉开发的方式进行开发。开发环境运 行在主机上,用户所有的开发工作都是在主机开发环境中进行,包括编 辑源代码、编译、链接、下载和调试等。生成的可执行目标代码通过串 行口或以太网口下载到目标机,在目标机执行时,可以把执行结果通过 超级终端回显到主机上,主机还可以通过开发环境提供的调试工具对代 码进行调试[15]。 2) ARM ADS 的全称是 ARM Developer Suite,用于 ARM 处理器底层软件开 发。是 ARM 公司推出的新一代 ARM 集成开发工具,现在的版本是 1.2, 由命令行开发工具,ARM 实时库,GUI 开发环境 (Code Warrior 和 AXD) , 实用程序和支持软件组成[16]。 2.3.2 子控制模块方案 家庭子系统模块的设计是基于单片机的,本系统主要在于实现一种实际应 用,所以对于子控制模块控制器的选择旨在于如何最方便地实现系统的功能,所 以选择相对来说应用最广的C51系统单片机作为子模块的主控制器。 硬件方案: 为了测试方便,将原本需分开设计的各个模块,如温度采集器,电子门锁控 制器等,统一使用一个CPU控制。即在一个子模块上同时实现温度采集,电子门 锁等功能。这将降低子模块的硬件设计工作。 软件开发环境: 1) EasyPRO 90B 通用编程器[30]:广州周立功单片机发展有限公司生产的 EasyPRO 90B 是同类产品中集成度最高,功耗最小,支持型号最全的电
11

基于 GPRS 的嵌入式家庭智能系统设计

脑主板 BIOS 专用烧录机。EasyPRO 90B 采用 USB 通讯技术,内置高速 CPU 并采用程控电源和程控分频器,使得编程深度加大,速度更快,稳 定性更好,编程效果更加流畅。 2) Keil C 编译器:随着单片机开发技术的不断发展,从普遍使用汇编语言 到逐渐使用高级语言开发,单片机的开发软件也在不断发展。Keil C 是 美国 Keil Software 公司出品的 51 系列兼容单片机 C 语言软件开发系 统[17]。Keil 提供了一个集成开发环境(IDE:Integrated Development Environment)uVision,它包括 C 编译器、宏汇编、连接器、库管理和 一个功能强大的仿真调试器。这样,在开发应用软件的过程中,编辑、 编译、汇编、连接、调试等各阶段都集成在一个环境中,先用编辑器进 行编辑,接着用编译器进行编译,连接后即可直接运行,可以很好的缩 短开发周期[18]。 3) 串口调试工具 SSCOM32:作为串口调试工具,通过 RS232-RS485 转换器 可以很方便地监测 RS485 总线,极大方便软件的调试。 2.3.3 Cadence 设计系统 Cadence是一个大型的EDA软件,它几乎可以完成电子设计的方方面面,包括 ASIC设计、 FPGA设计和PCB板设计。 Cadence在仿真、 电路图设计、 自动布局布线、 版图设计及验证等方面有着绝对的优势。 Cadence包含的工具较多几乎包括了EDA 设计的方方面面[28]。 本次设计的原理图设计, 采用的是Cadence新一代的Allegro系统互连设计平 台 ,Cadence Allegro Silicon Package Board (SPB)15.7。针对目标按时完成 系统协同设计,Cadence Allegro平台使能协同设计高性能的集成电路、封装和 印制电路板的互连,降低成本并加快产品上市时间。Cadence Allegro SPB 15.7 系统互连平台能够跨集成电路、封装和PCB协同设计高性能互连。应用平台的协 同设计方法,工程师可以迅速优化I/O缓冲器之间和跨集成电路、封装和PCB的系 统互联。该方法能避免硬件返工并降低硬件成本和缩短设计周期。约束驱动的 Allegro流程包括高级功能用于设计捕捉、信号完整性和物理实现。由于它还得 到Cadence Encounter与Virtuoso平台的支持,Allegro协同设计方法使得高效的 设计链协同成为现实。 2.3.4 PADS 2005 电路设计系统 上面已经提到,在原理图设计方面,Cadence表现出了优越的性能,而在印 刷电路板制作方面,印制电路板(PCB)设计工具的领导者,美国PADS Software
12

南京航空航天大学硕士论文

Inc.公司开发的PADS EDA系统则体现出了其先进的板级(原理图/PCB/仿真)设计 技术。 PADS 2005是Mentor Graphics推出的崭新的电路设计解决方案,该系列软件 由2004升级到2005有一些改进和提高,软件的名称也有做了一些调整:原理 图:由原来2004的PowerLogic改为PADS logic(原PowerLogic);PCB:由原来 2004的PowerPCB改为PADS Layout(原PowerPCB);布线器:由原来2004的 BlazeRouter改为PADS Router;仿真器没有变名称,还是HyperLynx。 本次印刷电路板设计采用的是PADS Layout,该PCB设计环境,支持多层/高 密度/高速PCB设计,可实现高效率的布线推挤与形状优化、规则驱动下的高速信 号设计(差分对、源同步信号、阻抗连续控制及延时控制)、设计复用(Design Reuse)、电气规则检验(DRC)、可测试性分析(DFT)、可制造性分析(DFF/DFM), 支持标准设计图框与明细栏自动创建,提供模拟/RF电路设计模块,支持柔性板 (FPCB)设计,兼容Protel /Altium Desinger /P-CAD /Expedition /BoardStation /Zuken设计文件与封装库,支持汉字输入,支持CAM/SMT等生产及自动装配文件 输出。 设计过程中,只需将通过Cadence设计出的原理图生成网络表导出,在需要 进行PCB设计时将该网络表导入即可进行设计。

13

基于 GPRS 的嵌入式家庭智能系统设计

第三章 系统硬件设计
3.1 嵌入式家庭智能系统硬件系统结构设计
正如前文所述,在本次设计中,系统网络的结构包括了家庭智能控制系统、 家庭子系统与外部网络三大部分,其中家庭智能控制系统+家庭子系统构成家庭 内部网络。此次的设计以家庭内部网络为主体。因此,该嵌入式家庭智能系统的 硬件系统分为两个部分:家庭智能控制系统和家庭子系统,如图3.1所示。 1) 家庭智能控制系统部分,即主控制器:主要包含ARM处理器核心板及其外 围电路设计,如电源管理电路、键盘控制接口电路、GPRS模块外部接口电 路、串口接口电路、RS485转换电路、LCD及触摸屏接口电路等; 2) 家庭子系统部分:包括红外家电控制子模块、电子门禁子模块、温度测试 子模块及开关量控制子模块四个部分,四个子模块相互独立,通过RS485 总线构成家庭子系统网络。

家庭智能控制系统

家庭子系统
红外家电控制

GPRS模块 电源管理 RS485转换 电路 RS485

ARM核心板
LCD及触摸 屏接口 键盘控 工作状态 制 指示灯

串口接口电 路

RS485 转换 电路

电子密码锁 温度报警器 其他开关量及 指示灯

图 3.1 系统硬件框图

14

南京航空航天大学硕士论文

3.2

嵌入式家庭智能控制系统硬件设计
根据系统基本需求,嵌入式家庭智能控制系统,以下简称主控制器,其硬件

电路设计以FS2410核心板为基础, 以优龙公司ST2410开发板的硬件设计思路为参 考和依据,设计出了其外围电路,电路设计主要包括如下几个部分,如图3.2示: 1) FS2410核心板的电源管理电路。 2) 键盘控制接口电路。 3) GRPS模块外部接口电路。 4) 串口接口电路。 5) RS485转换电路。 6) LCD及触摸屏接口电路。 7) 工作状态指示电路。

主电源

GPRS模块 串口1及相关I/O信号

GPRS电源

隔离485

串口3

LCD接口

LCD

FS2410核心板
复位电路 串口2 串口 总线 按键 总线 工作状态 指示灯 AD接口 触摸屏

图 3.2 主控模块硬件设计框图

3.2.1 电源管理电路 在该系统中,需要使用直流稳压电源。其中,ARM微处理器常用的内核工作 电压为3.3V (如S3C4510B) 2.5V , (如S3C44B0) 1.8V , (如S3C2410、 AT91Rm9200) 等,其中与外设接口部件的工作电压一般为3.3V,而目前大多数外设器件还需要 采用5V的工作电压,其余外围器件需要3.3V电源,而GPRS模块及其外围电路需要 提供3.3V-4.8V的电压,并且考虑到RS485接口芯片也需要使用单一4.75V-5.25V 电源供电,为了简化系统电源电路的设计,我们决定为整个系统输入电压为高质 量的12V的直流稳压电源,通过常用的DC-DC转换器可以完成12V到5V或3.3V及其 他任意电压的转换,同时利用该电源通过RS485总线为家庭子系统供电,为家庭 子系统模块节省了电源电路的设计。
15

基于 GPRS 的嵌入式家庭智能系统设计

我们选用的是LM2596开关电压调节器系列, 为核心板、 RS485接口芯片和GPRS 模块及其外围电路提供12V到5V和3.6V电压转换。LM2596开关电压调节器是降压 型电源管理单片集成电路,能够输出3A的驱动电流,同时具有很好的线性和负载 调节特性。LM2596固定输出版本有3.3V、5V、12V,可调版本可以输出小于37V 的各种电压。 利用开关,外接12V电源入口,如图3.3所示。

图 3.3 外接 12V 电源

其中,主电源电路如图3.4所示。

图 3.4 主电源电路

GPRS模块电源电路如图3.5所示。

图 3.5 GPRS 模块电源电路

16

南京航空航天大学硕士论文

而其余外围电路器件通常需要的是3.3V直流稳压电源, 在此我们选用LM1117 低压差电压调节器将通过主电源电路得到的5V直流电压转换为3.3V电压供电, 如 图3.6所示。

图 3.6 外围电路电源电路

3.2.2 键盘接口电路 核心板为用户提供了若干可编程的I/O端口,用户可以将每个端口配置为输 入模式、输出模式或特殊功能模式,由片内特殊功能寄存器控制,在本系统的设 计中,为了减小系统面积,简化键盘电路设计,将8个按键直接通过74HC245与系 统的数据总线连接,按键的读取主要采用扫描方式,通过程序的定时读取得到按 键值,同时,将8个按键通过或门连接到CPU的中断口,这样在任何一个按键按下 时,都将产生一个按键中断,在软件设计时可以方便地根据需要将按键读取程序 设计为定时扫描方式或中断读取方式。接口电路如图3.7示。

图 3.7 键盘接口电路

3.2.3 GPRS 模块外部接口电路 在该系统中,选用西门子公司推出的新一代无线通信GPRS模块MC39i。这一 款产品是西门子公司推出的全新的不含铅的环保型产品。MC39i正是MC35i GPRS
17

基于 GPRS 的嵌入式家庭智能系统设计

通讯模块的升级产品,升级之后模块颜色较MC35i更显深绿,大小尺寸不变,管 脚和主要性能指标不变,跟原有的MC35i产品基本兼容。 MC39i是新一代GSM/GPRS双模模块,它设计小巧、功耗很低,与MC35i完全兼 容,为用户提供了简单、内嵌式的无线GPRS连接。其双信道传输模式极大的改善 了GPRS的传输性能。通过ZIF接口(特殊电缆连接口)可以轻松建立模块和应用 设备间的联系。 MC39i可广泛应用于企业短信广告、短信通知、短信查询、短信监控、GPRS 上网等领域。如移动车辆监控调度系统、水利电力监控,移动性数据查询系统、 移动性证券交易和信息查询、公安移动性数据(身份证、犯罪档案等)查询、交 警移动性数据(车辆、司机档案等)查询、移动办公及管理以及其他一些应用领 域。 MC39i具有永久在线功能,可实现快速数字接入和高速数据传输。将它应用 于笔记本电脑、PDAS(个人数字助理)和手机,可以提供更快的无线浏览网页的 能力[21]。 MC39i支持EGSM900/GSM1800双频,支持GPRS Class8/Class B,支持GSM Phase2/2+,各技术参数如表3.1所示。
表 3.1 技术参数

输入功率 输入电压

Class 4 EGSM900 2W;Class 1 GSM1800 1W 3.3-4.8V 休眠状态:3mA(最大) 空闲状态:15mA 发射状态:300mA(平均) GPRS:590mA(平均)

功耗

2.50A(峰值)控制 重量 体积 环境温度 数据速率

AT指令直接控制 9g 54.5±0.2×36.0±0.2×3.55±0.3mm ﹣25℃~﹢75℃(正常操作的情况下) 下行最大速率为85.6kbps 上行最大速率为42.8kbps CSD状态下最大速率为14.4kbps 40﹣Pin,包括电源、3V SIM卡、RS232接口、语音 、控制等管脚、接50Ω天线

接口

18

南京航空航天大学硕士论文

MC39i可以快速安全可靠地实现系统方案中的数据、语音传输、短消息服务 和传真。 该模块的正常运行需要相应的外围电路与其配合。 该模块结构图如图3.8 所示。

图 3.8 MC39i 结构框图

如图3.9所示,MC39i有40个引脚,通过ZIF连接器分别与1.电源电路、2.启 动与关机电路、3.数据通信电路、4.SIM卡电路、5.指示灯电路、6.语音通信电 路6组电路连接。

图 3.9 MC39i 引脚接线
19

基于 GPRS 的嵌入式家庭智能系统设计

1.电源电路,该部分电路在3.2.1节已经进行了介绍,在这里就不再重复。 2.启动与开关电路。 MC39i有两个引脚,分别用于控制模块的启动和关闭:15脚 /IGT:模块启动 控制接口;31脚 /PD脚(Power Down):关机控制接口。 1) 启动电路设计要求: 启动电路由开漏极三极管和上电复位电路组成。模块上电10ms后(电池电压 须大于3V),为使之正常工作,必须在15脚(/IGT)加时长至少为100ms的低电平信 号, 且该信号下降沿时间小于1ms。 启动后, 15脚的信号应保持高电平。 如图3.10 所示为启动电路产生的信号,从中可以看出10ms的延时和100ms的低电平。

图 3.10 启动信号时序图

2) 电路设计: 可以通过两种方式来实现启动电路。这里的设计采用的是第二种方式。 第一种方式为手动方式,电路如图3.11所示,主要用于MC39i模块的单独调 试,当S1被按下时Q3基极为高电平,Q3导通,使IGT脚电压被拉低,启动模块。

图 3.11 IGT 启动电路(1)

第二种方式为程控方式,电路如图3.12所示。POWER ON脚为ARM处理器的I/O 口提供的控制端,用编程方式通过I/O口提供控制电压。当POWER ON脚电压由低 变高时,电流方向为逆时针方向,此时电阻R21的电压上正下负(当UR21≥0.7V时) 使Q8的发射结正偏,晶体管处于导通状态,IGT脚处于低电平。当POWER ON脚电 压由高变低时,此时电阻R21的电压(上负下正)使Q8的发射结反偏,晶体管截 止, IGT脚处于高电平。 显然IGT脚在POWER ON脚电压由低变高时处于低电平, GPRS 模块开机。

20

南京航空航天大学硕士论文

图 3.12 IGT 启动电路(2)

3) 关机电路 /PD脚(Power Down关机控制接口):通过三极管给该脚一个大于3.5s的低 电平,可以关闭GPRS模块。电路图设计与图3.12类似。

图 3.13 PD 关机电路

3.数据通信电路 在系统设计中,MC39i模块是作为数据通信设备即DCE,而以ARM为核心的中 心控制系统作为数据终端设备即DTE,两者之间通过串口进行通信。 DCE-DTE串口信号对应关系如图3.14所示。

图 3.14 DCE-DTE 串口对应关系

在此基础上,MC39i模块作为DCE设备,中心控制器以ARM处理器为中心作为 DTE设备,MC39i模块和ARM处理器的串口对应关系如表3.2所示。
表 3.2 MC39i 和处理器串口接线表

21

基于 GPRS 的嵌入式家庭智能系统设计

由于主控制器采用的S3C2410处理器拥有三路UART,其中,串口1可以通过对 通用I/O的扩展实现和DCE的全串口通信。其对应关系如图3.15所示。

图 3.15 MC39i 与 ARM 处理器串口连接关系图

4.SIM卡电路 MC39i还提供了6个SIM卡电路接口(25~29脚),如图3.16所示。其中编程 端我们不用,其它的接口按顺时针方向分别对应于MC39i的5个管脚: CCCLK、 CCRST、CCVCC、CCGND、CCIO。
数据端口I/O 时钟CLK

编程

复位RST

接地端GND

电源VCC

图 3.16 SIM 卡座接口示意图

1) 设计要求: 在GSM11.11为SIM卡预留5个引脚的基础上,MC39i在ZIF连接器上为SIM卡接 口预留了6个引脚,所添加的CCIN引脚用来检测SIM卡支架中是否插有SIM卡。当 插入SIM卡,该引脚置为高电平时,系统方可进入正常工作。CCIN、CCRST、CCIO、 CCCLK、CCVCC和CCGND分别对应与MC39i的ZIF连接器的24~29号引脚。 其中,CCVCC脚和CCGND脚之间需要外接一个大于等于200nF的电容,并且该 电容需要在靠近SIM卡读卡器地方放置。在PCB布线时,根据MC39i的电气要求和 电磁兼容的要求,MC39i的各引脚和外部器件之间的电缆长度不得超过200mm,因 此SIM卡读卡器必须放置在和MC39i引脚端距离小于200mm的位置。 2) 电路设计:SIM卡读卡器的电路连接图如图3.17所示。

22

南京航空航天大学硕士论文

图 3.17 MC39i 与 SIM 卡连接电路

5. 指示灯电路 MC39i有一个同步信号脚SYNC (32脚Synchronization signal),该脚是一 个同步信号输出端,该脚输出的信号,反应了模块的工作情况。本系统在该端通 过一个三级管接入LED灯,接法如图3.18所示。LED灯受到该脚信号控制,可以显 示MC39i模块运行的状态。 LED 灯熄灭时:表示 MC39i 处于关闭、休眠、报警或者充电状态。 LED 灯 600ms 亮/600ms 暗:表示 SIM 卡没有插入,或者正在搜索网络,或者 正在认证用户,或者正在注册网络。 LED 灯 75ms 亮/3s 暗:表示已经注册上网,处于待机状态。 LED 灯 75ms 亮/75ms 暗/75ms 亮/3s 暗:表示一个或多个 GPRS 文件被激活。 LED 灯闪烁:表示 GPRS 的数据传输,当 GPRS 数据传输时,在交换一个数据 包后,LED 灯将会在一秒内点亮。闪烁的持续时间约为 0.5 秒。

图 3.18 SYNC 端指示灯电路

6.语音通信 MC39i的语音通讯脚Audio Interface(33-40脚):提供两个语音接口,每 个接口均有模拟麦克输入和模拟耳机输出。第一个语音接口的默认配置为
23

基于 GPRS 的嵌入式家庭智能系统设计

VotronicHH2SI230.3/V1.1 /0手持话筒;第二个语音接口为头戴式耳机和麦克设 置。可以通过AT指令AT^SNFS选择语音模式。本系统并没有使用到这几个接口因 此在这不做介绍。
3.2.4 串口接口电路

在S3C2410处理器中预留了三路UART,可以实现串口通信。而在本系统的设 计中,家庭智能控制系统与PC机相连的方式就是采用了通过RS232串行接口进行 数据通信的方式。如我们已知,PC机采用的是RS232串行接口,而ARM处理器内部 产生的信号为TTL电平,因此要实现TTL电平与RS232电平之间的转换,就需要用 到串口接口电路,这里我们选用MAX3232芯片来实现电平的转换。MAX3232是常见 的MAX232芯片的改进型,具有更低的功耗,max3232供电电压5v或3.3V,耗电 0.3mA,外接4个0.1μF电容。 在GPRS模块通信中已使用了S3C2410处理器三路UART中的第一路,因此,在 串口接口电路设计中, 将与PC机相连的串口信号与S3C2410处理器的串口2通过电 平转换芯片MAX3232与之相连。连接方式如图3.19所示。

图 3.19 串口接口电路

3.2.5 RS485 转换电路 本系统设计的家庭智能控制器,家庭内部网络布线采用RS485总线。 RS485 采用差分信号负逻辑,+2V~+6V表示“0”,- 6V~- 2V表示“1”。RS485有 两线制和四线制两种接线,现在多采用的是两线制接线及半双工的通讯方式,这 种接线方式为总线式拓扑结构在同一总线上最多可以挂接32个结点。 该总线常用 于工业分布式控制, 目前也成为民用分布式监控系统及家庭组网布线的一种常用 布线方式。其最长的传输距离可达到1200米,尽管实际传输距离受到信号失真及
24

南京航空航天大学硕士论文

噪声等影响一般都小于该距离,但也足够满足家庭布线的需求。RS485通信网络 结构图如图3.20所示。 系统以家庭智能控制系统作为主机,多个单片机控制各家用设备作为从机, 构成了半双工的RS485现场控制系统。由于ARM处理器没有提供现成的RS485总线 接口,因此需要选择转换芯片实现接口的转换。本系统选用了MAXIM公司生产的 一种RS485接口芯片MAX485。

图 3.20 半双工 RS485 通信网络结构框图

接口电路设计思路如下: 在前面的系统设计中,S3C2410处理器的串口1和串口2已经各有分工,在 RS485转换电路中,我们采用S3C2410处理器的串口3与该转换电路相连接。 已知,ARM 处理器和单片机的串口输出都为TTL电平,因此ARM处理器和单片 机与MAX485的连接电路一致,设计中,将ARM处理器(或单片机)的串口引脚RXD 和TXD分别连接MAX485的RO和DI脚,其电路如图3.21所示,CTL_485脚接于ARM处 理器(或单片机)的I/O口作为控制端,控制主从机的接收和发送。其原理为当 CTL_485=1时使能DE端作为发送器,当CTL_485=0时,使能/RE端作为接收器。

25

基于 GPRS 的嵌入式家庭智能系统设计

图 3.21 RS485 转换电路

在电路设计过程之中要注意的是,由于通信网络具有重要的功能,所以保护 线路正常工作, 不受外界干扰, 是相当重要的。 RS485总线一般传输距离较长 (可 达1200米),本身抗干扰能力相对较弱,通信节点受损后无法恢复,因此必须采 取多种措施加以保护,将损失降低到最小程度。 通常,造成RS485通信部件损坏的主要原因是雷击或外界高压干扰,因此, 保护总线最有效的方法是对通信总线进行保护, 在布线时要注意远离强电干扰源 和容易引雷的位置, 较为理想的方式是采用金属管中走线, 可以有效的屏蔽外界, 如果无法达到,也要采用有屏蔽层的电缆作为通信总线,但效果要差些。线路要 采用0.75平方毫米以上的双绞线。同时,屏蔽层要接地良好。 此外, 在每个通信节点上采取一定的保护措施, 也可以收到一定的效果, 如: 在每个节点的A、B线上串联一个10欧姆的隔离电阻,可以防止某个节点损坏后影 响整条线路的通信功能;在RS485芯片的A、B线接入端,各和地线之间并联一个 高速的TVS管,对一定强度的浪涌也有保护作用。 从对系统内部数字电路的抗干扰角度考虑,设计485接口时使用光隅对内外 电路进行隔离,而且在家庭内部进行485通讯时,通讯距离一般较短,可能会使 用较高的通讯速率。所以选择通讯隔离光隅时使用了HCP0601高速光隅,HCP0601 的最高通讯速率可以达到10Mbps,足以满足RS485的通讯速率要求。而对于485

26

南京航空航天大学硕士论文

芯片的收发控制端,开关频率相对来说要低的多了,所以出于成本的考虑使用普 通的光隅TLP181进行控制端隔离。 3.2.6 LCD 及触摸屏接口电路 LCD及触摸屏作为人与家庭智能控制系统的人机接口,在智能化系统设计中 是必不可少的。在本次设计中,我们采用的硬件设计思路直接参考了优龙公司 ARM9-ST2410开发板中对于LCD及触摸屏接口电路的设计。 在电路板上集成了4线电阻式触摸屏接口的相关电路; 采用50芯LCD接口引出 了LCD控制器的全部信号,且这些信号引脚都加了74LVTH162245(16位总线变换 器)驱动,所以LCD输出更加稳定可靠;支持黑白、4级灰度、16级灰度、256色、 4096色STN液晶屏,尺寸从3.5寸到12.1寸,屏幕分辨率可达到1024×768象素; 支持黑白、4级灰度、16级灰度、256色、64K色、真彩色TFT液晶屏,尺寸从3.5 寸到12.1寸,屏幕分辨率可达到1024×768象素;标准配置为三星256K色240× 320/3.5英寸TFTy液晶屏,带触摸屏;板上引出一个5V电源输出接口,可为大尺 寸TFT液晶屏的5V CCFL背光模块供电。如图3.22所示:

图 3.22 与 74LVC16245 连线图

经过74LVC16245驱动之后,再接入接口电路,如图3.23所示。

27

基于 GPRS 的嵌入式家庭智能系统设计

图 3.23 LCD 及触摸屏接口硬件接口电路

3.2.7 工作状态指示电路 设计中, 还通过总线接入的方式接入了8个LED指示灯用于对系统工作状态的 显示,选用锁存器74HC574连接核心板和LED指示灯,上升沿触发锁存数据, 74HC574的输入引脚和输出引脚分列在集成块的两边,这样的排列使制作印刷电 路板时的布线比较简单。其连接电路比较简单,如图3.24所示。

图 3.24 工作状态指示灯电路

3.3

家庭子系统硬件设计
对于家庭子系统的设计,我们采用的是模块化的设计思路,将家庭子系统细

分成若干模块,每个模块分别采用单片机独立控制,通过RS485总线连接构成家 庭子系统网络。 目前,家庭子系统的设计中包括了红外家电控制子模块、电子门禁子模块、 温度测试子模块及开关量控制子模块四个部分。在实际的应用中还可根据需要, 在此基础上扩展出其他的应用子模块。
28

南京航空航天大学硕士论文

需要特别提出的是, 在此次设计中, 由于对整个系统的设计尚处于测试阶段, 因此在对家庭子系统测试电路的硬件设计上为了简化设计、降低成本,我们仅采 用了一块单片机,利用软件设计实现对四个子模块分别控制,将四个子模块电路 的设计集中在了一块电路板中,以便于对功能进行测试。而在实际的家庭子系统 中,各模块将根据实际使用条件使用单芯片实现一个或多个子模块功能。子模块 硬件功能结构图如图3.25示。

隔离电源

段码LED显示 总线及IO

开关状态输入

485

串口 CPU

总线

开关状态输出

复位电路 模拟IIC 串行EEPROM 总线 按键

IO模拟

红外收发

温度传感器

图 3.25 子模块硬件设计结构框图

在设计上,仍然分别对四个子模块进行一一介绍,四个子模块分别为: 1) 红外家电控制子模块。 2) 电子门禁子模块。 3) 温度测试子模块。 4) 开关量控制子模块。 3.3.1 红外家电控制子模块 红外通信使用红外线作为传输介质。红外线是波长介于750nm和1mm 之间的 电磁波。红外数据协会为了使不同的厂商的红外产品获得最好的通信效果,限定 红外通信使用的红外线波长介于850nm和900nm之间。在红外通信系统中,待发送 的信号经过适当的编码后送到发射装置经过电光转换后以红外信号发送出去, 接 收装置把接收到的红外信号进行光电转化,恢复出电信号,解调译码后恢复出原 来信号。红外通信作为一种数据传输的手段,可以在很多场合应用。例如手提电 话之间的资料传输、公共设施的红外遥控、自动抄表系统和家电的遥控等等。在 红外家电控制子模块中,采用基于单片机的红外遥控实现该子模块,可以用于家 电的遥控开关,亦可实现数据的传输。

29

基于 GPRS 的嵌入式家庭智能系统设计

3.3.1.1

红外发射电路设计

因为要考虑各种家电红外控制码的不同, 所以红外电路的设计使用单片机的 I/O口线进行模拟红外发送与接收,在硬件设计上较为简单,发送时需两个I/O 口,一个I/O作为载波信号线,另一个I/O作为数据发送线,其发送电路如图3.26 所示,载波信号和数据信号由两个三极管实现电平逻辑相与,然后驱动红外发射 管将数据发出,所产生的载波信号及数据脉冲序列完全由软件进行控制,图中的 D4为指示灯,在数据线上有信号通过时该LED将会闪烁。

图 3.26 红外发射单元电路

3.3.1.2

红外接收电路设计

系统设计中也设计了红外接收电路,主要是用于调试红外发射模块,学习其 它遥控器的遥控信号,以适应各种不同的家电的红外控制。 接收电路的设计同样也为软件解码方式,接收电路如图3.27所示。其工作流 程是,红外接收端使用的是TSOP34838红外接收头,TSOP34838将接收到的红外信 号转为电平序列后送到CPU的I/O口上,为方便软件的设计将接收端接入CPU的中 断口INT0,同时将接收端经74HC14反相后接入CPU的另外一个中断口INT1上,这 样在使用软件进行红外解码时就可以很方便地根据两个中断口产生中断的时间 差计算出数据电平变化的宽度,还原出接收的数据。

图 3.27 红外接收单元电路
30

南京航空航天大学硕士论文

在实际应用时,红外接收端除用作红外信号学习及一些简单的数据交换外, 只要将红外控制模块的时序稍加修改,就可以改为红外报警装置,用于阳台或窗 户的防盗报警,只需让红外发射端不断发出同种信号,红外接收端不断接收并检 测该信号,当红外发射和接收端被阻隔,则接收端无法接收信号,即出发报警。 红外发送和接收模块的软件设计见4.2.3.1节。 3.3.2 电子门禁子模块 电子门禁子模块为一个由单片机为主控的电子密码锁。该密码锁通过RS485 与智能家庭控制系统相连,用户可以通过远程或本地方式控制家庭智能控制系 统,实现密码锁的密码修改、报警解除等操作,同时如果存在本地非法用户在输 错开门密码试图闯入用户居家时,向远程用户报警。用户只有输入正确的密码才 能开锁。 对于该模块的实现,主要是通过软件设计,完成对密码的修改或识别以及警 示功能,在硬件电路设计上,主要由单片机、输入键盘及6个LED数码管构成。 在此特别要指出的是,MCS-51单片机有4个8位并行端口:P0、P1、P2、P3, 共32根I/O线, 每个端口都是8位准双向口, 共占用32条引脚。 它们都是双向通道, 每一条I/O线都能独立地用作输入或输出,作为输出时,数据可以锁存,作为输 入时,数据可以缓冲。4个端口在以I/O工作方式时特性基本相同,其中,P1口只 能用作I/O口,而P0、P2、P3口还具有其他的功能。P0口可作为地址/数据总线分 时使用,这其中包括用作输入数据和输出地址/数据总线。即P0口可以作为8位双 向数据总线。需要指出的是,P0端口与其他端口不同,它的输出级无上拉电阻。 用作普通I/O端口时,输出级是开漏电路,需外接上拉电阻,才能驱动MOS电路; 而用作地址/数据总线时,则无须外接上拉电阻[18]。 由于本电路仅为测试电路,为了简化设计,整个电路仅采用一块单片机,要 与四个模块相连,出现了接口资源比较紧张的情况,为此,在设计中,我们专用 P0端口,专门作为双向I/O端口负责读写数据,故在设计中P0端口均接了上拉电 阻以增强驱动力,采用软件控制,定时扫描的方式,键盘向P0写入密码,再通过 P0向LED显示键盘所输入的密码,P1端口的P1.0-P1.5端口分别作为六个LED的片 选信号端口。单片机连线电路如图3.28所示。

31

基于 GPRS 的嵌入式家庭智能系统设计

图 3.28 电子密码锁单片机连线电路

对于输入键盘电路,没有采用4×4的输入键盘,而是直接采用通过两级双向 总线驱动器将16个按键接入P0端口。采用软件控制,定时扫描的方式,读取键盘 键入的数据。按键接入如图3.29所示。

图 3.29 键盘接入电路

采用了6个7段共阳极LED接入电路,采用P0口作为字型操作,选用P1.0-P1.5 作为字位操作即六个LED的片选操作,采用动态扫描显示。电路如图3.30所示。

32

南京航空航天大学硕士论文

图 3.30 LED 接入电路

在硬件设计的基础上,其余的操作均通过软件设计实现,具体软件设计思路 见4.2.3.2节。 3.3.3 温度测试子模块 温度测试模块在家庭智能系统中是必不可少的, 许多常用的家用电器设备可 以通过智能控制器读取温度信号进行自主调节,比如空调、冰箱。除此之外,温 度测试模块还可以与报警系统相连,构成温控报警系统,当室内发生火情等紧急 情况,可以通过温度测试及时地向用户发出报警信号,做出处理。 本文的温度报警模块是由单片机作为主控芯片,作为从机由RS485总线与主 控制器(ARM处理器)通讯。温度传感器选择Dallas公司的单线数字温度传感器 芯片DS18B20。该芯片与传统的热敏电阻有所不同,它可以直接将被测温度转化 成串行数字信号,以供单片机处理,不需要再设计模数转换电路,使用方便,此 外它还具有微型化、低功耗、高性能、抗干扰能力强等优点。通过编程,DS18B20 可以实现9~12位的温度读数。信息经过单线接口送入DS18B20或从DS18B20送出, 因此从微控器到DS18B20仅需连接一条信号线和地线。读、写和执行温度变换所 需要的电源都可以由数据线本身提供,而不需要外部电源。每片DS18B20在出厂 时都设有惟一的产品序列号,此序列号存放在它的内部ROM中,微控处理器通过 简单的协议就能识别。因此多个DS18B20可以挂接于同一条单线总线上,这允许 在许多不同的地方放置温度传感器,本测试系统就是采用了多个DS18B20接于同 一总单线总线的接线方法。 这种接法非常适合用于家庭智能这种分布于各个房间
33

基于 GPRS 的嵌入式家庭智能系统设计

的温度测试系统。而且对数字温度的分辨率,用户可以从9位到12位选择,配置 实现9~12位的温度读数,足够满足日常使用的精度。此外DS18B20还有一个特点, 用户可以自动设定告警的上下限温度。 并且告警寻找命令可以识别和寻址那些温 度超出预设告警界限的器件,通过这个特点可以方便的发现报警的房间,能够更 清楚的了解情况。 DS18B20的采用单线 (1-wire) 总线技术, 因此电路设计非常简单, 如图3.31 所示,是使用了4路温度采集的接线方式,将所有DS18B20的DQ上拉后连接到单片 机的一个I/O口上即可,本系统中使用单片机P3.7口,通过DS18B20内部唯一的序 列号进行区分。保证每个DS18B20电源充足,采用外部供电方式。

图 3.31 温度测量电路图

温度报警器的软件设计见 4.2.3.3。 3.3.4 开关量控制子模块 除了以上三个子模块之外,本测试系统还设计了单片机控制、检测一组开关 和一组LED灯来仿真对灯具等开关量家用设备的状态监测。 LED硬件部分:将8个LED灯经过锁存器接在单片机的P0口,选用数据锁存器 74HC574,以防止在系统中同时取样大量的数字输入端,在电路设计中,经常使 用的锁存器是74HC374和74HC574,这两种锁存器的功能相当。由于74HC574的输
34

南京航空航天大学硕士论文

入引脚和输出引脚分列在集成块的两边, 这样的排列使制作印刷电路板时的布线 比较简单;另一方面,74HC574的输出电容值为15pF,这个值与74HC244的输出电 容值几乎一样,因此在设计中一般选用74HC574,电路连接如图3.32所示,使用 锁存器可以同时取样大量的数据输入端。

图 3.32 LED 灯测试子模块

开关测试硬件部分:将一组开关经过双向总线驱动器74HC245接入单片机的 P0口,74HC245是三态门的典型电路,它分成八个A端和八个B端,到底是A向B送 数,还是B向A送数,是由1脚DIR控制的, 74HC245是总线驱动器,不带锁存器, 主要用于双向总线驱动。当/OE=0,DIR=0,B->A;当/OE=0, DIR="1", A->B; 当/OE=1, DIR="X", X="0或者1",输入和输出均为高阻态;高阻态的含意就是相 当于没有这个芯片。在本系统中,作为开关电路测试部分,我们固定了其数据传 送的方向必然是从B传向A端,即DIR始终置为零,为了防止总线数据的冲突,通 常使/OE=1,通过软件控制定时扫描的方式,每隔固定时间给/OE端一个低电平, 通过单片机读取开关量的开关情况,并传递给中心控制系统,可以依此检测家中 电器开关的开关情况。具体电路如图3.33所示。

图 3.33 开关量测试电路

开关量测控部分的软硬件实现都相对比较简单,因此,软件设计部分将不再 多做介绍。
35

基于 GPRS 的嵌入式家庭智能系统设计

第四章 系统软件设计
4.1 简介

4.1.1 术语 主站:相对于子模块来说,主控制器为主站。而相对于远程控制而言,PC 端或用户端手机为主站,而主控制器则为从站。 从站: 子模块永远为从站。 主控制器可根据通讯对象的不同作为主站或从站。 4.1.2 引用标准 Xmodem协议说明 4.1.3 概况 软件的设计类似于硬件的设计方式,按照不同的功能将软件进行模块化设 计,以增强软件的可维护性及可移植性。 按照系统的功能将软件分为以下几个主要模块:主控制器、家庭子系统以及 后台软件,其中家庭子系统由子系统中各个子模块构成。

4.2

软件功能设计

4.2.1 软件系统结构 整个家庭智能系统的软件主要分为三个部分,后台软件,主控制器软件,及 各个子模块软件。三部分软件的结构关系如图4.1示。
短信

GPRS GPRS RS232

SmartHome
RS-485

Sub Modula

图 4.1 家庭智能系统结构图

36

南京航空航天大学硕士论文

用户手机通过短信通道向主控制器发出指令进行相应的控制。 PC端的后台软 件通过Internet和移动GPRS服务连接, 再由移动GPRS服务器和主控制器进行GPRS 通讯。同时PC端软件也可以通过本地的RS232接口和主控制器进行通讯,不过这 种方式一般只用于对主控器的本地调试及软件升级等。 主控制器和家庭内的各个子模块之间的连接通过RS485串行总线完成。 4.2.2 家庭智能系统模块软件设计 4.2.2.1 总体结构及功能 主控制器软件主要实现以下功能: 1) 通讯 RS485 通讯:连接各个子模块,收集数据,发出控制命令等。 RS232 通讯:和 PC 端连接,主要用于本地的调试及应用程序的下载。 GPRS 通讯:通过手机模块,连接远端用户手机或远端后台程序。 2) 人机交互 通过按键,触摸屏,LCD,及LED等实现人机交互,接受用户输入,实现用户 对整个系统的本地控制。 根据以上所述,软件设计时尽量按不同的功能进行软件的模块化设计。整个 系统软件可以分为几个层: 驱动层:包括底层的 RS232/485,MC39i,GPRS 模块,键盘,触摸屏 LCD/LED,时钟,NAND Flash 等硬件驱动。 系统层:使用μClinux 多任务操作系统为系统作任务管理。 应用层:包括 UI 任务,GPRS 通讯任务,RS232 通讯任务,RS485 通 讯任务,各个任务由 Linux Kernel 统一管理。 独立模块:Linux Bootloader 这一模块独立于整个应用程序,负责 Linux Kernel Image 的下载,μClinux 系统的启动,以及在系统进 入 Boot 状态时下载新的 Linux Kernel Image 并进行程序的更新。 协议分析模块:因为这一模块需要在各个子模块中应用,在设计程 序时尽量使之独立于操作系统,提供同样的输入输出接口,以方便 程序的移植。 软件的各个模块及相互间关系如图4.2示。

37

基于 GPRS 的嵌入式家庭智能系统设计

RS-485通讯 任务

RS-232通讯 任务

GPRS 通讯任 务

UI任务

协议数据处理模块

Linux Bootloader

Linux Kernel

RS-485/232 驱动

GPRS 模块驱 动

键盘/触摸 屏/LED/LCD 驱动

NAND Flash 驱动

时钟

图 4.2 软件各模块之间相互关系

4.2.2.2 详细介绍 1.协议数据处理模块(AppProtocalProcess) 因为所有的模块,包括子模块,主控制器,PC端后台程序等都需要用到这一 部分的功能,所以将这一部分放在最前面描述。且因这一模块也需应用在无操作 系统场合,设计时将这一部分设计成与操作系统无关,以方便程序的移植。 这部分程序实现的主要功能是串行口或GPRS通道接收到的数据中按照本文 中规定的协议进行分析得出正确的报文,以供主程序进行直接的数据处理。将直 接通过一循环缓冲和系统数据接收中断相连接。 将缓冲定义为结构体(AppProtrocalBuf),其定义的成员变量说明如下: Uint8 inBuf[];数据接收缓冲,定义为字节数组,使用时作为循环 队列。 Uint8 *pInPtr;数据输入指针,在系统数据接收中断中根据该指针 将数据输入缓冲。 Uint8 *pOutPtr;数据输出指针,处理程序根据该指针读取数据并 处理。 Uint16 len; 当前缓冲中接收到的数据长度, 定义缓冲最大为 65535。 Uint8 outBut[];提取到正确的报文后,针报文放入该缓冲以供主 程序处理。 分为三个子程序: AppProtocalInit:初始化输入缓冲,及输出缓冲。
38

南京航空航天大学硕士论文

AppProtocalSendToBuf:供数据接收中断使用,将接收到的数据放 入缓冲供待处理。 AppProtocalProcess:分析缓冲数据,得到正确报文,放入报文缓 冲,以供主程序使用。 AppProtocalSendToBuf处理流程如图4.3示。

接收的数据 data

队列已满 Len=MAX?

No

数据入队 *pInPtr =data pInPtr ++

Yes FALSE TRUE

图 4.3 AppProtocalSendToBuf 处理流程

AppProtocalProcess处理程序:设置静态计数器控制每次进入程序时的状 态,流程如图4.4示。

39

基于 GPRS 的嵌入式家庭智能系统设计

开始,根据当前状 态跳转 default 寻找第一个帧 头标识状态 寻找第二个帧 头标识状态 等待长度标识 状态 等待完整报文 状态

N

收到数据 len!=0? Y 当前数据是帧 头标识? N 取出当前数据 ,调 整指针pOutBuf

YN

帧头长度不 足? Y 取第二帧头位置数 据 Y

N

数据长度标识 已收到? Y 取出报文长度标 识,调整指针

N

根据长度标 识,判断报文 是否完整? Y 取出前面的报文 , 并计算校验和 。

帧头标识 ? N 取出无用数据 ,调 整指针 N

N

校验和正确 Y 报文结尾标识 正确? Y

TRUE

取出正确报文 ,调 整指针

图 4.4 静态计数器控制每次进入程序时的状态设置

2.驱动部分软件设计 1) RS232/485驱动设计 串口驱动程序较为简单,主要提供以下几个接口函数,因FS2410共有三个串 口,所以中断函数总共有三个(UartISR0,UartISR1,UartISR2),分别针对三个串 口。同时其它几个函数在使用时也需要提供所操作的串口号。 UartInit:根据串口号及串口参数初始化串口。 UartISR:串口中断函数,将调用 AppProtocalSendToBuf 将收到的 数据放到协议处理缓冲当中。 UartSendChar:串口发送函数,根据串口号及串口设置参数发送一 个字节。 UartSendStr:串口发送函数,不同的是这个函数发送的是一个固定 长度的字符串。 UartPrintf:也是串口发送函数,但主要用于调试时使用,使用方 式类似于 printf 函数,格式化打印字符串。 将串口参数定义为一结构体: Struct UART_MODE{
40

南京航空航天大学硕士论文

Uint8 num; Uint8 bps; Uint8 stop; Uint8 len; }

使用的串口号 通讯速率 停止位参数,1位,1.5位,2位停止位。 数据长度,7位,8位,9位数据长度。

Uint8 parity; 奇偶校验位,无校验,偶校验,奇校验等

2) GPRS模块驱动设计 GPRS模块和系统的接口也是通过串口相连接的,因此从系统的角度来看, GPRS模块和一个普通的MODEM没什么两样。而实际上,GPRS通讯模块的工作方式 也和MODEM非常类似,只是它的连接过程和普通MODEM不太一样而已。 GPRS模块在进行拨号连接之前,需要一个特殊的初始化过程。其初始化过程 如图4.5示。
N

开始 断续寻找网络

AT+CSQ

AT+CGREG ?

AT+CGCLASS =’B’ ,设置B模式

继续输入“A/”命 令

N

返回“10~ 31,0”之间的 数值? Y AT+CGACT =1,1;激 活GPRS模块 Y

返回“0,1”

Y

AT+CGDCONT =1, IP,CMNET

网络失败

RETURN TRUE

RETURN FALSE

N

返回OK?

图 4.5 GPRS 模块初始化过程

需要提供以下几个函数用来对GPRS模块进行操作 GprsInit:初始化 GPRS 模块。 GprsCmd:向 GPRS 发送 AT 命令并接收模块返回。 GprsSendPack:通过 GPRS 发送数据包,该数据包定义为已封装好的 通讯报文。 GprsGetRec:接收 GPRS 收到的数据,接收完成后像串口中断一样将 数据放入接收缓冲以供分析。
41

基于 GPRS 的嵌入式家庭智能系统设计

GprsGetShortMsg:从 GPRS 模块接收短信息。 GprsSendShortMsg:通过 GPRS 模块发送短信息。 GprsSetStatus:设置 GPRS 模块状态,上线,下线等。 3) 键盘、触摸屏,LCD,LED驱动设计 这一部分主要用于UI任务,作人机交互。使用的LCD为320X240图形点阵式16 级灰度LCD,可以在上面做出较为精美的用户界面。控制器为FS2410自带的LCD 控制器,其设置的寄存器比较多,在其文档上也有很详细的说明,这里不再作详 细的介绍。 按键部分,包括主控制器的按键及电子门锁模块的按键部分,同为并行扫描 式按键,具体说明可以见硬件设计部分,电路本身不带硬件消抖功能,所以需要 自己在软件中进行去抖动。按键扫描过程如图4.6示,这一过程同样应用于电子 门锁模块。

KeyScan N 第一次扫描 CNT=0? Y OldKey =keyVal CNT=1

NewKey =keyVal

OldKey =NewKey ? Y 按键有效,将按键 值当作消息发给系 统

N

按键无效

CNT=0 NewKey =OldKey =0

RETURN

图 4.6 按键扫描过程

这一部分提供驱动函数如下: KeyScan:由定时中断函数调用,实现按键的扫描,取得按键值。 KeyGet:读取当前的按键值。 LcdInit:初始化 LCD 控制器。 LcdOn:打开 LCD 显示。 LcdOff:关闭 LCD 显示,在长时间没有操作时关闭显示节电。 LcdBackOn:打开 LCD 背光,有用户操作时打开背光。 LcdBackOff:一段时间无操作,则需关闭 LCD 背光。
42

南京航空航天大学硕士论文

LcdDispDot:在 LCD 上显示一个点。 LcdDispChar:显示一个英文字符。 LcdDispChinese:显示一个中文字符。 LcdDispStr:显示一个字符串,可以中英文混合,程序自动判断是 为中文或英文。显示到 LCD 边界时自动截断。 LcdDispPrintf:类似于 Printf 函数,格式化在 LCD 上打印字符串。 显示到 LCD 边界时自动截断。 LedOn:根据参数打开相应位的 LED 显示。 LedOff:根据参数打开相应位的 LED 显示。 LedBlink:根据参数闪烁相应的 LED。 TouchScan:扫描触摸屏输入,类似于按键的扫描方式。 TouchGetInput:取得触摸屏输入,返回值为当前触摸点的位置,当 两个不同点同进按下时,作为无效触点。 4) Nand Flash 驱动设计 Nand Flash一般容量比较大,其存储结构类似于硬盘的块存储结构,有几项 特点在编程时需要注意[29]: Nand Flash 擦写次数有限,不能无限制,频繁地对 NAND 设备进行写 操作。 NAND 设备存在坏块 NAND 设备以页(512B)为单位读,以块(16KB)为单位写,每次写 数据前必需对相应空间进行擦操作。 NAND 设备存储数据有一定的错误率,需要 ECC 校验保证数据的正确 性。 在本系统中,Nand Flash需存储以下数据: Linux Kernel Image 启动方式参数。 系统应用程序需要的参数。 中文点阵字库。 就使用而言数据的管理并不太复杂,所以不打算使用文件系统,直接对Nand Flash进行读写操作。因FS2410已经有提供Nand Flash的硬件接口,自带硬件ECC 校验, 所以操作起来还是较为简单的。 提供以下几个函数对Nand Flash进行操作: NandInit:初始化化 FS2410 中的 Nand Flash 接口寄存器。 NandEraseBlock:块擦除。 NandEraseAll:擦除整块 Flash。
43

基于 GPRS 的嵌入式家庭智能系统设计

NandReadPage:读取一页。 NandWritePage:写一页。 NandRemap:将 Nand Flash 中的块进行重新映射,剔除坏块。完成 后所有对 Flash 的操作将基于该映射表。 NandGetMap:读取映射表。 NandStoreMap:存储映射表,映射完成后在第 0 块 NandFlash 中存 储映射表,因为 Nand Flash 在出厂前保证 0 块为无错块。 5) 时钟驱动设计 使用的是FS2410中自带的实时时钟,时钟驱动较为简单,只需对时间进行读 取,设置,及相关闹钟控制即可。 RtcTimeGet:取时间。 RtcTimeSet:设置时间。 RtcSetAlarm:设置闹钟,并设置其打开或关闭状态。 3.操作系统层设计 1) Linux Bootloader 设计 在本系统中Bootloader除了要进行μClinux的启动外, 还需要实现程序的在 线更新。其处理流程如图4.7示。

Linux Bootloader

装载Linux 到SDRAM 中

装载完成,跳转到 Linux执行

初始化SDRAM , NandFlash ,串口 等 Y

状态字初始化为 Update

读取启动状态字 N

使用XMODEM 协议进 行程序更新

系统复位

Normal ? N Updata Y

程序更新完成

设置启动状态字为 Normal

图 4.7 Bootloader 处理流程

2) Linux Kernel 移植
44

南京航空航天大学硕士论文

这里所说的Linux并非标准的Linux而是经过简化改写的专用于嵌入式系统 的uClinux,其内核有两种可选的运行方式,可以直接在NOR Flash上运行,也可 以加载到内在中运行。这种方式可以减少内存需要。本系统中采用的是内在加载 方式。Linux Image存储于Nand Flash中,由Linux Bootloader进行加载到SDRAM 中后再由SDRAM中运行。在这种方式下,Linux的运行速度要快于在Flash的运行 速度。 Linux在FS2410上的移植已有不少的成熟应用,不再详细描述。 4.应用软件层任务设计 1) RS232任务 2) RS485任务 3) GPRS通讯任务 4) UI任务 4.2.3 家庭子系统模块软件设计 对于子模块的设计,即每个子模块的功能尽量单一化,尽量将所有需要做复 杂处理的事务交由主控制器处理,系统的结构类似于服务器-终端方式。 4.2.3.1 红外家电控制子模块 1.红外控制编码 红外发射端发送数据时, 是将待发送的二进制数据调制成一系列的脉冲串信 号,通过高频率信号载波发射出去;接收时,再通过解调和解码将信号恢复。 红外发射的编码格式目前并不统一, 不同的厂商不同的设备使用的编码格式 可能存在差异。当前应用较广泛的是日本NEC的uPD1621G组成的发射电路使用的 编码格式。通常的家用影音设备都使用这种编码方式。该编码方式采用脉宽调制 串行码。 用脉宽为0.565ms间隔为0.56ms周期为1.125ms的脉冲组合表示二进制数 据“0”,用脉宽为0.565ms间隔为1.685ms周期为2.25ms的脉冲组合表示二进制 数据“1” [31]。如图4.8示。
“0” “1” 引导码 结束码

0.565ms 0.565ms

0.565ms

1.685ms

9ms

4.5ms

9ms

2.5ms

图 4.8 编码方式
45

基于 GPRS 的嵌入式家庭智能系统设计

uPD1621G产生的是连续的32位码组,前16位为8位的设备识别码,8位设备识 别码反码,后16位为8位的操作码和八位的操作反码。在传输中增加反码,如果 接收端接收到的码字与其反码不符合取反关系,则不进行操作。这提高了系统的 抗干扰性能,能有效防止因为接收错误而引起的误操作。 每一个32位的码组由一个引导码(9ms高电平接4.5ms低电平)起始,发射结束 后由一个结束码结束(9ms高电平接2.5ms低电平).码组如图4.9示。

图 4.9 码组定义

2.单片机软件实现发送 在用红外传送“0”或“1”时,要求高低电平持续不同的时间。运用单片机 的I/O口作为输出,在此我们用的是P3.6端口,通过软件根据要发送的二进制数 据控制输出高低电平的时长来实现。 单片机有固定的机器周期,每一个机器周器有6个状态,一个状态包含两个 节拍。节拍即振荡脉冲的周期。则每个机器周期就有12个节拍,包含12个振荡脉 冲,机器周期是振荡脉冲的12分频。假设系统使用12MHz的时钟频率时,一个机 器周期就是1μs,当单片机使用6MHz的时钟频率时,一个机器周期就是2μs。 下面是发送程序中用于控制高低电平时间的函数(假设晶振用12MHz): void delay(unsigned int useconds) { unsigned int s; for(s=0;s<useconds;s++) ; } 上述函数中调用该函数需要4个机器周期,实现s自加一次需要19个机器周 期。unsigned int为无符号16位整型数, 216=65536,可以实现”0”码,”1”码, 引导码或结束码的时延要求.通过参数useconds传递不同的数值,即能实现不同 的时延控制。 本测试系统中晶振用的是22.1184MHz的时钟频率, 因此在机器周期的计算上 与上例略有差别,但是原理和过程都是一样的。 3.解码的实现

46

南京航空航天大学硕士论文

解码的关键在于如何判读“0”和“1”。从码组定义(图4.9)中可以看出, 解码实际要判读的是相邻两个脉冲之间的间隔, 相邻0.565ms为 “0” 相邻1.685ms , 为“1”。我们选用的单片机有两个16位的定时/计数器,都具有定时或事件计 数的功能。当其工作在定时方式时,对片内振荡器的12分频的脉冲进行计数,即 每个机器周期使定时器的数值加1。当定时器工作在模式1(16位)时是一个16 位定时器,对机器周期计数的长度为216=65536μs,可以定时红外接收波形脉冲 之间的间隔。于是,可以利用单片机的外部中断INT0来接收TSOP34838输出的波 形,TSOP34838输出的波形经74HC14取反后送到INT1引脚。INT0和INT1 都设置为 下降沿触发中断。在INT0的中断处理程序中启动定时器Timer0,而在INT1的中断 处理程式中停止定时器Timer0,如图4.10所示。这样就能用定时器Timer0来定时 两次外部中断产生之间的时间间隔,即判断出相邻两个脉冲之间的时间间隔,从 而恢复出数据“0”或“1”。 程序在解码时,应该考虑一定的容许误差。可将时间间隔为0.256ms~ 0.768ms判读为“0”,间隔为 1.28ms~1.792ms判读为“1”。当接收到引导码 后,即开始准备接收32位码字[19]。
INT0 INT1
启动Timer0

停止Timer0

图 4.10 脉冲间隔的测量

4.2.3.2 电子门禁子模块 对于电子门禁子模块的软件设计可以分为两个部分。 键盘输入。通过键盘扫描程序获取所按按键的序号,继而获取按键 值编码。由于在硬件设计中没有添加硬件消抖功能,因此,需要在 对键盘扫描时进行软件消抖处理。 数码管显示和指示灯输出。根据获取的按键编码,选择相应的功能, 驱动数码光和显示灯显示。 处理程序流程图如4.11示。上电启动后,首先对单片机进行初始化,设置定 时器,采用定时扫描方式,设置密码输入计数count=0,确认键标志位 enterflag=0,密码正确与否标志位pwflag=0,打开数码管显示标志位 showflag=1,初始LED显示为888888,进入键盘动态扫描(不论按下哪个按键, 对应密码位上均显示F),扫描到有按键输入后,判断确认键是否已按下,如果 按下, 则将前面输入的数值与软件初始设置的密码进行比较, 如果正确, 则开门, 清除已输入的密码,密码输入计数器清零,确认键标志位清零,密码正确与否标
47

基于 GPRS 的嵌入式家庭智能系统设计

志位清零;如果不正确,令i=i+1,然后判断i的值是否大于3,即是否超过三次 输入错误密码, 如果超过三次, 则亮红灯, 并设置密码正确与否标志位pwflag=1, 如果i<=3,则亮黄灯,清除输入的密码,等待用户再次输入。
开始
初始化 打开2ms计数器0 关闭50ms计数器1 2ms定时器0 服务子程序

重置定时器初值 显示888888 showflag为 1?

while(1)

Yes 调用Disp()

动态键盘扫描 No 根据不同按键 进行相应处理

No

结束

是“确认” 键? Yes 存储、比较密码 重置定时器初值 是否密码正 确 No i=i+1 pwflag=1, 亮红灯 开门,亮绿灯 到1s钟 ? Yes i<=3? Yes 亮黄灯 No 关闭显示灯; 数码管显示888888; 关闭50ms计数器1 No
50ms定时器1 服务子程序

Yes

T1count++

关闭数码管显示 , 打开50ms计数器1

结束

图 4.11 电子门禁程序流程图

4.2.3.3 温度测试子模块 本系统温度测试选用温度传感器DS18B20, 软件设计主要完成根据主机命令, 由单片机读取DS18B20的测试温度并传送给主机,主机不发送命令时,从机也不
48

南京航空航天大学硕士论文

断查询,当温度过高或过低时发出报警信号,等待主机轮询时传送给主机,向用 户报警。 对于DS18B20数据的读取以及DS18B20的单线协议的程序以及流程在各种 相关的资料上都有详细地介绍和记载,在此,我们也只简单介绍不做详细讲解。 DS18B20是1-wire单线器件,它在一根数据线上实现数据的双向传输,这就 需要一定的协议来对读写数据提出严格的时序要求, 而我们选用的单片机并不支 持单线传输。因此,必须采用软件的方法来模拟单线的协议时序。 1) 初始化 单线总线上的所有操作均从初始化开始,初始化过程如下:主机通过拉低单 线480μs以上,产生复位脉冲,然后释放该线,进入Rx接收模式。主机释放总线 时会产生一个上升沿。单线器件DS18B20检测到该上升沿后,延时15-60μs,通 过拉低总线60-240μs来产生应答脉冲。主机接收到从机的应答脉冲后,说明有 单线器件在线。 2) ROM操作命令 一旦总线主机检测到应答脉冲,便可以发起ROM操作命令。共有5位ROM操作 命令,如表4.1示。
表 4.1 ROM 操作命令

命令类型 Read Rom (读ROM) Match Rom (匹配ROM) Skip Rom (跳过ROM) Search Rom (搜索ROM) Alarm Search (告警搜索)

命令字节 33H

功能说明 此命令读取激光ROM中的64位,只能用于总线上单个DS18B20器件的情况, 多挂接则会发生数据冲突。 此命令后跟64位ROM序列号,寻址多挂接总线上的对应DS18B20。只有序列 号完全匹配的DS18B20才能响应后面的内存操作命令,其他不匹配的将等待 复位脉冲。此命令可用於单挂接或多挂接总线。 此命令用于单挂接总线系统时,可以无须提供64位ROM序列号即可运行内存 操作命令。如果总线上挂接多个DS18B20,并且在此命令后执行读命令,将 会发生数据冲突。 主机调用此命令,通过一个排除法过程,可以识别出总线上所有器件的ROM 序列号。 此命令流程和Search Rom命令想同,但是DS18B20只有在最近的一次温度测 量时满足了告警触发条件,才会响应此命令。

55H

CCH

F0H ECH

因为本文采用多个DS18B20挂在总线下,所以要读取64位ROM序列号,需要 Match Rom才可运行内存操作命令。 3) 内存操作命令 在成功执行了ROM操作命令之后,才可以使用内存操作命令。主机可以提供6 种内存操作命令,如表4.2示。

49

基于 GPRS 的嵌入式家庭智能系统设计 表 4.2 内存操作命令

命令类型 Write Scratchpad (写暂存器) Read Scratchpad (读暂存器) Copy Scratchpad (复制暂存器) Convert T (温度转换) Recall E2 (重调E2存储器) Read Power Supply (读供电方式)

命令字节 4EH BEH

功能说明 此命令写暂存器中地址2-地址4的3个字节(TH、TL和配置寄存 器)在发起复位脉冲之前,3个字节都必须要写 此命令读取暂存器内容,从字节0一直读到字节8(第9个字节) 。主机可以随时发起复位脉冲以停止此操作 此命令将暂存器中内容复制进E RAM,以便将温度告警触发字节 存入非易失内存。如果在此命令后主机产生读时隙,那么只要器 件在进行复制就会输出0,复制完成后,再输出1 此命令开始温度转换操作。如果在此命令后主机产生读时隙,那 么只要器件在进行温度转换就会输出0,转换完成后,再输出1 将存储在E RAM中的温度告警触发值和配置寄存器值重新拷贝到 暂存器中。此重调操作在DS18B20加电时自动产生 主机发起此命令后的每个读数据时隙内,DS18B20会发信号通知 它的供电方式;0为寄生电源方式,1为外部供电方式
2 2

48H

44H B8H B4H

4) 数据处理 DS18B20要求有严格的时序来保证数据的完整性。在单线DQ上,存在复位脉 冲,应答脉冲、写“0”、写“1”、读“0”和读“1”几种信号类型。其中除了 应答脉冲之外。均由主机产生。关于数据位的读写,主要是通过读写时隙来实现 的,相关资料上均有详细介绍,在这里就不详细描述了。 单片机实现温度转换读取温度数值程序的流程图如图4.12示。

50

南京航空航天大学硕士论文

开始

初始化DS18B20

No
应答脉冲 ?

Yes
发起Match Rom 命令

发起Convert T 命令

延时1s,等待温度转 换完成

初始化DS18B20

No
应答脉冲 ?

Yes
发起Read Scratchpad 命令

读取第1、2字节即为 温度数值

图 4.12 单片机实现温度转换读取温度数值程序流程图

4.3

通讯协议设计及数据定义

4.3.1 通讯协议概述 系统的通讯主要包括GPRS模块的远程通讯, 主控制器和各个子模块之间的通 讯,以及本地RS232调试口和PC之间的通讯。整个系统的各个部分将采用统一的 通讯协议,从而使得模块接口标准化,也有利于程序的设计。 本通讯协议只针对于RS485间,及后台软件与主控制器之间的通讯。而在进 行主控制软件的程序更新和升级时,使用 XMODEM协议将更加适合数据的传输, 同时也区别于正常的应用,保证系统的安全。 4.3.2 通讯协议
51

基于 GPRS 的嵌入式家庭智能系统设计

4.3.2.1 物理层 1. RS485 标准串行电气接口 因为系统为单主多从的结构,综合考虑实现度,实现成本及易维护等因素, 使用RS485串行总线作为系统内部总线,实现一点对多点的电气连接。RS-485接 口的性能符合以下要求。 1) 驱动输出电压:在负载阻抗为54Ω时,最大为5V,最小为1.5V。 2) 共模输入电压:-7V~+12V。 3) 差模输入电压:大于0.2V。 4) 三态输出方式。 5) 半双工通讯方式。 6) 驱动能力大于32个同类接口。 7) 总线本身为无源总线,需由主控模块提供隔离电源。 2. RS232串行电气接口 RS232接口主要应用于系统的本地调试。 3. GPRS远程通讯接口 GPRS远程通讯接口使用MC39i模块实现,基础协议为模块自带TCP/IP协议, 系统在TCP/IP上定义自己的数据格式及传输结构。 使系统控制模块能够接收远程 命令进行子模块的控制。 4.短信接口 使用手机模块MC39i实现使用短信对系统进行控制。 4.3.2.2 链路层 协议定义的传输格式为主-从结构的半双工通讯方式。每个子控制器模块及 主控制器都有自己的地址。 不同的是主控制器在GPRS通道没有建立之前使用的是 SIM卡号作为自己的地址,在GPRS数据通道建立以后使用的是IP地址作为TCP/IP 通讯地址,在此基础上根据本协议中所定义的地址进行数据通讯。 根据本协议,每个模块都会有自己的地址编码,而通讯链路的建立和解除均 由主站发出的信息帧来控制。 每帧由帧起始符、 从站地址域、 控制码、 数据长度、 数据域、帧信息、纵向校验码及帧结束符等7个部分组成。每部分由若干字节组 成。 1.字节格式 字节是数据传输的基本单元,每字节含8位二进制码,在通过RS485和RS232 传输时加上一个起始位(0)、一个偶校验位和一个停止位(1),共11位。其传输序 列如表4.3示。D0是字节的最低有效位,D7是字节的最高有效位。先传低位,后
52

南京航空航天大学硕士论文

传高位。传输方向为由左至右,起始位为0,数据位为8位,P为奇偶校验位,1为 停止位。
表 4.3 字节传输序列 0 D0 D1 D2 D3 D4 D5 D6 D7 P 1

2.帧格式 为信息传输的基本单元。如表4.4所示。
表 4.4 帧格式 说明 帧起始符 代码 68H A0 A1 地址域 A2 A3 A4 A5 帧起始符 控制码 数据长度 数据域 校验码 结束符 68H CTL LEN DATA CS 16H

1) 帧起始符68H: 标识一帧信息的开始,其值为68H=01101000B。 2) 地址域A0~A5: 地址域由6个字节构成,每字节2位BCD码。地址长度可达12位十进制数,可 以为模块号、模块类型等。目前的使用中只作为一个地址标识使用。当使用的地 址码长度不足6字节时,传输时由程序控制用00H补足6字节。低地址位在先,高 地址位在后。当地址为999999999999H时,为广播地址。 3) 控制码CTL 控制码说明当前帧类型,传输方向等信息。控制码格式由表4.5所示。
53

基于 GPRS 的嵌入式家庭智能系统设计 表 4.5 控制码格式 传输方向 D7 异常标志 D6 后续帧 D5 D4 D3 功能码 D2 D1 D0

D7=0:由主站发出的命令帧 D7=1:由从站发出的应答帧 D6=0:从站正确应答 D6=1:从站对异常信息的应答 D5=0:无后续数据帧 D5=1:有后续数据帧 D4~D0:目前所使用的请求及应答功能码 00001:读数据 00010:读后续数据 00011:重读数据 00100:写数据 01010:修改地址 01100:更改通信速率 01111:修改密码 4) 数据长度LEN LEN为数据域的字节数。读数据时LEN≤200,写数据时LEN≤50,LEN=0 表示 无数据域。 5) 数据域DATA 数据域包括数据标识和数据等,其结构随控制码的功能而改变。 6) 校验码CS 从帧起始符开始到校验码之前的所有各字节的模256的和,即各字节二进制 算术和,不计超过256的溢出值。 7) 结束符16H 标识一帧信息的结束,其值为16H=00010110B。 3.传输 1) 前导字节 为保证每一帧的传输正确,可以在发送帧信息之前,先发送1~4个字节FEH, 以在接收方在休眠状态时能够唤醒接收方。 2) 传输次序
54

南京航空航天大学硕士论文

所有数据项均先传送低位字节,后传送高位字节。如温度值为+028.25度, 其传输次序为:25,28,00。 3) 传输响应 每次通信都是由主站向按信息帧地址域选择的从站发出请求命令帧开始, 被 请求的从站根据命令帧中控制码的要求作出响应。 收到命令帧后的响应延时Td:20ms≤Td≤500ms。 字节之间停顿时间Tb:Tb≤500ms。 4) 差错控制 字节校验为偶校验,帧校验为纵向信息校验和,接收方无论检测到偶校验出 错或纵向信息校验和出错,均放弃该信息帧,不予响应。 5) 传输速率 使用 RS232 及 RS485 通讯时 初始速率:9600bps。 标准速率:1200,2400,4800,9600,19200,38400,57600,115200bps。 传输速率的特征字Z见表4.6,在相应位为1时表示当前通讯速率,特征字的 各位不允许组合使用。9600bps时,Z=0。修改速率时特征字Z仅在一个二进制位 为1时有效。
表 4.6 传输速率的特征字 Z D7 115200 D6 57600 D5 38400 D4 19200 D3 9600 D2 4800 D1 2400 D0 1200

传输速率的变更,首先由主站以初始速率向从站发变更速率请求,从站以初 始速率发确认应答帧或否认应答帧。收到从站确认帧后,双方以确认的新的速率 进行以后的通信,并在通信结束后恢复到初始速率;若在500ms内未建立起通信 链路,则双方均恢复至初始速率。 每次通信中只允许改变一次通信速率。 使用 GPRS 及短信通道时 使用GPRS通道及短信通道时,不受此限制,而限制于当时的GPRS通讯速率一 般传输速度为40kbit/s左右。 4.数据标识 1) 数据分类 根据系统的应用将数据分为:参数数据,普通数据,控制数据等。 2) 数据标识结构及编码 根据系统中不用的数据类型,本协议使用两级结构的标识法来表示这些数 据。用2个字节来分别表示数据类型及数据项。DI1表示数据类型,DI0表示数据
55

基于 GPRS 的嵌入式家庭智能系统设计

项。DI1使用位标识表示数据类型,最多8种数据类型,DI0由01H~FFH最多255个 数据项如表4.7示。
表 4.7 数据标识结构 DI1 01H 02H 04H 其它 参数数据 控制数据 普通数据 预留 01H~FFH 01H~FFH 01H~FFH DI0 具体定义见数据定义 章节

4.3.2.4 应用层 1) 读数据 A. 主站请求帧 功能:请求读数据 控制码:CTL=01H 数据长度:LEN=02H 帧格式:如表4.8所示。
表 4.8 主站请求帧 68H A0 … A5 68H 01H 02H DI0 DI1 CS 16H

B. 从站正常应答 功能:从站正常应答 控制码:CTL=81H,无后续数据帧 数据长度:LEN=02H+m(数据长度) 帧格式:如表4.9所示。
表 4.9 读数据从站正常应答帧 68H A0 … A5 68H 81H LEN DI0 DI1 DATA CS 16H

C. 从站异常应答 功能:从站收到非法的数据请求或无此数据 控制码:CTL=C1H 数据长度:LEN=01H 帧格式:如表4.10所示。
56

南京航空航天大学硕士论文 表 4.10 读数据从站异常应答帧 68H A0 … A5 68H C1H 01H ERR CS 16H

注:ERR为错误信息字,详细说明见后。 2) 写数据参数 A. 写数据请求帧 功能:主站向从站请求设置数据(或编程) 控制码:CTL=04H 数据长度:LEN=02H+m(数据长度) 帧格式:如表4.11所示。
表 4.11 写数据请求帧 68H A0 … A5 68H 04H LEN DI0 DI1 DATA CS 16H

B. 从站正常应答帧 功能:将请求命令执行的结果告知主站 控制码:CTL=84H 数据长度:LEN=00H 帧格式:如表4.12所示。
表 4.12 写数据从站正常应答帧 68H A0 … A5 68H 84H 01H 00H CS 16H

C. 从站异常应答帧 功能:将请求命令执行的结果告知主站 控制码:CTL=C4H 数据长度:LEN=00H 帧格式:如表4.13所示。
表 4.13 写数据从站异常应答帧 68H A0 … A5 68H C4H 01H ERR CS 16H

57

基于 GPRS 的嵌入式家庭智能系统设计

3) 对时命令 功能:主要应用于后台软件与主控制器之前的时间同步,采用广播方式,不 应答。 控制码:CTL=08H 数据长度:LEN=06H 数据域:YYMMDDhhmmss(年.月.日.时.分.秒) 帧格式:如表4.14所示。
表 4.14 对时命令帧 68H 99H … 99H 68H 08H 06H SS MM HH DD MM YY CS 16H

4) 写地址 A. 写地址请求命令帧 功能:设置某从站的地址码 控制码:CTL=0AH 地址域:99□99H 数据长度:LEN=06H 数据域:A0□A5(设备地址码) 帧格式:如表4.15所示。
表 4.15 写地址请求命令帧 68H 99 … 99 68H 06H 06H A0… A5 CS 16H

注: 本请求命令采用广播地址发布, 一般要求被设置的从站有相应的按键(开 关)与该命令配合,在命令发布的全部时间内按下按键者响应,其它不响应。 B. 从站正常应答 功能:正确执行命令的设备应答 控制码:CTL=8AH 地址域:A0□A5(新设置的设备地址码) 数据长度:LEN=00H 帧格式:如表4.16所示。
表 4.16 写地址从站正常应答帧 68H A0 … A5 68H 8AH 00H CS 16H

58

南京航空航天大学硕士论文

5) 更改通信速率 A. 更改速率请求帧 功能:请求用9600bps以外的速率通信,主要应用于主控制器和子模块之间 及主控制器和PC间的RS232的通讯速率修改。 控制码:CTL=0CH 数据长度:LEN=01H 帧格式:如表4.17所示。
表 4.17 更改速率请求帧 68H A0 … A5 68H 0CH 01H Z CS 16H

B. 确认应答 功能:从站对更改速率请求的确认 控制码:CTL=8CH 数据长度:LEN=01H 帧格式:如表4.18所示。
表 4.18 确认应答帧 68H A0 … A5 68H 8CH 01H Z CS 16H

C. 否认应答 功能:从站否认更改速率的请求 控制码:CTL=8CH 数据长度:LEN=01H 数据域:Z=FFH,表示否认 帧格式:如表4.19所示。
表 4.19 否认应答帧 68H A0 … A5 68H 8CH 01H FFH CS 16H

6) 修改密码 A. 写密码请求帧 功能:改变从站当前的密码
59

基于 GPRS 的嵌入式家庭智能系统设计

控制码:CTL=0FH 数据长度:LEN=06H 数据域:原Po0~Po2,Pn0~Pn2 帧格式:如表4.20所示。
表 4.20 写密码请求帧 68H A0 … A5 68H 0FH 06H Po0 Po1 Po2 Pn0 Pn1 Pn2 CS 16H

Po0~Po2为原密码,Pn0~Pn2为新密码,密码位数为6位。该命令主要应用于 需要对子模块进行密码设置以限制子模块的操作场合。 B. 从站正常应答帧 功能:报告正确执行修改命令 控制码:CTL=8FH 数据长度:LEN=04H 数据域:新编入的密码P0~P2 帧格式:如表4.21所示。
表 4.21 写密码从站正常应答帧 68H A0 … A5 68H 0FH 06H P0 P1 P2 CS 16H

C. 从站出错不应答。 7) 错误特征字 错误特征字使用一个字节表示,相应位为1时表示特定错误,如表4.22示。
表 4.22 错误特征字 D7 D6 D5 D4 D3 D2 密码错 D1 无数据 D0 无参数

4.3.3 XMODEM 协议 XMODEM协议是一种使用拨号调制解调器的个人计算机通信中广泛使用的异 步文件运输协议。这种协议以128字节块的形式传输数据,并且每个块都使用一 个校验和过程来进行错误检测。 如果接收方关于一个块的校验和与它在发送方的 校验和相同时,接收方就向发送方发送一个认可字节。然而,这种对每个块都进 行认可的策略将导致低性能,特别是具有很长传播延迟的卫星连接的情况时,问 题更加严重。
60

南京航空航天大学硕士论文

使用循环冗余校验的与XMODEM相应的一种协议称为XMODEM-CRC。 还有一种是 XMODEM-1K,它以1024字节一块来传输数据。ZMODEM是最有效的一个XMODEM版本, 它不需要对每个块都进行认可。 事实上, 它只是简单地要求对损坏的块进行重发。 详尽的说明见附件。 4.3.4 数据定义 前面已经对通信协议进行了定义,根据该协议,在系统通信中需要用到的数 据就要自己进行具体定义。以便在程序编写的过程中,按照定义的数据格式进行 程序地编写,如表4.23所示。根据程序编写的要求和进度,数据的定义还将继续 不断地完善。
表 4.23 基本参数及数据列表

序 号

标识编码

数据格式

数据长 度(B)

单位

读 写

数据项名称

DI1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01

DI0 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 00 10 11 yymmddwwhhmmss NN…NNN BCD BCD ASCII HEX HEX ASCII ASCII ASCII ASCII HEX HEX HEX HEX BCD BCD BCD 1 1 16 16 16 1 1 2 1 1 3 1 1 7 6 8 8 年月日周时分秒 R RW RW RW RW RW RW RW RW RW R RW R RW RW W RW RW 日期及时间 设备地址 短信中心号码 主站号码 主站 IP 端口 登录唤醒方式 登录、退出 接入点(CMNET, APN) 接入点 USERID 接入点 PASSWORD 当前 GPRS 状态 连接方式 信号强度及 SIM 卡状态 短信模式切换 心跳周期 终端密码 设备 1 类型 设备 1 通讯速率
61

基于 GPRS 的嵌入式家庭智能系统设计 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
62

01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01

12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32 33 40 41 42

ASCII BCD BCD BCD ASCII BCD BCD BCD ASCII BCD BCD BCD ASCII BCD BCD BCD ASCII BCD BCD BCD ASCII BCD BCD BCD ASCII BCD BCD BCD ASCII BCD BCD BCD BCD BCD ASCII ASCII ASCII

16 3 1 1 16 3 1 1 16 3 1 1 16 3 1 1 16 3 1 1 16 3 1 1 16 3 1 1 16 3 3 3 3 3 16 16 16

RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW RW

设备 1 名称 设备 1 地址 设备 2 类型 设备 2 通讯速率 设备 2 名称 设备 2 地址 设备 3 类型 设备 3 通讯速率 设备 3 名称 设备 3 地址 设备 4 类型 设备 4 通讯速率 设备 4 名称 设备 4 地址 设备 5 类型 设备 5 通讯速率 设备 5 名称 设备 1 地址 设备 6 类型 设备 6 通讯速率 设备 6 名称 设备 6 地址 设备 7 类型 设备 7 通讯速率 设备 7 名称 设备 7 地址 设备 8 类型 设备 8 通讯速率 设备 8 名称 设备 8 地址 门锁 1 密码 门锁 2 密码 门锁 3 密码 门锁 4 密码 温度点 1 名称 温度点 2 名称 温度点 3 名称

南京航空航天大学硕士论文 56 57 58 59 60 61 62 63 64 65 66 67 68 01 01 01 01 01 01 01 01 01 01 01 01 01 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F ASCII ASCII ASCII ASCII ASCII ASCII ASCII ASCII ASCII ASCII ASCII ASCII ASCII 16 16 16 16 16 16 16 16 16 16 16 16 16 控制数据部分 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 01 00 01 02 03 04 05 06 07 10 11 12 13 14 15 16 17 BCD BCD BCD BCD BCD BCD BCD BCD BCD BCD BCD BCD BCD BCD BCD BCD 1 1 1 1 1 1 1 1 4 4 4 4 4 4 4 4 通用数据 1 2 3 4 5 6 04 04 04 04 04 04 00 01 02 03 04 05 BCD BCD BCD BCD BCD BCD 3 3 3 3 3 3 度 度 度 度 度 度 R R R R R R 温度 1 温度 2 温度 3 温度 4 温度 5 温度 6
63

RW RW RW RW RW RW RW RW RW RW RW RW RW

温度点 4 名称 温度点 5 名称 温度点 6 名称 温度点 7 名称 温度点 8 名称 开关 1 名称 开关 2 名称 开关 3 名称 开关 4 名称 开关 5 名称 开关 6 名称 开关 7 名称 开关 8 名称

RW RW RW RW RW RW RW RW 秒 秒 秒 秒 秒 秒 秒 秒 RW RW RW RW RW RW RW RW

开关 1 输出状态 开关 2 输出状态 开关 3 输出状态 开关 4 输出状态 开关 5 输出状态 开关 6 输出状态 开关 7 输出状态 开关 8 输出状态 开关 1 输出延时 开关 2 输出延时 开关 3 输出延时 开关 4 输出延时 开关 5 输出延时 开关 6 输出延时 开关 7 输出延时 开关 8 输出延时

基于 GPRS 的嵌入式家庭智能系统设计 7 8 9 10 11 12 13 14 15 16 04 04 04 04 04 04 04 04 04 05 06 07 10 11 12 13 14 15 16 17 BCD BCD BCD BCD BCD BCD BCD BCD BCD BCD 3 3 1 1 1 1 1 1 1 1 度 度 R R R R R R R R R R 温度 7 温度 8 开关 1 状态 开关 2 状态 开关 3 状态 开关 4 状态 开关 5 状态 开关 6 状态 开关 7 状态 开关 8 状态

说明: “短信中心号码”为 8 字节 BCD 码,多余为高位填“F”。 “主站号码”为 8 字节 BCD 码,多余为高位填“F”。 “主站 IP 地址及端口”为最多 43 字节的 ASCII 码,前为主用,后为备用; IP 地址 4 段之间用“.”隔开,IP 地址和端口间空格隔开。 “APN”为 16 字节 ASCII 码,多余位高位填“FFH”。 登陆/登出:1 字节 HEX, 0 表示登陆,1 表示登出。 连接方式:1 字节 HEX, 0 表示 UDP,1 表示 TCP 方式。 唤醒方式:0 表示永远在线,1 表示振铃唤醒,2 表示短信唤醒,3 表示振铃 及短信唤醒。 设置首选通道:0 表示主用通道;1 表示备用通道 查询当前 GPRS 状态:在线 GPRS ON,不在线 GPRS OFF 信号强度及 SIM 卡状态:信号强度字节在前,范围 0-5,数字越大表示信号 越强;状态字节在后,0-正常,1-error 主站 IP 地址和端口 如表 4.24 所示。
表 4.24 主站 IP 地址和端口数据格式 数据内容 IP 地址 1 段 IP 地址 2 段 IP 地址 3 段 IP 地址 4 段 端口地址 IP 地址 1 段 IP 地址 2 段
64

数据格式 BIN BIN BIN BIN BIN BIN BIN

字节数 1 1 1 1 2 1 1

说明

主用

备用

南京航空航天大学硕士论文 IP 地址 3 段 IP 地址 4 段 端口地址 网关地址 1 段 网关地址 2 段 网关地址 3 段 网关地址 4 段 端口地址 代理服务器地址 1 段 代理服务器地址 2 段 代理服务器地址 3 段 代理服务器地址 4 段 代理服务器端口 APN BIN BIN BIN BIN BIN BIN BIN BIN BIN BIN BIN BIN BIN ASCII 1 1 2 1 1 1 1 2 1 1 1 1 2 16 代理 服务器 网关

对ASCII字符进行发送时,按字串字面顺序,由左到右依次发送,即最左面 的字符最先发送。如果字串长度少于规约中要求长度,则在后续字节上补0H。 主站电话号码和短信中心号码 数据格式如表 4.25 所示。
表 4.25 主站电话号码和短信中心号码数据格式 数据内容 D4-D7 Z0 Z2 Z4 Z6 Z8 Z10 Z12 Z14 SM0 SM2 SM4 SM6 SM8 SM10 SM12 D0-D3 Z1 Z3 Z5 Z7 Z9 Z11 Z13 Z15 SM1 SM3 SM5 SM7 SM9 SM11 SM13

数据格式 BIN BIN BIN BIN BIN BIN BIN BIN BIN BIN BIN BIN BIN BIN BIN

字节数 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

说明

主站电话号码 或主站手机号码

短信中心号码

65

基于 GPRS 的嵌入式家庭智能系统设计 SM14 SM15 BIN 1

普通电话信道:前8字节有效,代表16位电话号码,后8字节无效,每位号码 数据范围0至B:0~9表示电话号码0……9;A为“,”,代表拨号停顿(延时); B为“#”。 GSM/CDMA信道:前8字节代表主站手机电话号码,后8字节代表短消息服务中 心电话号码。3Z0~Z15对应电话号码第一位至最末位,余下未填满部分填FH。 当然,对于整个系统而言,需要涉及到的数据是多种多样的,因此,在系统 中需要的其他数据,还有待在系统的设计和完善过程中进一步补充。

66

南京航空航天大学硕士论文

第五章 结束语
5.1 论文期间的主要工作
1.在参考以及对比了相关系统设计方案的基础上, 提出并设计了本系统的实 现方案,包括软硬件实施方案、网络通信方案及布线方案等。 2.完成了家庭智能控制系统和家庭子系统测试电路两部分的所有硬件电路 设计及制板,对家庭智能系统部分的部分电路进行了调试,并完成了对家庭子系 统测试电路的调试。 3.软件设计方面,根据系统结构进行了模块化的设计,包括了协议数据处理 模块、驱动部分(包括RS232/485驱动,GPRS模块驱动,键盘、触摸屏、LCD、LED 的驱动、Nand flash驱动、时钟驱动)的设计、操作系统层的结构设计,以及家 庭子系统部分全部子模块的软件设计, 最后还进行了通讯协议的设计以及相关的 数据定义。

5.2

后期要完成的工作
1.硬件方面 需要对主控制器和家庭子系统测试电路在设计上进行优化和扩展, 在已有电

路的基础上,添加一些通用的接口(包括USB接口、网卡接口等),尽可能完善 主控制器的功能,并在此基础上进一步对主控制器进行调试;对家庭子系统测试 电路的功能还要进行一定地扩展, 除了现有的四个模块之外还可以添加远程抄表 系统、红外防盗报警、摄像头监视以及其它安防、娱乐、家电控制方面的功能以 满足更多的需求。 2.软件方面 需要为远程用户提供一个控制界面,即为PC机等提供一个操作软件,用户 可以通过该软件实现远程监控操作, 且该软件根据各种不同家庭环境可以方便剪 裁和升级。 完成键盘、显示屏驱动的编写,及人机界面的编程,这样用户可以通过键盘 和显示屏实现本地控制。

67

基于 GPRS 的嵌入式家庭智能系统设计

参考文献
[1] 任苹,李界家,原宝龙等 谈智能住宅家庭智能化系统, 房材与应用, 2003年 第1 期:23-24 [2] 于晅,基于GPRS和ZigBee技术的智能家居解决方案的研究,硕士学位论文,贵阳, 贵州大学,2007年6月:1 [3] 郑期彤,程宇, 数字家庭网络市场向成长期迈进 18-19 [4] 王艺,基于GPRS的嵌入式智能家庭控制器设计,硕士学位论文,南京,南京航空航 天大学,2007年1月:3,35-36 [5] [6] 宋辉,智能家庭网络的研究闭[J],沿海企业与科技,2005年 9期:151 刘峥嵘,张智超,许振山等 嵌入式Linux应用开发详解,机械工业出版社,2005年6 月第一版 :3,20 [7] 韩奎国,基于嵌入式的远程家居监控系统的设计与实现,硕士学位论文,重庆,重 庆大学,2006年4月:28 [8] 秦贵和,徐华中 ARM9嵌入式技术及Linux高级实践教程, 北京航空航天出版社, 2005年:1-2,316-340 [9] ARM Limited. ARM Developer Suite(Version 1.1),Assmbler Guide ARM DUI 0068A,2000 [10] [11] 杜春雷,ARM体系结构与编程,清华大学出版社,2004年 :7-8 李驹光,ARM应用系统开发详解-基于S3C4510B的系统设计(第二版),清华大学出 版社,2004年:3 [12] 李岩、荣盘祥,基于S3C44B0X嵌入式 mClinux 系统原理及应用, 清华大学出版社, 2005年1月: 2-4,7,109 [13] Qu Weiqing , ChinaImplementation of Distributed Controlling Application of RS-232/485 Journal of Ningbo Dahongying Vocation Technical College 2005, 3 :43-45 [14] 任晓芳,基于GPRS/SMS的无线远程自动抄表系统的研究,硕士学位论文,兰州,兰 州理工大学,2007年5月:16 [15] 刘峥嵘,张智超,许振山等 嵌入式Linux应用开发详解,机械工业出版社,2005年6 月第一版 :3,20 [16] 张亚旭,嵌入式电力系统动态记录装置智能采集前端,硕士学位论文,南京,南京 航空航天大学,2004年:14,20 [17]
68

电子设计应用 2006年 10期:

赵文博, 刘文涛, 单片机语言C51程序设计, 人民邮电出版社, 2005年10月第一版:

南京航空航天大学硕士论文 前言,2 [18] 戴佳,戴卫恒,51单片机C语言应用程序设计,电子工业出版社,2006年4月:35, 7-8 [19] [20] 周小杰,刘方,基于AT89S52的红外遥控的实现,2006年南京市通信年会,2006年 Li Jifang;He Dingxin,Research and Design of a Home Intelligent Control System Based on Telephone Network,Application Research of Computers, 2004,07:54 [21] [22] SiemensMC35I,Hardware Interface Description Vision04.00,2003.5 赵丽庆, GPRS信息家电控制信息传输系统的研究,硕士学位论文,大连,大连理工 大学,2004年3月 :1 [23] 方天培,居住小区与家居智能化(一)——居住小区智能化技术的发展趋势 ,智能 建筑与城市信息, 2004年 10期 :11-17 [24] Samsung Electronics Co.,Ltd., S3C2410 32bit RISC Mcroprocessors User’s Manual, Korea, 2000 [25] [26] [27] [28] 张志伟, 家庭网络和信息家电, 计算机工程与应用,2002年 09期:23-24 蒋小洛、朱海涛,信息家电与智能家庭网络, 电声技术,2002年 11期 :49-50

刘建华、徐志国,宽带智能家庭网关技术与应用,信息技术 2003年 02期:36-37 Zhang Jin, He Renmu, Design of Dynamic EMS Software Platform, Power Systems and Communications Infrastructures for the future, Beijing, September 2002

[29]

Integrated Device Technology, Inc., IDT70V28L:High-Speed 3.3v 64kx 16 Dual-port Static RAM, U.S.A., 2002

[30]

周立功、明计、陈渝著, ARM嵌入式Linux系统构建与驱动开发范例, 北京航空航 天大学出版社,2006年1月第一次印刷 :112-139

[31]

Zhao Yingqi,Use Mcs51 MCU Receive and Decode Infrared Remote Control Signal,Computer Knowledge and Technology 2005,02 :193-194

[32]

(美国)琼斯 (Jorn,K.J)等著,宋震等译, 狙击黑客, 电子工业出版社, 2003 年4月 第1版:56

69

基于 GPRS 的嵌入式家庭智能系统设计





值此论文完成之际,衷心地感谢我的导师刘方老师,感谢他在论文的选题、 研究和撰写过程中所给予的悉心指导, 感谢他这两年多来对我在工作和生活等多 方面给予的关心和指导。 同时他敏锐的思维和丰富的研究经验给我留下深刻的印 象。在他的指导下我解决了课题中遇到的许多问题,大大增强了自己解决问题的 能力和创造性思维,这将使我终生受益。 特别要感谢游荣强在本次论文从理论到实践上给我的耐心的、无私的帮助; 感谢蒋璇教授在论文修改过程中对我提出的宝贵意见, 以及周小杰和曾德志几位 同学在本论文的理论和实践上给于我的帮助和建议; 同时还要感谢正德职业技术 学院电子工程系王高山主任对在课题研究的过程中所给予的无私帮助和关心; 还 有朱海霞同学,对我的论文的修改提供了很大帮助,给了我很大的支持,同时也 要感谢王咏萍、王翠等同学在此过程中给予我大量的鼓励和支持。 最后我要衷心感谢我的父母,感谢他们对我无私的关爱和付出,为我营造出 一个良好的生活和学习环境,使我最终能顺利完成学业,同时也激励着我继续努 力,争取更大成绩! 感谢其他我未提及但也给予我帮助的人!

70

南京航空航天大学硕士论文

在学期间发表的论文
[1] 刘佳、刘方,智能家居控制系统设计方案初探,2006 年南京市通信年会,2006 年 [2] 刘佳,基于 GPRS 的嵌入式智能家庭控制器的硬件设计,“枭龙杯”南京航空航天大学 第九届研究生学会术会议,2007 年 10 月

71


赞助商链接

(最新版)基于无线网的GPRS嵌入式远端控制器毕业设计论文

(最新版)基于无线网的GPRS嵌入式远端控制器毕业设计论文_工学_高等教育_教育专区。毕业论文,单片机论文,毕业论文设计,毕业过关论文,毕业设计,毕业设计说明,硕士论文,...