首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 单元电路介绍 > 其它电路
基于SOPC技术的远程测控系统设计
来源:本站整理  作者:佚名  2009-08-11 10:31:45



2.1 移植μC/OS-II和LWIP
    μC/OS-II是一种可移植、可固化、占先式多任务实时操作系统内核。其规模较小、实时性和可靠性较高,Nios II集成开发环境(IDE)对μ C/OS-II具有良好的支持,故μC/OS-II是嵌入式操作系统的首选。它通过为每个任务分配单独的任务堆栈来保存任务工作环境,提供任务管理和调度服务。
    轻量级网络协议(Lightweight IP,LWIP)是TCP/IP协议栈的一种实现,它是一种专门针对嵌入式系统应用而设计的网络通信协议,由于LWIP实现的关键在于削减代码大小和内存消耗,但可以完成传统的TCP/IP协议的大部分功能,通常只需要大约40K的ROM和几十K的RAM即可运行,在网络协议栈初始化后,使用标准套接字API创建新任务访问网络协议栈。
2.2 通信服务器
   
本任务通过sys_thread_new()函数创建,作为服务器监听约定的端口,等待远程主机的连接,提取远程主机的命令,通过消息队列将所获得的命令发送到测控任务。LWIP提供了标准的Berkeley套接字编程界面,这个界面提供了三种类型,这里使用了流式套接字,这是一个面向连接、可靠的数据传输服务,数据无差错、无重复地发送,按发送顺序接收。通常服务器接收到并发服务请求后,要激活一个新进程来处理这个客户请求。


3 远程测控系统的实现
3.1 系统初始化
   
系统初始化是指系统上电复位后到运行main()函数前,初始化硬件,构建应用程序运行环境的过程。如图3所示,Nios II的HAL程序库为用户提供了这段代码,代码的入口标号是"reset"。
    程序先对CPU进行初始化,其功能包括初始化指令和数据Cache,设置堆栈指针(stack Pointer)等,然后调用"alt main()"函数。
    alt main()函数对CPU及外设初始化,其功能包括调用alt os int()函数初始化OS,默认情况下完成对μC/OS-II初始化,调用alt_sys_int()函数初始化系统设备及软件模块等,然后调用"main()"函数。
3.2 主函数main()
   
主函数"main()"负责进行网络监听,响应终端的TCP连接请求。若同时要求能与多个终端建立TCP连接和传输数据,需要为每个终端的网络数据处理都开辟一个新的线程,主函数的流程如图4所示。

    服务器为每个客户端都开一个线程专门与之进行socket通信。Socket数据处理线程主要包括三个方面工作:从套接字上接收数据包;解析并存储数据包;打包并发送数据包等。
3.3 远程测控实验
   
为验证设计方案,选用瑞士SENSIRION公司生产的传感器SHT75,测控温、湿度,该一体化数字式传感器将敏感元件、信号放大器、模数转换器、数字接口电路集成在同一芯片上,使用I2C IP核可以方便地和处理器连接。实验结果表明,该设计切实可行。

4 结束语
   
本设计基于SOPC和嵌入式系统技术,实现了远程测控的要求。此设计可应用于各种恶劣环境,稍加改进,也可适用于网络信息家电、家庭安全等方面。随着芯片技术和总线技术的发展,嵌入式远程网络化测控在工业中的应用定会更加广泛。

上一页  [1] [2] 

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:190,398.40000 毫秒