新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于Linux内核的无线多频段WSN网关设计

基于Linux内核的无线多频段WSN网关设计

作者:时间:2013-12-27来源:网络收藏

TL16C554A芯片是8位数据宽度,TL16C554AD0D7引脚与ARM9芯片直接相连,读写信号是直接连接的。TL16C554A的引脚INAINTBINTCINTD分别接在主控制芯片的引脚INT0INT2INT3INT4,这样扩展的各通道串口就能通过中断独立地工作。

S3C2440A的地址线A0A3TL16C554AA0A3直接相连,S3C2440AnGCS2作为译码器74LS139的片选信号。74LS139的输入端分别接地址线A4A5。根据译码器译码,实现地址分配,再通过ARM芯片地址映射。外扩的4通道串口的物理地址为

通道A——0x100000000x10000008

通道B——0x100000100x10000018

通道C——0x100000200x100000028

通道D——0x100000300x10000038

主控制芯片通过访问这些地址就能访问外部寄存器,即TL16C554A芯片片内寄存器地址。多频段子网接入部分接口电路如图3所示。

http://files.chinaaet.com/images/2013/05/22/5368538378235.jpg
3 多频段子网接入部分接口电路

22 3G网络接入接口部分

3G网络接入部分采用USB接口的华为ET128无线网卡。接入接口使用USBHUB芯片AU9254A21,它是一款单芯片USB集线器控制器。AU92 54A21采用12MHz无源晶振,为芯片工作提供独立的时钟。3G网络接入部分接口电路如图4所示。

基于Linux内核的无线多频段WSN网关设计
4 3G网络接入部分接口电路

23 以太网接入部分

网关通过以太网口发送数据包的原理是:处理器先将待发送的数据存入到内部存储器,提供发送缓冲区的首地址和数据长度,然后执行发送命令,由DM9000A将数据按TCPIP协议格式发送到物理链路上。

因以太网信号电平与以太网控制器信号电平不同,所以在硬件电路实现上需要在控制器与RJ-45接口间增加一个网络变压器,网络变压器采用TRC9016。电信号通过网络变压器转换,然后经RJ-45接口接入以太网,从而完成数据发送过程。DM9000A主要完成数据包和数字电信号之间的相互转换。

3 网关软件系统设计

网关的软件环境采用的是嵌入式Linux系统。移植好的Linux2624源码已经包含了以太网控制器DM9000AUSB接口芯片等芯片的驱动。因此,软件部分只需要设计串口扩展芯片TL1 6C554A的驱动程序以及Linux环境下的应用程序即可。

31 串口扩展芯片TL16C554A驱动的实现

Linux2624内核提供了统一的设备驱动模型。多串口设备驱动的注册,流程如图5所示。

多串口设备驱动的注册,流程如图

32 LinuxPPP的管理和配置

根据网关硬件接口的情况修改、移植通用驱动代码后,通过相关的配置,定制和编译网关所需的内核映像文件。内核编译采用的交叉编译器版本为arm- linux-gcc341,使用makemenuconfig ARCH=arm命令进入内核配置图形化界面,选择和PPPPoint-to-Point,点对点协议)有关的选项,添加系统对PPP功能的支持。界面如图6所示。配置完成以后,保存设置,退出内核配置图形化界面。使用命令:makeuImage ARCH=arm CROSS_COMPILE=arm-linux-.编译完成以后,会在源码包的archarmboot路径下生成内核映像文件uImage,如图7 所示。

物联网相关文章:物联网是什么




评论


相关推荐

技术专区

关闭