ARM芯片基于linux嵌入式操作系统实现的CMU控制器方案

发布者:ananan一二三四五最新更新时间:2023-02-02 来源: elecfans关键字:ARM芯片 手机看文章 扫描二维码
随时随地手机看文章

zigbee无线通信与linux嵌入式操作系统是电子人都经常接触的,在这里我们设计了一种以ARM芯片S3C2440为硬件平台,基于linux嵌入式操作系统所实现的CMU控制器。通过zigbee无线通信协议将CMU与各个家电无线节点和传感器节点相连,并通过无线路由器连接以太网实现远程控制的智能家居网络系统。在硬件芯片选择和电路设计方面优化了系统的结构,大大降低了系统的成本,改善了系统的性能。


伴随着数字化、网络化的进程。智能化的浪潮席卷了世界的每个角落,成为势不可挡的历史趋势,在这种形式下智能网络家居技术应运而生,它依靠3C技术(Computer TechnologyCommunication Technology Control Technology),并结合信息、家电的发展,为用户提供了一种更加安全、舒适、方便、快捷的智能化的自由生活空间。但在国内智能家居系统的研究没有一个统一的标准,各种研究方案都具有其优缺点,所以研究一套完善的智能家居系统就具有了现实的意义。


本设计采用zigbee无线通信标准将家庭中各个家电无线节点连接起来,舍去了实际线路连接时所产生的布线烦恼;另外zigbee协议主要在低端8位或16位单片机上实现,而单片机的数据传输能力有限。如果采用PC机不仅功耗大而且价格昂贵,对于传输率不大的传感器网络来说十分浪费资源。所以本设计开发基于ARM系列嵌入式芯片为核心处理器的中央管理单元。降低了成本,减小了功耗,并通过反复测试取得了良好的效果。


1 系统的整体规划

智能家居系统的设计主要由中央管理单元CMU(Central Mangement Unit)、传感器节点、无线路由器和家电设备组成。其中每台家电设备均添加有无线节点。系统整体结构如下图1所示。

基于zigbee与linux的智能家居系统设计方案

CMU为整个系统的核心部分,扩展有射频模块,是实现智能家居内、外网连接的枢纽。

CMU与每台家电设备和传感器节点通过zigbee无线通信协议组成了一个小型的家居“物联网”。各设备节点与CMU互相通信,实现智能联动控制操作。如:家电智能控制方面,定时开关电器或者根据动态采集的室内温湿度数据,智能控制空调工作状态;灯光智能控制方面,根据不同的室内自然光强度,智能控制灯管的发光强度。


同时,CMU与无线路由器相连,无线路由器则通过以太网连接到WEB上,实现远程控制。


2 zigbee无线通信结构

无线通信的方式有多样,与蓝牙、Wi-Fi、GSM移动通信方式相比,zigbee联盟制定的zigbee方式具有功耗低、数据传输可靠、兼容性好、实现成本低以及组网方便的优点,非常适合低速率传输的智能家居系统无线传感器网络。


zigbee是专门为低速率控制网络指定的标准无线网络协议。它在物理层、MAC(MediaAccess Control)层和数据链接层上采用了IEEE802.15.4协议标准,同时进行了完善和扩展。其网络层、应用汇聚层和高级应用规范接口(API)都由zigbee联盟制定,整个协议的框架结构如下图2所示。

基于zigbee与linux的智能家居系统设计方案

3 硬件设计

3.1 CMU总体硬件结构。

CMU采用三星ARM920T内核处理器S3C2440A芯片,工作主频为400MHZ,外部扩展64MB SDRAM,2MBNorFlash和64MB NandFlash,通过UART口扩展ATMEL公司的Atmega128L 8位系列单片机来实时控制射频芯片CC2420来与外部网络进行连接。处理器外接3寸TFT触摸屏作为人机交互界面。在硬件PCB设计上,系统采用核心板+底板的模式,核心板采用六层板工艺,主要分布系统的CPU、存储器、内核电源,底板主要分布各种接口,Atmegal 128L单片机、CC2420芯片。硬件结构框图如下图3所示:

基于zigbee与linux的智能家居系统设计方案

3.2 处理器单元

目前zigbee协议主要在低端8位或16位单片机上实现。对于CMU节点而言,其数据处理能力不强,且限于自身的硬件资源,很少能实现良好的人机交互界面。对功能要求较高的CMU,这种构架很难满足应用的需求。而基于PC机的CMU节点,不但体积大、价格高而且功耗大,对于传输率不大的传感器网络来说十分浪费资源,所以本设计开发基于ARM系列嵌入式芯片为核心处理器的CMU。选用韩国三星公司推出的S3C2440A芯片作为处理器单元。


S3C2440A是32位RISC微处理器,其CPU采用的是ARM920T内核,具有丰富的片内外设,低价格低功耗,高性能等优点。具有16KB指令Cache,16KB数据Cache和存储器管理单元MMU。处理器结构图如下图4所示:

基于zigbee与linux的智能家居系统设计方案

该芯片可运行主流的Linux、Windows CE、Andorid等嵌入式操作系统。同时处理器提供丰富的系统外设控制器。一般情况下无需额外扩展系统组件,从而大大减小了系统的复杂度和成本,是智能家居控制处理器的绝佳选择。


3.3 存储器扩展

3.3.1 SDRAM扩展

本系统使用的嵌入式操作系统为Linux操作系统,在编译、定制内核时,内核文件zImage.bin文件大小为2.1MB,操作系统完全加载时文件系统root.bin文件大小为34MB,加上上层应用程序运行时会消耗一部分内存,使用两片32MB的内存为最佳选择。


3.3.2 Flash扩展

本系统扩展的Flash有两种,Nor Flash为2M*16Bit,Nand Flash为64*8Bit[4],Nor Flash写入、擦除速度较慢,读取速度较快,成本较高小容量存储,用于存储系统启动Bootloader代码,Nand Flash特点正好与Nor Flash相反,大容量存储。用于存储操作系统文件和应用程序。


3.3.3 射频单元

本设计射频芯片选用挪威Chipco公司的cc2420芯片。该芯片基于Chipco公司Smart RF03技术。以0.18um CMOS工艺制成。只需极少外部元器件,性能稳定且功耗极低。cc2420的选择性和敏感性指数超过了IEEE 802.15.4标准的需求,可确保短距离通信的有效性和可靠性,利用此芯片开发的无线通信设备支持数据传输率高达250kbps,可以实现多点对多点快速组网。硬件应用电路如下图5所示:

基于zigbee与linux的智能家居系统设计方案

图5 CC2420硬件电路

4 软件设计

通过天线接收设备无线节点传输过来的数据帧,经过CC2420自动校验。若无误则经过解码、译码,然后经过SPI接口送往ATmega128L,再经过串口UART1送往S3C2440,经数据处理后显示于相应的LCD触摸屏上。


4.1 系统主程序设计

CMU以及节点的程序流程图,分别见图6和7。在CMU中先初始化LCD及射频芯片,然后程序开始初始化协议栈并打开中断。之后程序开始格式化一个网络。最后处理函数apsFSM()(在APS层上实现的FSM(有限状态机))监控中的zigbee信号。如果现在有节点加入网络,则LCD和串口输出都会给节点分配网络地址。同样函数apsFSM()里接收节点发送过来的温度传感器采集到的数值及一些按键操作,并在LCD上显示处理,也同时从串口发送出来。

基于zigbee与linux的智能家居系统设计方案

基于zigbee与linux的智能家居系统设计方案

4.2 处理器软件结构

处理器采用嵌入式Linux操作系统,在原Bootloader、Kernel上修改文件系统,添加GUI应用程序,并修改系统启动脚本使应用程序在系统启动时自运行。软件结构如图8所示。

基于zigbee与linux的智能家居系统设计方案

5 测试与分析

为了保证智能家居系统运行的稳定性,我们将主控设备装入模具中进行了一周高温测试,系统一直保持了稳定的工作状态,同时对CMU温度进行了测量,环境温度与CMU温度的比较如下图所示,理论情况下,CMU工作的最大温度为45°C,由下图6.9看出,CMU工作的温度属于正常范围。

基于zigbee与linux的智能家居系统设计方案

同时对智能家居系统的家居设备无线节点进行了性能测试。测试条件为:1、用障碍物将CMU模块与家居设备无线节点隔开;2、CMU模块的波特率为250kbps;3、每一帧数据为64字节;5、每次测试数据发送1000帧,发送间隔为200ms。实验结果如表1所示,由表可以看出,系统如果要正常工作,需保持在200m距离范围内。

基于zigbee与linux的智能家居系统设计方案

6 结论

本文从智能家居系统设计的成本、功耗、性能等方面出发,设计出一种可行的智能家居系统的构建方案。以高性能、低功耗的S3C2440芯片装载linux嵌入式系统作为中央管理单元的处理器,用zigbee无线通信协议实现CMU、无线家居设备节点、无线传感器节点的互联和互动,使之成为一个小型的家居“物联网”并且利用成熟的Internet网络实现了远程控制。并在硬件芯片选择和电路设计方面优化了系统的结构,使得系统性能得到了很大的改善,成本也降低了许多。


关键字:ARM芯片 引用地址:ARM芯片基于linux嵌入式操作系统实现的CMU控制器方案

上一篇:基于BOA和nRF24L01的智能家居系统
下一篇:Linux驱动学习笔记之触摸屏驱动

推荐阅读最新更新时间:2024-11-02 15:03

LPC2100系列ARM7微控制器加密ARM芯片
1. 加密原理说明 LPC2100系列ARM7微控制器是世界首款可加密的ARM芯片,对其加密的方法是通过用户程序在指定地址上设置规定的数据。PHILIPS公司规定,对于LPC2100芯片(除LPC2106/2105/2104外),当片内FLASH地址0x000001FC处的数据为0x87654321时,芯片即被加密。在加密设置后,JTAG调试接口无效,ISP功能只提供读ID及全片擦除功能。注意:将带有加密设置的程序下载到芯片内部FLASH,在下一次系统复位后加密生效。 2. 加密程序实现 为了实现加密设置,用户必须保证在0x000001FC处定义数据0x87654321。我们先来分析一下带有加密设置的程序结构,如图
[单片机]
以s3c2440为例讲解arm芯片的启动过程
arm 嵌入式芯片的启动过程对于嵌入式菜鸟来说其实是很复杂的,很多人都是一知半解,存在很多误区。在笔者看来,要想真正了解这一启动过程必须要首先了解存储器的区别与联系,参考文章:各种主流半导体存储器的区别与联系。还需要了解程序是如何编译链接和执行的。 本文将以s3c2440为例详细讲述 arm 芯片的启动过程。s3c2440支持两种启动模式:NAND FLASH 启动和非 NAND FLASH 启动(一般是NOR FLASH 启动,并且可以配置数据宽度),通过 OM1、OM0 两个管脚来控制。 NAND FLASH启动过程 当 OM1、OM0 两个管脚都为低电平时,CPU 就被配置成了 NAND FLASH 启动。此时 CP
[单片机]
以s3c2440为例讲解<font color='red'>arm芯片</font>的启动过程
基于Motorola 68VZ328硬件平台的LINUX嵌入式操作系统草案
基于Motorola 68VZ328硬件平台的LINUX嵌入式操作系统草案 一、选用LINUX操作系统做为系统平台的优势。 首先,其内核的源码开放,而且许多技术问题可以在嵌入式LINUX的网站上得到解答,支持能够很好,同时可以省下买其它操作系统源码的开销及相应支持的费用;其次,LINUX操作系统和编译器掌握起来较容易,对于标准C支持较好,省去熟悉操作系统和编译所花费的时间;最后,通过对LINUX系统的开发,以后很容易开发出属于自己平台的产品,安全性方面有所提高,避免很多操作系统留有后门的问题。 二、采用LINUX平台的程序运行描述。 在CPU上电或复位后,需有bootloader这个引导程序将系统引导起来,系统再将GUI的图形界面调
[嵌入式]
AMD下周或发布基于ARM芯片SeaMicro服务器
    北京时间10月26日晚间消息,AMD下周一将举行一场产品发布会,预计将发布基于即将上市的64位ARM处理器的SeaMicro服务器。 AMD CEO罗瑞德(Rory Read)可能出席发布会。另据ARM发言人证实,公司CEO沃伦·伊斯特(Warren East)将以“特别嘉宾”的身份出席。此外,AMD还安排了安德鲁·费尔德曼(Andrew Feldman)出席发布会。在AMD收购SeaMicro前,费尔德曼是后者的CEO。 上述安排表明,AMD可能将发布基于ARM处理器的SeaMicro服务器。ARM处理器以低能耗著称,而SeaMicro产品的特点就是节能。 AMD在媒体邀请函中称,下周一将讨论“双手并用战略”(mbidex
[手机便携]
LPC2100系列加密ARM芯片原理及程序实现介绍
   1. 加密原理说明   LPC2100系列ARM7微控制器是世界首款可加密的ARM芯片,对其加密的方法是通过用户程序在指定地址上设置规定的数据。PHILIPS公司规定,对于LPC2100芯片(除LPC2106/2105/2104外),当片内FLASH地址0x000001FC处的数据为0x87654321时,芯片即被加密。在加密设置后,JTAG调试接口无效,ISP功能只提供读ID及全片擦除功能。注意:将带有加密设置的程序下载到芯片内部FLASH,在下一次系统复位后加密生效。   2. 加密程序实现   为了实现加密设置,用户必须保证在0x000001FC处定义数据0x87654321。我们先来分析一下带有加密设置
[单片机]
传英特尔将涉足ARM芯片制造 供给苹果
消息人爆料,英特尔将会涉足ARM芯片的制造。目前,英特尔正在和苹果公司进行接触,希望为苹果配置ARM架构芯片,以满足苹果部分移动产品的需要。当前,双方并没有真正达成意见。英特尔和苹果均未对此消息置评。 业内人士对记者表示,一直以来,三星公司是苹果产品中ARM芯片的主要供应商。但近年来,双方官司不断,均希望通过种种方式遏制对方的产业发展。而来自苹果的订单,又能大力扶持三星的发展。这样微妙的关系,让二者一直处于尴尬境地。为此,苹果决定寻找能够取代三星的芯片制造商。 传英特尔将首次涉足ARM芯片 供给苹果 毋庸置疑,英特尔拥有芯片产业中最好的技术和强大的产能。与苹果合作能够为双方带来巨大的利益。但唯一需要考虑的一点是,英
[单片机]
基于ARM芯片AT91RM9200的无线打印模块的硬件平台设计
在ARM芯片AT91RM9200上构建了无线打印模块的硬件平台,在Android操作系统上完成了软件平台的搭建,通过调用Linux内核的CUPS,实现移动终端在Android系统上直接打印文件的功能。 Android作为基于Linux开放性内核的开源智能手机操作系统,为智能手机、平板等移动、嵌入式设备应用提供了便捷的系统级支持,但Android系统目前并不支持常用的USB打印功能,打印机厂家暂时也没有专门为Android设备提供打印机驱动程序。本文设计了一种新型的基于Android平台的无线打印模块,采用移植Linux下相关开源驱动的方式,通过调用Linux内核的CUPS(Common UNIX PrinTIng System
[单片机]
基于<font color='red'>ARM芯片</font>AT91RM9200的无线打印模块的硬件平台设计
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

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

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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