嵌入式家庭网络中央控制器系统设计方案

嵌入式家庭网络中央控制器系统设计方案,第1张

  引言

  随着信息社会的发展,网络和信息家电越来越地出现在人们的生活中。人们普通要求将家庭内的所有家用电器与Internet连接起来,实现主人在远方用计算机或电话通过Internet对象家庭电设施进行监控。“家庭网络中央控制器”对外与Internet连接,对内通过家庭内部无线局域网将所有家用电器连接成一体,从而确保信息家电安全地接入Internet。

  嵌入式Internet是近几年发展起来的一项新兴技术。以32位ARM嵌入式微处理器为硬件平台,通过移植嵌入式 *** 作系统uClinux内核,开发相应的硬件驱动、微型GUI和上层应用软件,最终实现产品化的嵌入式家庭网络中央控制器。该系统具有体积小、功耗低、价格便宜的特点。

  1 系统的硬件组成

  

嵌入式家庭网络中央控制器系统设计方案,家庭网关的硬件框图,第2张

 

  图1为家庭网关的硬件框图,以S3C4510B为基本核心系统,外围扩展一系列功能模块。有4×4键盘及以屏幕LCD显示构成良好的人机界面,用于手动本地参数查询和设定。家庭网关基本系统以SPI接口与PTR3000无线收发模块相连,同时家庭内部家电控制器也通过SPI接口扩展PTR3000无线模块。这样,家庭网关的无线模块以轮询的方式与家庭内各家电控制器上无线模块进行通信,从而组成家庭内部无线子网。家庭网关基本系统只需对SPI口进行 *** 作即可实现与家电通信。实现了家电以家庭网关为中介与Internet在物理层互联的三个通路:PC通过LAN经由Internet连接到基本系统的以太网口、PC通过Modem经由公司电话网与嵌入式Modem相连再到UART1、电话机经过公用电话网经语音卡连到UART1。

  2 uClinux嵌入式 *** 作系统

   *** 作系统选用uClinux。它是一个完全符合GNU(GNU’s Not Unix,自由软件基金会)/GPL(General Pulic License,通用公共许可证)公约的完全开放代码项目,是标准Linux的一个分支,现在由Lineo公司支持维护。它专门针对没有MMU的CPU,并且专为嵌入式系统做了许多小型化的工作。

  UClinux经过对标准Linux内核的改动,形成了一个高度优化的、代码紧凑的嵌入式Linux。虽然它的体积很小,但uClinux仍然保留了Linux的大多数的优点,稳定、良好的移植性、优秀的网络功能、完备的对各种文件系统的支持以及标准丰富的API。它的主要特片如下:

  ①在linux-2.4.x/driver/char/Makefile添加1行:obj_$(CONFIG_SPI)+=SPI.0。在24行obj-y+=mem.o tty_io.o后加PI.o。

  ②在linux-2.4.x/driver/char/Config.in,添加1行:bool'SPI'CONFIG_SPI便于在make me nuconfig时选择。

  ③在linux-2.4.x/driver/char/mem.c在文件头部添加:#ifdef CONFIG_SPI /*编译时选择该项就执行SPI的初始化函数*/

  extern void SPI_init(void);

  #endif

  在chr_dev_init()函数添加:#ifdef CONFIT_SPI

  SPI_init();

  #endif

  ④修改vendor/Samsung/4510b/Makefile,建立起设备节点。

  在12~35行间,DEVICE部分添加内容SPI,c,29,0。SPI是设备名,c代表字符设备,29是SPI的主设备号,0是SPI的次设备号。⑤make menuconfig时选中SPI编译,然后直载。

  启动后,会看到/proc/devinces中字符设备多了一项SPI 29。

  S3C4510B有18个通用I/O口,其中高10位可设置为其它功能口。在该系统中,设置P8为中断接收线,P11模拟主机输出线MOSI,P12模拟主机时钟SCK,P13模拟主机输入线MISO。P8口用于接收PTR3000的发送请求信号。当P8口接收到请求信号时,系统进入中断处理。中断处理进程唤醒睡在睡眠队列SPI_WAIT上的读进程,读进程由P12口输出SCK信号并由P13口读入数据。值得说明的是,SPI不带中断线,在此用P8口做中断接收线是为了避免 *** 作系统在没有进行SPI *** 作时不断向SCK线发时钟信号。因此,MSP430F147IPM必须另外与S3C4510B连一个引脚在请求发送数据时发出中断接收线是为了避免 *** 作系统在没有进行SPI *** 作时不断向SCK线发时钟信号。因此,MSP430F147IPM必须另外与S3C4510B连一个引脚在请求发送数据时发出中断请求信号。实现过程如下:

  

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/dianzi/2713490.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-17
下一篇 2022-08-17

发表评论

登录后才能评论

评论列表(0条)

保存