手机端
or

欢迎您加入我爱方案网QQ群

1.智能产品外包服务群(311606115)
2.嵌入式项目开发群(491609563)

基于SX52BD的电力线智能家庭网关的设计

孙继国; 高扩; 王永进| 智能家庭网关,SX52BD,μ CLinux操作系统,TCP/IP协议| 2010-11-29
1074 收藏
分享到: 
每日精选
热门推荐

【中心议题】

  • 设计了一个基于S X 5 2 B D及μCLinux的智能家庭网关
  • 给出了实现方案

【解决方案】

  • 8位嵌入式微处理器SX52BD为核心搭建硬件平台
  • 结合电力线载波通信技术
  • 移植嵌入式操作系统μCLinux

本文设计的是一种高性能,低成本的电力线智能家庭网关系统,它以8位嵌入式微处理器SX52BD为核心搭建硬件平台,结合电力线载波通信技术,通过移植嵌入式操作系统μCLinux,并在μCLinux上开发相应的驱动程序、应用程序和嵌入式WebServer来构建软件平台的。

1智能家庭网关的总体设计

电力线智能家庭网关主要由嵌入式W e b s e v e rT C P/I P协议、H N P(HomeNetwork Protocol)协议和电力线通信模块SC1128组成。嵌入式WebServer是整个网关系统的核心,T C P/I P协议由S X 5 2 B D网络单片机实现,H N P家庭网络协议由SC1128接口实现。外部网络与嵌入式WebServer之间是通过以太网、Modem等网络接口基于T C P/I P协议实现的通信的,嵌入式WebServerSC1128接口之间使用标准的R S 2 3 2串行口通信接口实现数据交互,而智能家庭网关与信息家电之间通信是通过电力线通信模块S C 1 1 2 8基于PLN(电力线网络)完成的。在这里SC1128接口既要完成RS232/HNP协议转换,又要负责接收来自WebServer的命令信息并实现对信息家电的监控,同时也将信息家电端发送的状态信息传送给WebServer,然后反馈给用户,从而构成一个能实现完整功能的网关系统。

2硬件平台设计

本系统的硬件平台是以U B I C O M公司生产的一款RISC指令集的高速8位嵌入式微处理器SX52BD为核心,通过外扩存储器(Flash/SDRAM)、电力线通信模块SC1128、触摸屏、小键盘、网络接口Ethernet模块、电话语音控制模块等来构建的。各部分的功能与接口电路分析如下。

 

(1)微处理器S X 5 2 B D:S X 5 2 B DU B I C O M公司生产的一款R I S C指令集的单片机,片上带有4K×16位的Flash存储器和2 6 2×8位的R A M,采用C P U并行流水线方式及单时钟周期指令,指令执行速度可达100MIPS,SX52BD的最大优点是可以通过虚拟外设功能来运行网络协议栈,针对具体应用可以对协议栈进行灵活配置。(2)电力线载波通信电路:SC1128芯片是面向电力线载波通信市场而开发研制的专用扩频调制/解调器电路。SC1128芯片内部集成了扩频/解扩、调制/解调、D/AA/D转换、内置电子表、输出驱动、输入信号放大、看门狗、工作电压检测以及与单片机(MCU)串口通信等功能。(3)Flash存储器接口电路:系统使用的是Microchip公司生产的一种串行3 2 K BE E P R O M存储器24LC256,采用CMOS工艺,通过两根数据线和外界通信,兼容I 2 C总线接口,可设为硬件写保护。(4)S D R A M接口电路:嵌入式操作系统的存在需要有一定量的动态RAM,解压缩后的操作系统将从Flash搬移至S D R A M,驻留内存;同时,用户堆栈、运行数据也都放在S D R A M,需要在外部总线上扩充S D R A M(5)以太网接口电路:RTL8019ASRealTek公司出品的一种全双工以太网控制器,它自带1 6 K BS R A M可工作在EthernetIIIEEE802.3(l0BaseS,l0Base2,l0BaseT),并能与NE2000兼容。(6)L C D显示器接口电路:L C D占用SX52BD的第0外扩设备,连接低8位数据线,低两位地址线(74hc04两极驱动)(7)盘接口电路:8个通用I/O口组成4×4键盘。(8)SX52BD所需其他外围电路:包括JTAG接口电路(用于JTAG调试)、话语音控制电路、复位电路、电源电路。

3系统的软件平台

μClinux是一款模块化的、可移植性强、易于配置的嵌入式操作系统,具有L i n u x系统的高可靠性、功能强大、源码开放等特点。

(1)应用程序层:通过内核的系统调用实现任何需要的应用服务。(2)μClinux内核:提供进程控制、文件系统管理、中断和中断处理、系统初始化、各种系统调用等。(3)硬件驱动层:包括串口驱动、触摸屏、USB设备驱动、以太网驱动、ROMFS文件系统和其它驱动。

3.1μClinux操作系统简介

L i n u x是很受欢迎的源码开放的操作系统,而μCLinux正是Linux的一个嵌入式版本,其内核的二进映象文件可做到小于512K,μCLinux针对无MMU(内存管理单元)的处理器设计,支持多任务,具有完备的T C P/I P协议栈并支持多种网络协议,还支持多种文件系统如R O M F SN F SF A T 1 6/3 2,还可方便移动到A R M等多种处理器平台。

 

3.2硬件驱动和应用程序的开发

我们采取的基本思路是先在P C机上模拟实现该网关功能,然后再作必要的改动后移植到嵌入式系统中。所以硬件驱动和应用程序的开发是在交叉编译环境中进行的,先在P C机上开发,然后移植到目标机上进行调试并最终固化到目标机上。设计中需要开发的硬件驱动有:以太网卡控制器、串口、L C D、小键盘等的驱动程序。

3.3 CGI程序设计

CGI即公共网关接口(Common Gateway Interface),它是一个Web服务器主机对外服务的标准接口。其流程是:由用户填写一个表单并将其提交给W e b服务器,W e b服务器触发一个可执行程序(C G I程序),这个程序根据用户请求的内容以及提交的数据做出相应的处理,并可返回程序处理结果信息到客户端。

4 TCP/IP协议栈的构建

我们的智能家庭网关使用的是系统资源有限的8位嵌入式系统,要让这其实现相应的网络功能又能够节省系统资源,就要根据系统的要求对标准的T C P/I P协议栈针对性进行简化,以得到一个适用于直连嵌入式Internet系统结构的精简TCP/IP协议栈。

我们设计实现的T C P/I P协议栈主要包括了A R P,I P,I C M P,T C PH T T P协议。

(1)嵌入式Webserver采用HTTP协议作为其应用层协议。在实现H T T P协议时,嵌入式Webserver需要能够接收HTTP请求并发送相应网页资源以完成H T T P响应。(2)因为嵌入式Webserver的应用层选用H T T P协议,所以,精简T C P/I P协议栈的传输层选用T C P协议。(3)选择实现I C M P协议是为了使用户能够检测嵌入式W e b服务器的可达性及状态。(4)IP协议是TCP/IP协议栈中的核心协议,它使异构网络之间的通信成为可能。在精简T C P/I P协议栈中实现的I P协议不支持分片和重组以减少程序的复杂程度。(5)选用ARP协议是为了完成嵌入式W e b服务器的I P地址到其物理地址的转换。在实现A R P协议时,系统只需能够响应A R P请求并发送A R P响应报文即可。

5结语

本文设计实现了一个基于S X 5 2 B D及μCLinux的智能家庭网关,它的优点在于使用了电力线通信技术,利用了家庭电力网的资源优势,无需布线;并且控制方式多样,使我们家庭成为协调一致的自动化智能化系统。

深圳市中电网络技术有限公司 Copyright© www.52solution.com 粤ICP备10202284号