基于ARM微处理器及嵌入试Linux的串口网桥软硬件设计

时间:2012-10-29来源:网络

为了解决这个问题,可以在共享中断源后面加一个用CPLD实现的逻辑电路。该逻辑电路由两部分组成,第一部分是一个可寻址的寄存器INTEN,作为共享中断的允许位。第二部分是一个状态机逻辑电路,该电路共有三个状态:S 0是等待状态,该状态下INTEN=I,只要任何一个串口产生中断请求,CPU将马上响应该中断;Sl是中断服务状态,中断服务程序一开始执行,马上将INTEN设置为0,以屏蔽其他中断请求,退出中断服务程序时,再将INTEN设置为1,中断服务程序执行期间产生的串口中断请求由INTREQ锁存;S2为延时状态,延时50us,以确保中断服务程序完全退出。

状态机逻辑电路状态图如图4所示:

4.系统软件平台

4.5 uC1inux操作系统简介

Linux是一种很受欢迎的类UNIX操作系统,它免费并开放源代码,在个人计算机、服务器领域应用广泛。更重要的是,Linux采取模块化设计,实际应用中可以实现定制,因此Linux也适用于嵌入式领域。uClinux正是Linux的一个嵌入式版本,其内核的二进制映像文件可以做到小于512K。

uClinux针对无MMU(Memory Management Unit,内存管理单元)的处理器设计,支持多任务,具有完备的TCP/IP协议栈并支持多种网络协议。uClinux还支持多种文件系统,如ROMFS,NFS,FATl6/32。实际上,uClinux已经成功应用于路由器、网络摄像机、机顶盒、PDA等诸多领域。

另外,uClinux可移植性很强,用户通过重新配置、编译内核,可以很方便地将其移植到ARM,Dragon Ball、ColdFire、Power PC等多种处理器计算平台。当前uClinux主要提供2.0和2.4两个内核版本。

4.2软件开发调试方法

嵌入式Linux软件开发可以采用一种特殊的模式:主机--目标机模式进行开发,其中主机就是常用的PC或工作站,开发环境运行在主机上,主机的操作系统是通用的Windows或Linux系统。目标机就是嵌入式应用系统,它与主机间通过串行口、以太网或其他方式通信,从主机下载编译好的代码并运行。

利用GNU提供的免费交叉调试工具,开发人员可以在主机上调试目标机上运行的程序。在目标机上运行一个代理,以接收主机发送过来的命令和代码,并解释执行。通过调试器。开发者可以设定程序运行的起止位置和断点,同时可以查看和改变变量、寄存器和内存中的值,设置程序运行条件等,使开发人员感到如同在本机上调试程序一样方便。

4.3程序框图

串口网桥控制程序的主要功能就是实现对串口数据和网络数据的重组与转发。本地主机或远端主机上的应用程序以原有的操作本机串口的方式与连接在串口网桥上的设备进行信息交互,主机上的设备驱动程序将应用程序要求发送的串口数据以及对应串口号等辅助信息转换为网络数据包,发送到以太网上;串口网桥的控制程序接收到经以太网传送过来的数据包后,将数据包解包并提取其中的串口命令数据以及目标串口号等信息,而后重组成串口数据并发送到相应串口。控制程序处理串口设备上传给本地主机或远端主机的数据的方式与上述过程相反。

串口网桥软件结构如图5所示:

5,结束语

本文讨论了一个基于ARM微处理器S3C4510B及uClinux的串口网桥设备的软硬件设计,对S3C4510B芯片功能进行了简要描述,并探讨了基于该芯片的嵌入式Linux软件开发模式.事实证明,采用Linux作为嵌入式操作系统并充分利用GNU提供的免费开发工具包,降低了嵌入式系统开发的经济门槛,使更多的人能够掌握相关技术,代表了嵌入式系统开发的一种新方向。

参考文献:

[1].RS-232datasheethttp://www.dzsc.com/datasheet/RS-232_584855.html.
[2].ARM7TDMIdatasheethttp://www.dzsc.com/datasheet/ARMDMI_139812.html.
[3].S3C4510Bdatasheethttp://www.dzsc.com/datasheet/S3C45_589499.html.
[4].100Mdatasheethttp://www.dzsc.com/datasheet/100M_2509927.html.
[5].RTL8201datasheethttp://www.dzsc.com/datasheet/RTL8201_586322.html.
[6].HY57V641620HGhttp://www.dzsc.com/datasheet/HY57VHG_390467.html.
[7].ROMdatasheethttp://www.dzsc.com/datasheet/ROM_1188413.html.
[8].DM9161datasheethttp://www.dzsc.com/datasheet/DM9161_264516.html.
[9].FBGAdatasheethttp://www.dzsc.com/datasheet/FBGA_1457924.html.
[10].RS232datasheethttp://www.dzsc.com/datasheet/RS232_585128.html.
[11].16C554datasheethttp://www.dzsc.com/datasheet/16C554_24747.html.
[12].Maximdatasheethttp://www.dzsc.com/datasheet/Maxim_1062568.html.
[13].MAX202datasheethttp://www.dzsc.com/datasheet/MAX202_1089634.html.
[14].TTLdatasheethttp://www.dzsc.com/datasheet/TTL_1174409.html.
[15].CPLDdatasheethttp://www.dzsc.com/datasheet/CPLD_1136600.html.

1 2 3

关键词: ARM微处理器 Linux 串口网桥

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版