基于S3C2440家庭网关设计方案

发布者:Aq123456258最新更新时间:2013-02-19 来源: dzsc关键字:S3C2440  家庭网关  中央处理器 手机看文章 扫描二维码
随时随地手机看文章

  在信息、通讯不断发展的今天,随着人类社会的进步和科学技术的迅猛发展,及国内消费者生活水平的不断提高,人们更加注重生活质量,对生活的舒适度有了更高的要求。而家电的性能对人们生活的舒适度有着直接的影响。家电远程控制系统使人们可异地控制家庭内部设备,拓展了人们的生活空间,为人们管理家庭设备提供了方便的手段。但由于很多普通家电却不具备智能控制所需的条件,为了实现对普通家电的智能控制,需要设计一个中间设备--家庭网关。

  本系统应用现阶段流行的ARM9 系列微处理器芯片和嵌入式Linux 操作系统进行了家庭网关的软硬件设计,利用人们随身携带的手机与家庭网关进行短信通信,并在家庭网关的控制下,实现对家电的远程控制。

  1 家庭网关整体结构

  远程家电控制系统一般可以划分为外部网,家庭网关和内部网三个部分。而家庭网关是家庭内部网与外部网的连接枢纽,也是整个系统的核心设备,整个系统构成图如图 1 所示。用户使用手机发送家电控制短信到家庭网关,经过家庭网关的处理将其转换为遥控器红外指令,发送给各个分控节点驱动红外发射器发送红外指令对该设备进行控制,从而实现手机远程控制家电的功能。

图1 系统构成图

图1 系统构成图

  2 家庭网关的实现

  家庭网关中央处理器的选择有多种方案,但考虑到家庭网关的功能、成本以及以后的升级,本课题决定采用三星公司的S3C2440A 处理器作为家庭网关的中央处理单元。S3C2440 主要面向手持设备以及高性价比、低功耗的应用,S3C2440A 提供一组完整的系统外围设备,从而大大减少了整个系统的成本,省去了为系统配置额外器件的开销,通过外扩存储器(SDRAM/Flash)、触摸屏、短信接收模块、遥控器自学习模块、Zigbee 模块来构建家庭网关的硬件平台,其系统结构如图 2 所示。家庭网关所具有的功能包括:

  遥控器红外指令的对码学习、短信的接收及处理、家庭内部网的主节点。

图2 家庭网关系统结构图

图2 家庭网关系统结构图

  2.1 遥控器自学习模块

  家庭中的家电普遍采用红外遥控设备,要控制家电就要知道所对应的红外遥控码。遥控器红外脉冲码一般由引导码、地址码、数据码、数据码反码和结果码组成。由于各个公司生产的红外编/解码芯片采用的编/解码方式和脉宽周期不同,导致了市场上的各类遥控器的功能互不兼容。为了能拥有各种遥控器的遥控功能,首先必须要正确地原样接收并存储遥控器的红外脉冲码,为此设计了红外遥控接收模块,接收遥控器的红外指令并保存在SQlite 数据库。[page]

    2.1.1 硬件设计

  一般红外遥控接收电路要包括红外接收二极管(光敏二极管)、前置放大电路、滤波器、检波解调电路等处理电路。但是随着技术发展,红外接收专用集成电路逐渐被红外接收头所代替,红外接收头是一种三端集成器件,它将红外接收二极管、前置放大电路以及解调电路等集成在同一芯片上。本设计采用红外一体化接收头TL538,它具有宽电压适应、功耗低、成本低、高接收灵敏度以及优良的抗干扰特性,是通用接收红外信号并解调的元件,不需要任何外接元件,就可以完成从红外线接收到输出TTL 电平的数字信号,目前广泛的应用于家用电器及玩具等各种红外遥控和红外接收装置中。

  红外一体化接收头接收到的红外脉冲信号解调成合适电平的数字脉冲基带信号,直接送到S3C2440A 的GF2 引脚进行采集,红外接收电路原理图如图3 所示。

图3 红外信号接收电路原理图

图3 红外信号接收电路原理图

  2.1.2 软件实现

  系统软件实现红外脉冲信号的接收和存储,GF2是个复用端口,要把它设置为外部中断功能,中断设置模式为双沿中断,实现红外脉冲信号的接收。程序流程图如图 4 所示。

图4 红外接收程序流程图

图4 红外接收程序流程图

  设计采用定时器对信号高低电平计时的方法来采集数据,TL538 在无红外信号时一直处于高电平,当红外信号到来时,有一个下降沿,触发外部中断,系统启动内部定时器,当再次触发外部中断时,读取计数器的值,然后依次读取计数器的值。由于一条红外指令的长度不会超过220ms,如果采集到编码信号的长度大于220ms,就认为编码采集已经结束,触发定时器溢出中断,关闭定时器,计算计时器每两个计数的差值(红外脉冲信号的脉宽值),这样红外脉冲信号就被原封不动的全部记忆。[page]

  为了方便调用遥控器的红外脉冲信号,要将其接收到红外码保存,而保存数据就需要一个嵌入式的数据库,在目前Linux 下常用的数据库产品中,Oracel、BIMDB 等功能强大,但系统宠大,需付费使用,适用于大型商业型数据库。而MysQL 在保持中等体积的情况下,提供了较为适用的功能己成为中小规模数据库应用的首选,但商业应用也需付费,而且对于嵌入式系统来说空间占用仍然太大。小型数据库msQL 适用于嵌入式系统,但只有30 天的使用期限,并非完全开源。而在开源的数据库中,PostgreSQL 功能完善,但体积较大。而Berkeley DB 则是开发难度比较大。

    SQlite 则在体积与功能之间做到了较好的平衡,是"理想的嵌入式数据库"。此系统创建文件名为dc_main.

  db 的sqlite3 数据库文件,并在以创建的dc_main.db中创建一张数据表study 用来存储各个房间各遥控器的红外指令,SQL 命令为:

  create table study(

  id integer primary key autoincrement,--id 号,自动产生

  room varchar(10), --房间名称

  appliance varchar(10), --电器名称

  key varchar(10), --按键名称

  command varchar(500)); --红外脉冲信号

  为了用户方便与系统进行交互,采用QT4 设计遥控器自学习界面,Qt 是Trolltech 公司开发的一个多平台的C++图形用户界面应用程序框架。包括直观的API 和丰富C++ 类库、用于GUI 开发和国际化的集成工具,支持使用JavaTM 和C++ 语言进行开发。该图形系统最大的优点是采用面向对象设计,移植性好,基于X Window 的Qt 桌面应用程序可以非常方便的移植到嵌入式系统上。在对硬件和容量都有限制的嵌入式环境上,Qt 可以直接在Framebuffer 上显示图形。

  Qt 的这种特性在一定程度上提高了嵌入式GUI 程序的执行效率,这对硬件和容量都有限制的嵌入式环境非常重要。同时Qt4 为数据库访问提供的QtSQL 模块实现了数据库与Qt 应用程序的无缝集成。

  此系统用Qt4 和SQLite3 技术实现了遥控器自学习系统的前台界面及数据的存储,遥控器自学习界面如图 5 所示。

图 5 遥控器自学习界面

图 5 遥控器自学习界面

  为了存储时能将按键与其红外指令对应,在遥控器自学习前台界面要输入房间、电器、按键的名称,因此设计了键盘进行内容输入,用户在界面输入房间、电器、按键,之后对着红外一体化接收头按下遥控器的对应按键接收红外指令,按确认后,将房间、电器、按键信息以及所对应的遥控器红外指令存入sqlite3 数据库。

  2.2 短信接收模块

  短信接收模块实现的功能包括接收短信,以及根据短信内容调取数据库中的红外指令发送给Zigbee 模块。

  2.2.1 硬件设计

  短信接收模块采用GR64 模块,通过串口连接到中央处理器,GR64 模块是一款带有GSM/GPRS 全套语音和数据功能的工业级无线调制解调模块。集射频电路和基带处理器于一体,提供丰富的外设及接口,其硬件原理图如图 6 所示。

图6 GR64 原理图

图6 GR64 原理图[page]

    2.2.2 软件实现

  短信接收软件提供短信的接收以及处理,GR64模块支持两种模式收发短信:Text 模式、 PDU 模式。

  Text 模式是纯文本方式,不支持中文,可使用不同的字符集,主要用于欧美地区;PDU 模式被所有手机及工业级模块支持,可以使用任何字符集,目前最为常用。家庭网关采用PDU 模式接收数据,以便能够正确的显示汉字。

  用户根据遥控器对码学习的格式编写控制家电的短消息,其格式为:房间,电器,按键例如:客厅,空调,打开发送至家庭网关,家庭网关使用AT 命令接收短消息,AT 命令集具有标准的硬件接口(串口)并且可以通过一组AT 命令完成对GR64 的配置和控制,接收短信用到的AT 命令为:

  AT+CMGF=0 设置短信格式为PDU 格式

  AT+CMGL=1 读取未读短消息

  短信处理子程序流程图如图 7 所示。

图7 短信处理子程序流程图

图7 短信处理子程序流程图

  家庭网关接收到的手机短信是unicode 码值,要将其转换为GB2312 编码显示为汉字,之后进行身份验证(手机号码验证),通过之后将短信内容提取出来作为条件查询数据库,调取数据库中所对应的遥控器红外指令,发送至Zigbee 模块。

  2.3 Zigbee 模块

  Zigbee 模块作为家庭内部网的主节点能够实现的功能包括接收遥控器红外指令,以及通过Zigbee 网络将此红外指令发送给各个分控节点。

2.3.1 硬件设计

  硬件部分的设计如图 8 所示。采用无线SoC 单片机CC2430 构建Zigbee 模块,具有超低功耗、高灵敏度、出众的抗噪声及抗干扰能力,并且包括的许多强大的外设资源。通过串口与中央处理器相连。

图8 Zigbee 模块原理图

图8 Zigbee 模块原理图。

  2.3.2 软件实现

  通过软件实现红外指令的接收及发送,程序流程图如图 9 所示。

图9 Zigbee 模块程序流程图

图9 Zigbee 模块程序流程图

  Zigbee 模块首先使用串口接收红外指令,然后通过射频通信,将红外指令发送到各个分控节点。

  3 结语

  随着Intemet 技术的发展以及32 位微处理器时代的来临,信息家电、信息家庭的概念已开始深入人心。

  提出以ARM9 的32 位微处理器S3C2440A 作为家庭网关的中央处理器,软件上以嵌入式Linux 为平台,实现了短信接收、遥控器自学习、红外指令发送等功能。该家庭网关成本较低,易于升级,便于推广应用。

参考文献:

[1]. S3C2440A  datasheet http://www.dzsc.com/datasheet/S3C2440A+_589563.html.
[2]. TTL  datasheet http://www.dzsc.com/datasheet/TTL+_1174409.html.
[3]. CC2430  datasheet http://www.dzsc.com/datasheet/CC2430+_1055132.html.

关键字:S3C2440  家庭网关  中央处理器 引用地址:基于S3C2440家庭网关设计方案

上一篇:基于S3C6410的航空用RFID读卡器设计方案
下一篇:基于嵌入式的杯突试验机测控系统设计与实现

推荐阅读最新更新时间:2024-03-16 13:18

向14nm进军 英特尔平板手机CPU线路图曝光
      威锋网 8 月 21 日消息,台湾媒体 DigiTimes 今天曝光了一份芯片巨头英特尔的最新线路图。根据线路图显示,英特尔准备了多款为平板电脑和智能手机而打造的新平台处理器。 Intel Merrifield 智能手机处理器   首先是 22nm 工艺制程的 Intel Merrifield 平台处理器。该芯片将代替与目前的智能手机上使用的 Clover Trail+ 平台 CPU,无论在性能还是续航方面都将提升 50%。预计 Merrifield  平台将在下半年某个时间正式发布,而搭载该 CPU 的“Intel Inside”的智能手机也将于今年年底之前发布,正式上市铺货的时间为 2014 年年初。   与此同时
[手机便携]
一种远程自动报警系统的设计
1 概述      随着人们生活水平的不断提高,人们对住宅和办公室的防盗意识也日益增加。因此,研究和开发防盗报警装置引起了科研单位和生产厂家的重视,特别是面对普通居民、价格低、运行可靠的自动报警系统。笔者设计了一种由AT89C51单片机、电话机和BP机构成的远程自动报警系统,它不但经济实用,而且简单易操作。当盗贼入屋触动报警触发开关时,系统将把贮存在电话机中户主的BP机号码自动拨发到寻呼台,寻呼台又将屋主的电话号码和一个特别数字信息发送到户主的BP机上,当户主接收到自家的电话号码和这些数字信息时,便知道家里可能有人入屋盗窃,从而做出相应的应急措施。实验证明,该系统报警快速、准确。由于该系统电路简单,而且利用的是公共通信网,
[手机便携]
基于ARM板s3c2440---SPI协议
SPI简介 SPI是串行外设接口(Serial Peripheral Interface)的缩写。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,如今越来越多的芯片集成了这种通信协议,比如AT91RM9200。 简单的说,就是SPI是一种告诉的协议,相当于IIC,只是IIC是两根线(时钟线SCL,数据地址线SDA)而SPI是四根线(SCK时钟信号,DO输出线,DI输入线,CSn片选信号),同样可以挂在多个SPI高速设备。 数据传输 数据传输由CPOL,CPHA两个控制器决定,CPOL决定电平启示状态是低电平还
[单片机]
基于ARM板s3c2440---SPI协议
基于CC2420射频芯片和S3C2440芯片实现网络协调器的设计
1 概 述 无线通信的方式有多样,与蓝牙、Wi-Fi、GSM移动通信方式相比,ZigBee联盟制定的 ZigBee方式具有功耗低、数据传输可靠、兼容性好、实现成本低以及组网方便的优点,非常适合低速率传输的无线传感器网络。ZigBee联盟成立于 2001年,2002年Invensys公司、三菱电气公司、摩托罗拉公司以及飞利浦半导体公司加盟,现在正迅速发展壮大。该联盟在基于IEEE 802.15.4的PHY层、MAC层及数据链路层之上,研究开发适合无线传感器网络的其他高层协议。 物理层的2个标准是2.4 GHz和868/915 MHz,都基于直接序列扩频DSSS(Direct Sequence Spread Spec-trum)技
[单片机]
基于CC2420射频芯片和<font color='red'>S3C2440</font>芯片实现网络协调器的设计
STM32: 一种计算CPU使用率的方法及其实现原理
1前言 出于性能方面的考虑,有的时候,我们希望知道CPU的使用率为多少,进而判断此CPU的负载情况和对于当前运行环境是否足够“胜任”。本文将介绍一种计算CPU占有率的方法以及其实现原理。 2移植算法 2.1 算法简介 此算法是基于操作系统的,理论上不限于任何操作系统,只要有任务调度就可以。本文将以FreeRTOST为例来介绍本算法的使用方法。 本文所介绍的算法出处为随Cube库一起提供的,它在cube库中的位置如下图所示: 本文将以STM32F4为例,测试环境为STM3240G-EVAL评估板。 2.2 开始移植 本文以CubeF4内的示例代码工程STM32Cube_FW_F4_V1.10.0ProjectsSTM324xG_
[单片机]
STM32: 一种计算<font color='red'>CPU</font>使用率的方法及其实现原理
基于CPCI总线CPU主控模块的设计与实现
  在一些特定的条件(如恶劣环境、军事应用环境条件)下应用的计算机比普通商用计算机一般在以下方面有更高、更严的要求:气候、机械和电磁环境适应性好,可靠性、可用性、可维修性好,可操作性、人机交互性能,体积小、重量轻、功耗低,可扩展性、升级方便和使用周期长。有时在一些应用场合还会有一些特定要求,如对用户接口种类和数量的要求等。   在很难找到满足特定要求的商用计算机,即使利用成熟商用计算机进行后天加固也难以满足特定要求的情况下,为此需自行研制满足特定要求的加固计算机。这里介绍加固计算机基于CPCI总线CPU主控模块的设计方案。   Compact PCI(简称CPCI)总线是“PCI总线工业计算机制造商组织”推出的一种工业计算机总线
[嵌入式]
LCD的CPU接口和RGB接口
目前一般彩色LCD的连接方式有这么几种:MCU模式,RGB模式,SPI模式,VSYNC模式,MDDI模式等。 MCU模式:目前最常用的连接模式,一般是80系统(68系统已经不存在了)。数据位传输有8位,9位, 16位和18位。连线分为:CS/,RS(寄存器选择),RD/,WR/,再就是数据线了。优点是:控 制简单方便,无需时钟和同步信号。缺点是:要耗费GRAM,所以难以做到大屏(QVGA以上). RGB模式:大屏采用较多的模式,数据位传输也有6位,16位和18位之分。连线一般有:VSYNC,HSYNC ,DOTCLK,VLD,ENABLE,剩下就是数据线。它的优缺点正好和MCU模式相反。 SPI模式
[单片机]
GPS设计技术难点与解决方案
  车载GPS的信号漂移问题成因及对策   目前的GPS语音导航产品在进行路测的时候,当时速超过40千米的时候,信号接收或多或少会出现“漂移”。对此,周扬认为很正常,因为现有GPS静止状态下定位精度仅为5到20米,使得开车过程中出现漂移现象,车速较快时更为明显,而时间、地点、气候等都会影响GPS的定位精度。但最主要的原因还在于硬件的处理能力(特别是CPU的处理速度和GPS算法)和导航软件的便捷性方面。   对此,有网友指出,在解决该问题之前,首先要区别是软件还是硬件的问题。天气晴好时,将汽车高速行驶时检测的GPS输出信号同停止时的数据相比较,可得出“漂移”的实际数据。在问题的解决方面,他认为,GPS定位精度在现有条件下基本
[嵌入式]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved