基于SOPC的以太网远程数据采集系统设计
件设计。 4 结束语
3 系统软件设计
软件设计主要是在NiosII IDE环境中,采用μC/OS-II嵌入式实时操作系统,使用LWIP作为网络协议栈。LWIP即Light WeightIP(轻量级IP),是瑞十计算机科学院的AdamDunkels等人开发的一套用于嵌入式系统的开放源码的轻型TCP/IP协议栈。LWIP的主要目的是减少存储器占用和代码尺寸,使其适合应用于小型、资源有限的嵌入式系统中。本设计使用标准的socket接口来实现TCP/IP操作。
软件主要由3个任务组成:数据采集任务、FIR滤波任务、网络传输任务。在程序中调用lwip_stack_init()函数和lwip_divice_init()函数分别完成协议栈和驱动程序的初始化,调用init_done_func()、get_mac_addr()和get_ip_addr()函数设置MAC和IP地址;然后由标准Sock et接口完成网络操作。NIOSII开发包中有很多LWIP的编程实例,修改部分代码即可使用。由μC/OS-Ⅱ的OSTaskCteate()函数创建数据采集任务DataAcquisition Task()和滤波任务FilterTask()。
数据采集任务负责从A/D输出数据通过PIO口采集到片上FIFO中,通过调用IORD_ALTERA_AVALON_PIO_DATA()函数在每个采样周期连续采样10次,将采集的数据放入FIFO中,唤醒滤波任务。滤波任务采样FIR滤波,利用Altera提供的DSP Builder在FPGA中建立一个FIR滤波器,对一个采样周期的数据进行滤波,然后将滤波后的数据放入发送队列。通过仿真FIR滤波器对高频信号有很好的滤除效果。网络传输任务从发送队列取数据发送到上位机。取数据发送到上位机。软件流程如图6所示。
随着计算机技术和互联网技术的深入发展,数据采集处理技术广泛应用于工业、通信、测试测量等领域,越来越多的设备需要网络接入功能,以实现设备的远程监控。本设计将嵌入式SOPC技术和成熟的以太网技术结合在一起组成远程数据采集系统,介绍了从底层硬件,到NiosⅡ应用软件的整个架构的设计。最后在开发板上实现并通过实验验证,结果满足设计要求,具有良好的性能。此数据采集系统可以根据
需要灵活配置,可以适应不同的应用场合。
- 基于SoPC的FIR滤波器设计与实现(07-18)
- 基于FPGA的语音录制与回放系统(09-18)
- 基于SOPC的智能电子血压计设计(06-19)
- 基于SoPC的FPGA在线测试方法 (10-09)
- 基于SOPC系统的虚拟示波器设计(01-12)
- 基于SOPC的人脸检测系统的设计(10-29)