基于S3C44B0X和μC/OS-Ⅱ智能家居嵌入式系统设计

发布者:EuphoricMelody最新更新时间:2010-03-01 来源: 现代电子技术关键字:S3C44BOX  智能家居  嵌入式系统 手机看文章 扫描二维码
随时随地手机看文章

  随着社会经济的飞速发展及计算机控制技术等科技的进步,人们对自身的生活和工作环境有了更高的要求,由此对家居智能化控制系统的要求也越来越紧迫。设计家居智能化控制系统,对促进住宅现代化建设具有重要意义。

  家居智能化控制系统就是指利用先进的计算机技术、网络通信技术、综合布线技术,将与家居生活相关的各种子系统有机结合,从而进行统筹管理,使家居生活更加舒适、安全、有效。

  近年来,嵌入式系统设备全面渗透到人们日常生活的各个领域,本文针对智能家居嵌入式系统的软硬件设计需求,以S3C44B0X为处理器进行智能家居系统的硬件设计,以实现μC/OS-Ⅱ在S3C44B0X上的移植。

  1 软硬件选择

  目前主要的嵌入式处理器类型有386EX,SC-400,Power PC,MIPS,ARM/Strong,ARM系列等,其中ARM以其小体积、低功耗、低成本、高性能成为嵌入式处理器首选。S3C44B0X是Samsung公司推出的16/32位RISC处理器,基于ARM7TDMI内核,提供3级流水线结构。它一方面具有ARM处理器低功耗、高性能的特点,同时又具有非常丰富的片上资源。其特点如下:

(1)内置锁相环(PLL),系统主频最高达66 MHz;
  
(2)8路10位ADC,I2C,I2S总线控制器,6个PWM定时器;
  
(3)4种工作模式,正常、慢速、闲置和停止,可以根据需要切换系统工作方式,使系统功耗降低到最低限度;

(4)内置彩色LCD控制器(最大支持256色的DSTN),71个通用可编程I/O口和实时时钟(RTC)。

  由此可以看出,S3C44BOX具有高性能、低功耗、接口资源丰富的特点。这些特点可以较好地满足家居智能控制系统的设计需要。作为家居智能控制系统,除了具有局域网接口、PSTN接口、RS 485接口、蓝牙接口外,还应提供音频视频接口、HUB接口、报警传感器接口等。这些接口可以实现音频视频自动切换、多台PC同时上网、与各PC机结合完成家庭设备管理等功能。

  μC/OS-Ⅱ是一种源码公开的实时嵌入式操作系统。它完全是占先式的实时内核,是基于优先级的,即总是让就绪态中优先级最高的任务先运行,因此实时性比非占先式的内核要好。它包含了实时内核、任务管理、时间管理、任务问通信同步(信号量、邮箱、消息队列)和内存管理等功能;它的绝大部分代码用C语言编写,可移植性强。目前,μC/OS-Ⅱ绝大多数可以在8位、16位、32位以至64位微处理器、微控制器、数字信号处理器(DSP)上运行。

  2 智能家居硬件设计

  在选定了处理器之后,外围电路就可按要求进行设计。其硬件框图如图1所示,主要包括:

  2.1 存储器系统

  其中静态存储器由FLASH组成,用于存储智能家居中的嵌入式操作系统、HTTP服务器、家庭网络服务器以及支持各种服务所需的文件系统。动态存储器采用SDRAM,以提高系统的允许速度和采用操作系统来保证系统的稳定性,整个智能家居系统软件平台存储在FLASH中,在系统启动时,将从FLASH中运行Boot-loader,解压缩操作系统,并将其搬移到SDRAM中,完成搬移之后,所有程序从SDRAM中运行。其中,FLASH选用SST公司生产的SST39VF160芯片。39VF160采用CMOS工艺设计,支持1 M的地址空间,20条地址总线,16条数据总线。SDRAM选用Hynix公司生产的HY57V641620芯片。HY57V641620存储容量为4组×16 M(8 MB),由于采用行/列地址锁存机制,由行列地址共同构成20条地址线,完成1 M的寻址范围。

  2.2 输入/输出系统

  包含LCD液晶显示、键盘以及微型打印机等,可以基本满足测试数据等显示以及人机交互的需要。

  2.3 外部通讯接口

  包括RS 232串口、以太网接口。RS 232接口用于系统同PC机之间的通讯,可以把测试系统保存的数据导出来,本系统采用国际通用的RS 232C作为串行接口;以太网接口则可以把整个测试系统连接到互联网上,从而实现该测试系统的远程监控。

  2.4 蓝牙通信模块  

  在家居控制器上使用蓝牙技术主要是为了给家居控制器的各个功能模块提供无线传输的方式。在家居中央控制器上可以采用蓝牙模块加开放蓝牙协议的方式开发蓝牙功能,综合考虑成本、结构等因素,信息家电可以采用蓝牙模块加单片机的方式实现蓝牙功能。将整个蓝牙核心协议栈移植到单片机中显然不合实际,可以采用这样的开发方案:在蓝牙HCI层的基础上,根据信息家电信息传输的实际需求,建立相关协议,利用单片机直接和蓝牙硬件模块交换HCI指令,实现信息交互。单片机采集信息家电的相关信息通过蓝牙模块发送出去,蓝牙模块也可以将接收到的命令用HCI指令传递给单片机执行。

   2.5 温度、湿度检测和实时时钟实现模块

  主要实现对室内环境的监控,便于控制系统采取适当的方式控制室内环境。其中温度采用温度传感器实现,实时时钟采用S3C440BX自带的RTC模块实现。

  3 μC/OS-Ⅱ在S3C44B0X上的移植

  μC/OS-Ⅱ在S3C44B0X上的移植,需要修改3个与ARM体系相关的文件:OS_CPU.H,OS_CPU_C.C,OS_CPU.ASM。在μC/OS-Ⅱ的移植过程中,采用ADS作为编译器,ADS由一套完备的应用程序构成,可用来编写和调试ARM系列的RISC处理器的应用程序,并可通过主机和实时分析工具让使用者对应用程序进行完整的分析,加速实时嵌入式系统的开发和测试。

  3.1 设置OS_CPU.H中与处理器和编译器相关的代码

  这部分代码的定义主要包括数据类型的定义、开关中断代码的宏定义、任务切换时执行代码的定义和堆栈增长方向的定义。在S3C44B0X中,所有的任务堆栈都是用OS_TSK声明数据类型,用OS_ENTER_CRITI-CAL()和OS_EXIT_CRITICAL()实现开关中断,用结构常量OS_STK_GROWTH来指定堆栈的生长方式。

  3.2 编写与操作系统相关的函数OS_CPU_C.C

  μC/OS-Ⅱ定义了6个函数在该文件中,其中OSTa-skStklnit()是任务堆栈初始化函数,其他5个函数都是Hook函数,即OSTaskCreateHook(),OSTaskDelHook(),OSTaskSwHook(  ),OSTaskStatHook(  ),OsTimeTickHook()等接口函数,是系统预留给用户添加功能的,只要声明,可以不包含代码,当用户需要额外扩展功能时,在这5个函数中选择加入就可。实际上需要修改的只有OSTaskStklnit()函数,该函数用来初始化任务堆栈,使得任务堆栈建立时与发生1次中断后的堆栈结构相同。S3CA4B0X的堆栈结构如图2所示。在修改OSTaskStklnit()函数时应依照该结构进行。

  3.3 编写与处理器相关的函数OS_CPU.ASM

  这部分代码是对处理器的寄存器进行操作,必须用汇编语言来编写,包括以下4个子函数:

  3.3.1 OSStanHighRdy()

  运行优先级最高的就绪任务,此函数是在OS-Start()多任务启动后,负责从最高优先级任务的TCB控制块中获得该任务的堆栈指针SP,通过SP依次将CPU现场恢复,这时,系统就将控制权交给用户创建的该任务进程,直到该任务堵塞或者被其他更高优先级的任务抢占CPU。该函数仅在多任务启动时被执行一次,之后多任务的调度和切换由以下函数实现。

  3.3.2 OSCtxsw()

  可实现任务级的上下切换,任务级切换是通过SWI或者TRAP人为制造的中断来实现。ISR的向量地址必须指向OSCtxSw(),这一中断完成的功能为:保存任务的环境变量(主要是寄存器的值,通过入栈来实现),将当前SP存入任务控制块中,载入就绪最高优先级任务的SP,恢复就绪态最高优先级任务的环境变量,中断返回,以完成任务级的切换。

  3.3.3 OSIntCtxSw()

  中断级的任务切换,在时钟中断ISR中(中断服务例程)如果发现有高优先级等待的时钟信号到来,则在中断中退出后并不返回被中断任务,而是直接调度高优先级的任务执行,从而能够尽快地让高优先级任务得到响应,保证系统的实时性能。其原理基本上与任务级的切换相同,但是由于进人中断时已经保存了被中断任务的CPU现场,因此不再进行类似的操作,只需对堆栈指针做相应调整。

  3.3.4 OSTicklSR()

  OSTickISR()是一个周期性函数,为内核提供时钟节拍中断。频率越高、系统负荷越大、其周期的大小决定了内核所能给应用系统提供的最小时间间隔。一般只限于毫秒级(跟处理器有关),对于要求更加苛刻的任务,需要用户自己建立中断来解决。该函数具体内容:保存寄存器,调用OSIntEnter(),调用OSTimeTick(),调用OSIntExit(),恢复寄存器,中断返回。但注意不要在OSStaut()之前调用OSTickISR()。

  完成以上3个程序的改写,μC/OS-Ⅱ就可以在S3C44BOX上正确运行。

  4 结语

  家居智能控制系统是家庭内外信息交换和家电控制的平台。本文采用SAMSUNG公司的S3C44BOX芯片设计硬件和软件,克服8位单片机处理速度慢、接口资源和存储资源不足的限制。在实验调试过程中,该系统运行状况良好、工作稳定。证明其设计是实用、有效的。但智能家居嵌入式系统是一个比较大的系统,目前只是涉及到其中核心部分,其他部分还需继续探讨。

关键字:S3C44BOX  智能家居  嵌入式系统 引用地址:基于S3C44B0X和μC/OS-Ⅱ智能家居嵌入式系统设计

上一篇:嵌入式智能家居控制系统的研究与设计
下一篇:基于电话网的嵌入式远程控制器的设计

推荐阅读最新更新时间:2024-05-02 21:00

基于嵌入式系统的CAN模块设计与实现
随着信息技术技术的飞速发展,ARM技术方案架构作为一种具备低功耗、高性能、以及小体积等特性的32位嵌入式微处理器,得到了众多的知识产权授权用户,其中包括世界顶级的半导体和系统公司。目前已被广泛的用于各类电子产品,汽车、消费娱乐、影像、工业控制、海量存储、网络、安保和无线等领域。被业界人士认为,基于ARM的技术方案是最具市场前景和市场优势的解决方案。   现场总线CAN是为解决现代汽车中众多的电控模块之间的数据交换而开发的一种串行通信协议。由于其具有多主站依据优先权进行总线访问,采用非破坏性总线仲裁,可完成对通信数据的错误检验和优先级判别,数据长度最多为8个字节,传输时间短,受干扰的概率低,抗干扰能力较强,通信速率最高可达1Mbit/
[嵌入式]
uC/OS-II实时操作系统移植的一般方法和技巧
引言 实时操作系统的使用,能够简化嵌入式系统的应用开发,有效地确保稳定性和可靠性,便于维护和二次开发。 μC/OS-II是一个基于抢占式的实时多任务内核,可固化、可剪裁、具有高稳定性和可靠性,除此以外,μC/OS-II的鲜明特点就是源码公开,便于移植和维护。 在μC/OS-II官方的主页上可以查找到一个比较全面的移植范例列表。但是,在实际的开发项目中,仍然没有针对项目所采用芯片或开发工具的合适版本。那么,不妨自己根据需要进行移植。 本文则以在TMS320C6711 DSP上的移植过程为例,分析了μC/OS-II在嵌入式开发平台上进行移植的一般方法和技巧。μC/OS-II移植的基本步骤 在选
[嵌入式]
基于嵌入式系统的隔离硬件设计
1 引言 Internet的迅猛发展使信息共享的程度进一步提高,因而信息安全的问题也日益突出,这时唯一的解决方法只能是主动解决信息安全和网络安全问题。目前国内外采用最多的、最普遍的网络安全措施是使用防火墙类软件,但是防火墙类软件本身存在两大先天缺陷:其一是防火墙隔离的网络还是基于TCP/IP协议来进行信息交换的,而TCP/IP 协议存在漏洞,它无法防止协议本身的漏洞;其二是防火墙的运行离不开操作系统,操作系统和防火墙软件都存在漏洞,因而不能阻止由这些漏洞而引起的网络安全问题 。因此,开发相应的应用系统是必要的。本文在对已有的防火墙技术及物理隔离技术进行分析的基础上,提出了带缓冲区的双通道实时开关技术,通过该技术所设计出的网络隔离
[嵌入式]
全球智能锁销量将在2023年达到2600万部
Strategy Analytics最新发布的研究报告《 智能家居 接入控制:预测,市场玩家和产品》指出,前门是智能家居设备公司的重要机会。2023年全球 智能锁 的 销量 将达到近2600万部,智能锁市场规模将超过24亿美元。 Kwikset,Schlage和Yale将占超过75%的市场份额,但亚马逊和谷歌进入智能锁领域为其带来的威胁以及欧洲和亚洲消费者需求将使这些厂商长期领先的地位复杂化。     Strategy Analytics智能家居策略研究服务总监Bill Ablondi表示,“随着消费者对智能家居科技的使用增加,智能锁成为重要的设备。然而,Kwikset,Schlage,Yale,August和其他公司成功的策
[嵌入式]
智能家居用户需注意的三大因素
 物联网的迅速发展使得智能家居市场得到了空前的关注,火热的市场也带来一系列的安全问题,更加让我们值得关注。下面就随网络通信小编一起来了解一下相关内容吧。 今年智能家居产品发展与应用成为全球瞩目的焦点,各大厂商积极抢攻智能家居这块市场大饼,随着民众家中物联网装置数的持续增加,安全威胁的风险也日益提升。趋势指出,“黑客双重攻击路径”及“网络环境安全防护措施不足、未定期更换密码”、“固件/软件更新频率低”三大要素使智能家居用户的网络安全状况备受威胁。 根据市场研究机构Juniper Research最新发布的报告显示,今年智能家居硬件装置与服务的营收规模将达到830亿美元,预估到了2021年市场将成长两倍,各大厂商积极抢攻智能家居这
[网络通信]
首款中国智能家居硬件登陆Kickstarter,厨房安全是刚需?
智能硬件在不断占领人体的同时,也在进军客厅、卧室甚至厨房。业界最著名的品牌当属被谷歌以32亿美金收购的Nest。后者曾先后推出了恒温控制器和烟雾探测器。这两款产品销量甚佳的原因,是其帮助用户解决了空调能源浪费以及居家安全等问题。 跟Nest主打客厅场景不同的是,这一款上线Kickstarter的名为Kepler的智能燃气报警器,Kepler专注于厨房安全。这款产品来自于国内智能家居团队ORVIBO欧瑞博,它通过WiFi技术连接安全家居云平台,并支持手势控制,实现智能分级报警。与Nest检测事发后的烟雾不同,Kepler可实现实时燃气、一氧化碳探测和分析。其还具备厨房定时器功能。用户可以根据菜肴设置时间,定时结束后,挥
[物联网]
首款中国<font color='red'>智能家居</font>硬件登陆Kickstarter,厨房安全是刚需?
物联网“十二五”规划将出 智能电网等十领域暗藏商机
    最近,继今年6月工信部将物联网规划纳入“十二五”专题规划后,有关加强物联网产业发展的“十二五”规划又开始浮出水面。据悉,按照原定的时间表,物联网“十二五”规划将在元旦前后出台。   据相关专家介绍,十大物联网应用的重点领域分别是智能电网、智能交通、智能物流、 智能家居 、环境与安全检测、工业与自动化控制、医疗健康、精细农牧业、金融与服务业、国防军事等十大领域,其中“十二五”期间智能电网的总投资预计达2万亿元,居十大领域之首,预计到2015年将形成核心技术的产业规模2000亿元。   受此消息影响,电子支付、智能电网、通信、航天军工、电子信息等板块分别轮番发力,此起彼伏,成为盘中最亮丽的一道风景线。本版将以系列报道的形式
[手机便携]
DDR SDRAM在嵌入式系统中的应用
引 言   很多嵌入式系统,特别是应用于图像处理与高速数据采集等场合的嵌入式系统,都需要高速缓存大量的数据。DDR(Double Data Rate,双数据速率)SDRAM由于其速度快、容量大,而且价格便宜,因此能够很好地满足上述场合对大量数据缓存的需求。但DDR SDRAM的接口不能直接与现今的微处理器和DSP的存储器接口相连,需要在其间插入控制器实现微处理器或DSP对存储器的控制。   随看密度与性能的不断提升,现场可编程门阵列(FPGA)已被广泛应用于各种嵌入 式系统中。而且,现在很多的FPGAs都提供了针对DDR SDRAM的接口特性:其输入输出引脚都与SSTL一II电气特性相兼容,内部提供了DDR触发器、
[嵌入式]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

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

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