基于IP2022的嵌入式设备与以太网互连系统的设计
22硬件资源,确定各软件包之间的关系,自动链接到目标代码。
系统主要是用来完成RS-485串口和以太网之间的数据转换和传输,在硬件上拥有了RS-485接口和以太网RJ45接口之后,软件上还必须利用IP2022的配置工具加载ipOS、ipStack、ipEthernet和ipUART四个软件模块。
ipOS操作系统模块是Ubicom设计的可配置的嵌入式实时操作系统,它是专为网络应用而优化的。ipStack协议栈模块是符合工业标准的TCP/IP网络连接协议栈,它提供直接Internet寻址功能,设计者不需要使用外部物理接口芯片或PC网关就能设计嵌入式网络设备。ipUART串口模块提供了异步串口通信功能,系统加载ipUART软件模块后,芯片具备了异步收发(UART)能力,能够支持串口通信。ipEthernet 以太网模块完全实现了10Base-T以太网物理层接口(包括MAC和PHY功能),只需使用一个IP2022和少量的外部电路就能实现嵌入式设备接入以太网。图5为系统主程序的流程图。
因为我们配置的IP2022芯片的操作系统是以单任务方式运行的,每一个物理接口和一些操作系统功能都需要被轮询,因此,轮询必须尽可能的返回以防阻碍了其它系统程序的执行。IP2022的运行速度很快,在RAM中可以达到120MIPS,在Flash中可以达到30MIPS,所以轮询速度是可以满足实际要求的。
初始化主要是初始化操作系统和初始化协议栈。在操作系统主要是初始化主要的寄存器、系统调试支持代码、系统定时器;在协议栈主要是初始化IP2022的netbuf/netpage存储机制、TCP协议。
利用IP2022的配置工具增加ipEthernet以太网软件模块,设置以太网接口所用的IP2022硬件端口资源,调用软件包ipEthernet中的函数ip2k_eth_instance_alloc( )创建虚拟外设以太网驱动器。
调用软件包ipStack中的函数eth_ip_arp_instance_alloc( )创建以太网链路层到IP层的实例,调用函数dhcp_client_instance_alloc( )创建DHCP实例。
利用IP2022配置工具增加ipUART软件模块,设置所用的IP2022硬件资源、串口波特率等参数,调用软件包ipUART中的函数 uart_vp_instance_alloc( )创建一个虚拟外设UART,调用函数uart_listen( )对串口进行侦听。
从图5中可以看出进入主循环后,首先对以太网口进行轮询,然后再对串口轮询,这样保证从以太网口来的指令能够优先及时地得到处理。如果轮询到端口有数据发送或接收,就对数据进行协议的转换和传输,其具体的流程如图6所示。
4 结束语
本互联系统实现了带有RS-485串口的嵌入式设备与以太网的连接,进而可以通过以太网接入Internet,从而实现从Internet上监控嵌入式设备,可广泛应用在工业控制、智能仪器、信息家电等领域,具有较高的实用价值。
系统 设计 以太网 设备 IP2022 嵌入式 基于 相关文章:
- 第四代移动通信系统中的多天线技术(08-05)
- 透析信道效应对MIMO系统运作效能的影响(01-18)
- 如何发展中国第二代导航卫星系统(02-02)
- 北斗卫星导航系统的特点(02-02)
- 基于无线传送的智能家居室内通信系统(01-03)
- 基于WiMAX技术的5.8G无线专网射频系统设计(10-06)