随笔分类 - DIY_DE2
摘要:一、摘要 基于TCP协议的网络摄像头的设计大部分和博文“基于UDP协议的网络摄像头的设计与实现”相同,本篇博文采用的TCP协议栈为NicheStack协议栈(同理,可使用LWIP协议栈实现),协议分析及上位机设计可参考博文“基于NicheStack协议栈的网络例程分析及客户端程序设计”。二、实验平台硬件平台:DIY_DE2软件平台:Quartus II 9.0 + Nios II 9.0 + Visual Studio 2010三、硬件部分 该部分可参考博文“基于UDP协议的网络摄像头的设计与实现”。四、底层软件设计及上位机程序 该篇博文介绍的重点是底层软件(NIOS II端)和上位机程...
阅读全文
摘要:一、摘要 在博文“DIY_DE2之DM9000A网卡调试系列例程(四)——基于NicheStack协议栈的TCP/IP实现”中提到,通过SOPC搭建NIOS II软核时候,需要一个Interval Timer核,以供uC/OS II系统所用。Interval Timer核有多种模式,当时随手选了一个 Simple periodic interrupt模式,数据传输倒也正常。只是,在完成基于UDP协议的视频传输的基础上,进行基于TCP协议的视频传输时(二者的硬件配置完全相同),网络传输不能工作,最后断定了Interval Timer核的问题,选择了Full-featured模式,网络正常工作。.
阅读全文
摘要:一、摘要 该篇博文主要对“基于UDP协议的网络摄像头的设计与实现”调试过程遇到的问题进行说明,并阐述其解决过程。二、实验平台硬件平台:DIY_DE2软件平台:Quartus II 9.0 + Nios II 9.0 + Visual Studio 2008三、实验内容 以VGA显示作为参照,综合调试,使C#端的视频显示正常。C#端的控件显示分辨率为320*240。1、初始图像图1 初始图片 上图是初步搭建完成的网络摄像头的显示效果,观察视频图像,其具有以下特点:(1)有一半的色彩未完全显示;(2)显示的部分呈斜体状,有锯齿;(3)显示的部分分辨率降低为160*120,同(1);(4)显...
阅读全文
摘要:一、摘要 该博文主要将视频采集、压缩技术、总线切换技术和UDP数据传输结合在一起,完成了基于UDP的网络摄像头的开发。以下阐述了具体开发过程,一些关键问题的调试过程见下篇博文。二、实验平台硬件平台:DIY_DE2软件平台:Quartus II 9.0 + Nios II 9.0 + Visual Studio 2008三、实验原理1、系统整体框图图1 系统整体框图2、系统的工作流程 首先,视频采集部分一直工作并进行VGA显示,当NIOS II端给出写视频数据命令后,切换总线为写视频方式,同时视频压缩部分开始工作,将视频数据压缩并写入到SRAM中,当写满一帧图像后,通知NIOS II读取视频数.
阅读全文
摘要:一、摘要 对DE2_TV例程做了分析,并阐明了相关概念。二、实验平台 硬件平台:DIY_DE2 软件平台:Quartus II 9.0三、一些概念及说明1、PAL和NTSC的区别 常见的电视信号制式是PAL和NTSC,另外还有SECAM等。NTSC即正交平衡调幅制,PAL为逐行倒像正交平衡调幅制。(1)PAL电视标准 PAL电视标准,每秒25帧,电视扫描线为625线,奇场在前,偶场在后,标准的数字化PAL电视标准分辨率为720*576, 24比特的色彩位深,画面的宽高比为4:3,PAL电视标准用于中国、欧洲等国家和地区。(2)NTSC电视标准 NTSC电视标准,每秒29.97帧(简...
阅读全文
摘要:一、摘要 DE2_TV中,有关于寄存器的配置的部分,采用的方法是通过IIC的功能,这里对IIC总线的FPGA实现做个说明。二、实验平台 软件平台:ModelSim-Altera 6.4a (Quartus II 9.0) 硬件平台:DIY_DE2三、实验原理1、IIC总线器件工作原理 在IIC总线上传送信息时的时钟同步信号是由挂接在SCL时钟线上的所有器件的逻辑“与”完成的。SCL线上由高电平到低电平的跳变将影响到这些器件,一旦某个器件的时钟信号变为低电平,将使SCL线上所有器件开始并保护低电平期。此时,低电平周期短的器件的时钟由低至高的跳变并不影响SCL线的状态,这些器件将进入高电平...
阅读全文
摘要:一、摘要分析基于NicheStack协议栈的网络例程,重点分析了simple_socket_server.c文件,阐述网络通信的过程,最后,完成了基于C#的上位机网络通信应用程序。二、实验平台软件平台:QuartusII9.0+NiosII9.0、VisualStudio2010硬件平台:DIY_DE2三、基于NicheStack协议栈的网络例程分析首先,明确两个概念:服务器端:FPGA端,客户端:PC端。1、工程文件解读本例程需要的工程文件有以下几种,下面对其意义及作用做了说明:(1)alt_error_handler.h、alt_error_handler.c:错误类型句柄文件;(2)dm
阅读全文
摘要:一、摘要在DIY_DE2开发板上移植uClinux。二、实验平台1、虚拟机:VMWare2、Linux系统:ubuntu10.043、Quartus II 6.0 + Nios II 6.0三、软件准备1、下载nios2gcc-20080203http://www.niosftp.com/pub/gnutools/nios2gcc-20080203.tar.bz2或者ftp://ftp.altera.com/outgoing/nios2gcc-20080203.tar.bz2或者http://sopc.et.ntust.edu.tw/pub/gnutools/nios2gcc-20080203
阅读全文
摘要:一、摘要 Altera软件NIOS II高版本(7.2版本以上,本例程中使用的是9.0版本)中实现TCP/IP所用的协议栈为NicheStack,常用的例程有2个,web_server和simple_socket_server,这篇文章只叙述simple_socket_server例程实现的过程。这里DM9000A的驱动和上篇博文中基于LWIP的驱动不同。二、实验平台软件平台:Quartus II 9.0 + Nios II 9.0硬件平台:DIY_DE2三、实验内容——>实现simple_socket_server1、采用SOPC定制软核定制软核的详细步骤不再赘述,以上为定制的软核。c
阅读全文
摘要:一、摘要 Altera软件NIOS II低版本(7.2版本以下,本例程中使用的是6.0版本)中实现TCP/IP所用的协议栈为LWIP,常用的例程有2个,web_server和simple_socket_server,这篇文章将叙述这2个例程实现的过程。这两个例程参考了友晶科技的DE2_WEB例程。二、实验平台软件平台:Quartus II 6.0 + Nios II 6.0硬件平台:DIY_DE2三、实验内容1——>实现web_server1、采用SOPC定制软核定制软核的详细步骤不再赘述,以上为定制的软核。cpu_0需要设置的地方:Reset Vector:cfi_flash_0、Ex
阅读全文
摘要:一、摘要 通过在SOPC中定制软核,在Quartus II中建立硬件工程,然后在NIOS II中建立3个工程,分别实现DM9000A测试、DM9000A自收发和基于DM9000A的UDP协议的例子。3个例子所使用的DM9000A的驱动是一样的。二、实验平台软件平台:Quartus II 9.0 + Nios II 9.0硬件平台:DIY_DE2三、实验内容1——>DM9000A测试 通过对DM9000A的初始化,测试DM9000A是否能够正常的初始化,能否正常的运行。该内容不需要使用网线。以下为实现步骤。1、采用SOPC定制软核定制软核的详细步骤不再赘述,以上为定制的软核。cpu_0需要
阅读全文
摘要:一、摘要 根据最近一段时间的工作,将DIY_DE2中的网卡DM9000A所涉及到的例程做了调试,接下来几篇博文将循序渐进的阐述这些例程的实现过程,涉及到的具体原理及理论将会另开博文叙述。本篇主要阐述一下调试例程前的准备工作。二、准备工作1、网线 经常接触的网线叫双绞线,双绞线有2种,直通线和交叉线,通常又把后者叫做双机互联线。前者用于连接计算机与交换机、HUB等,后者用于连接计算机与计算机,交换机与交换机等。 上图即是交叉线的制作方法,有时别人给制作并不是严格按照上图的对应颜色,但只要RJ-45水晶头满足1和3对调,2和6对调即可。 后续的几篇例程除了用到这种交叉线外,DM9000A自...
阅读全文
摘要:DIY_DE2中使用了1片8MB的并行FLASH存储器,FLASH的操作方式可分为硬体调试和软体调试。调试环境:Quartus II 9.0 +NIOS II 9.01、硬体调试 根据FLASH的datasheet按操作方式分别进行操作,如擦除操作:module flash_erase(CLOCK_50,FLASH_D,FLASH_A,FLASH_WE,FLASH_CE,FLASH_OE,FLASH_RST,LED);input CLOCK_50;//output [7:0] oDATA;inout [7:0] FLASH_D;output [21:0] FLASH_A;output F...
阅读全文
摘要:DIY_DE2中使用了2片64Mbit的SDRAM存储器,SDRAM的读写相对复杂,对其的操作可分为硬体调试和软体调试。调试环境:Quartus II 9.0 +NIOS II 9.01、硬体调试 这部分采用的是网络上的4端口和2端口的SDRAM测试例程,但是有一个问题无法解释,就是去掉地址操作的那行语句之后,程序还是好使的,读取的数依然正确,不知道问题何在???待续……2、软体调试 这部分同SRAM调试方法,借助NIOS II软核的办法来测试SDRAM,有两种方法: 一、将软核下载到SDRAM里面,如果能下载进去且程序运行正常,则SDRAM正常; 二、将软核下载到其他存储器中,对...
阅读全文
摘要:DIY_DE2中使用了2片256KX16bit的SRAM存储器,SRAM的读写相对简单,对其的操作可分为硬体调试和软体调试。调试环境:Quartus II 9.0 +NIOS II 9.01、硬体调试 这也就是用Verilog HDL语言对SRAM读写,最简单的办法就是分别建立写SRAM工程和读SRAM工程。先对SRAM进行写操作,在不断电的情况下,在对SRAM进行读操作,最后采用SignalTap II观察数据线上的值。这种方法程序较简单,但操作稍微复杂了一点。 写程序:moduleSRAM_HR(//Host DataCLOCK_50,LED,//SRAMSRAM1_D,SRAM1...
阅读全文
摘要:DIY_DE2核心板设计的2个小瑕疵。1、电源部分 采用LM2676芯片产生3.3V电平,原理图中少连了一根线,如图中所示。 图中红色线条即是少连接的一个线,不过在PCB中DIO1和DIO2两个二极管是并列放置的且距离很近,因此,将其输出端用锡焊接在一起即可。2、标注部分 核心板引出了2个25X2、1个20X2的排针,这些排针大部分是IO管脚,有少量的电源引线,和几个空管脚。其中一组电源管脚标注反了,如下图所示。使用时候需要注意即可。 如上图,B组排针一组电源标注相反。 PS:DIY_DE2的核心板和底板原理图已上传。
阅读全文
摘要:Altera官方有一个DE2开发板,该开发板的资源很丰富,外设也很齐全,采用的是十层电路板设计,价格自然很高了。本人仿照其原理图自制了一块,叫做DIY_DE2开发板。开发板采用核心板和底板的模式,方便使用,可以用在后续的项目中。核心板采用6层PCB,底板则是2层PCB。板子造型如下图。 板子资源:1、系统资源 EP2C35F484C8 2片64Mbit SDRAM 2片256KX16bit SRAM 1片8MB FLASH 1片16Mbit 串行FLASH EPCS162、外设资源 4个绿色LED,4个蓝色LED 4个按键 S-Video 视频采集 30bit VGA显...
阅读全文
摘要:这里将DIY_DE2核心板的PCB制作步骤以及BGA封装的走线写下来。使用工具为DXP2004SP2。1、原理图设计采用由下至上的设计步骤。图示步骤如下: 图1建立工程 图2建立原理图(子图1,依次建立子图2、子图3……) 图3绘制子图1、子图2、子图3…… 图4建立母图图5在母图下执行[Design]/[CreatSheetSymbolFromSheet]菜单命令 图6选择刚才绘制完成的子图确定 图7生成原理框图 依次完成其他子图的设计,并生成原理框图,至此,原理图绘制完成。 一般情况下,原理图,尤其是子原理图,其绘制需要经过反复修改,因此,每修改一次都需要在母图中重新生成原理框图。...
阅读全文

浙公网安备 33010602011771号