虫虫首页| 资源下载| 资源专辑| 精品软件
登录| 注册

实践eetop.cn_Verilog HDL程序设计与实践(xilinx)

  • 基于ARM的LCD显示驱动的设计与实现

    在当前的数字信息技术和网络技术高速发展的后PC时代,嵌入式系统技术已经广泛地渗透到人们生活的各个方面。由于嵌入式系统的交互性比较强,液晶屏做为输出设备对汉字显示又尤为重要,但很多关于嵌入式系统开发、应用的教材中,对于液晶屏的程序设计也只是初始化和测试的编程,没有进一步的应用开发。所以选择了该毕业设计题目,以完善液晶屏的汉字显示功能。 在选定了毕业设计题目之后,随着开发研究的不断深入,主要完成了以下工作: 首先,对三种常用的嵌入式操作系统进行了分析比较,对项目开发是否选用操作系统提出了自己的见解,结合本次毕业设计的实际应用,选择了不使用操作系统而是利用Bootloader引导的方法。 其次,选定硬件开发系统后,把单片机的传统调试方法与ARM的边界扫描技术进行了分析比较,并在实际应用开发中采用了边界扫描技术。 再次,由于在C语言程序运行前需要加入一些必要的初始化代码,于是又完成了对44binit.s初始化程序的分析与设计。 最后,在编写汉字显示程序时,采用了读取字库法显示汉字方案和读取字模数据输出汉字方案分别实现了液晶屏的汉字显示,并取得了良好的效果。 本文不但说明了如何利用ARM处理器实现液晶屏的汉字显示,还讲述了开发ARM处理器应用程序的一个完整的过程。随着嵌入式技术的不断普及,对ARM处理器的学习、应用、开发都有一定的帮助作用。

    标签: ARM LCD 显示驱动

    上传时间: 2013-04-24

    上传用户:cuiqiang

  • c语言程序设计电子讲稿

    本课件可用来与作者编著的《C语言程序设计教程》(人民邮电出版社)配合使用,也可独立使用。 使用中,编译器最好使用VC++6.0。课件中,有关程序的调试内容大部分没有纳入课件之中,这是因为本课件是与VC++6.0集成开发环境配合使用的,教师在课堂上使用集成开发环境时,可随时给学生讲授开发环境调试工具的使用和C程序的调试技巧。如果采用TC2.0开发环境,本课件也能使用。 由于课件主要是讲授C程序设计,有关C语言语法的一些细节较少涉及,这主要是考虑到教师在授课时,可通过集成开发环境,使用一些小的程序来讲授语法。因此,教师在使用本课件授课时,务必要额外提供一些说明C语法的小程序。

    标签: c语言 程序设计 电子

    上传时间: 2013-06-24

    上传用户:s蓝莓汁

  • 基于ARM和嵌入式Linux的网络视频监控系统的设计与研究

    随着社会的发展,网络视频监控系统已经成为日常生产生活中的重要辅助设备,应用十分广泛。当前视频监控系统正逐步由模拟化走向数字化,随着视频压缩技术和网络技术的发展,开发新一代的基于计算机网络和多媒体MPEG-4压缩算法的视频监控系统已成为整个行业技术发展的主要方向之一。人们有时会采用DSP与MPEG-4算法结合的方案来实现,也有的部门采用了片上系统(SOC),但这些不但编程极度复杂,而且成本也过高。本文提出并研究设计了一种基于ARM微处理器S3C2410、MPEG-4专用压缩芯片MPG440、以嵌入式Linux为操作系统的视频监控系统方案,不仅开发便捷、成本低廉,而且实时性较好,适应范围广。 首先,采用软硬件协同设计的思想提出了系统的总体设计方案,系统的整体架构分为摄像头、云台控制器、网络视频服务器以及客户端PC机等四大部分。 第二,以三星公司的S3C2410芯片和DAVICOM公司的DM9000以太网接口芯片为硬件核心,对整个系统进行了模块化的硬件电路的设计。根据S3C2410的特点及系统整体需求,完成了电源复位模块、晶振模块、存储器接口模块、视频数据处理模块、以太网接口模块、云台控制模块等的硬件选型与电路连接。其中,在云台控制模块等的电路设计中充分体现了优化设计的技巧,并重点对网络接口部分和视频数据处理部分进行了详细的硬件设计与说明。阐述了整个系统的工作流程。 第三,从应用需求出发,选择嵌入式Linux操作系统作为本系统的软件平台,搭建了交叉式的开发环境,对bootloader进行了选择,并给出了加载步骤。完成了对嵌入式Linux内核的选择及移植。 第四,采用基于任务的设计方法对服务器端的软件进行了总体设计,主要包括共用程序库、config配置文件、日志文件以及多个任务等。并对运行于客户端的软件设计进行了简要说明。 第五,由于数字视频传输的实时性能和通过网络传输以后客户端接收的视频图像质量在本系统中至关重要,所以本文对传输信道和网络协议进行了优化选择,并详细阐述了IP组播技术、流媒体传输协议等在图像传输过程中的具体应用。

    标签: Linux ARM 嵌入式 网络视频

    上传时间: 2013-04-24

    上传用户:sc965382896

  • 手把手教你学AVR单片机C程序设计实验程序

    目录 第1章 概述 1.1 采用C语言提高编制单片机应用程序的效率 1.2 C语言具有突出的优点 1.3 AvR单片机简介 1.4 AvR单片机的C编译器简介 第2章 学习AVR单片机C程序设计所用的软件及实验器材介绍 2.1 IAR Enlbedded Workbench IDE C语言编译器 2.2 AVR Studio集成开发环境 2.3 PonyProg2000下载软件及SL—ISP下载软件 2.4 AVR DEM0单片机综合实验板 2.5 AvR单片机JTAG仿真器 2.6 并口下载器 2.7 通用型多功能USB编程器 第3章 AvR单片机开发软件的安装及第一个入门程序 3.1 安装IAR for AVR 4.30集成开发环境 3.2 安装AVR Studio集成开发环境 3.3 安装PonyProg2000下载软件 3.4 安装SLISP下载软件 3.5 AvR单片机开发过程 3.6 第一个AVR入门程序 第4章 AVR单片机的主要特性及基本结构 4.1 ATMEGA16(L)单片机的产品特性 4.2 ATMEGA16(L)单片机的基本组成及引脚配置 4.3 AvR单片机的CPU内核 4.4 AvR的存储器 4.5 系统时钟及时钟选项 4.6 电源管理及睡眠模式 4.7 系统控制和复位 4.8 中断 第5章 C语言基础知识 5.1 C语言的标识符与关键字 5.2 数据类型 5.3 AVR单片机的数据存储空间 5.4 常量、变量及存储方式 5.5 数组 5.6 C语言的运算 5.7 流程控制 5.8 函数 5.9 指针 5.10 结构体 5.11 共用体 5.12 中断函数 第6章 ATMEGA16(L)的I/O端口使用 6.1 ATMEGAl6(L)的I/O端口 6.2 ATMEGAl6(L)中4组通用数字I/O端口的应用设置 6.3 ATMEGA16(L)的I/O端口使用注意事项 6.4 ATMEGAl6(L)PB口输出实验 6.5 8位数码管测试 6.6 独立式按键开关的使用 6.7 发光二极管的移动控制(跑马灯实验) 6.8 0~99数字的加减控制 6.9 4×4行列式按键开关的使用 第7章 ATMEGAl6(L)的中断系统使用 7.1 ATMEGA16(L)的中断系统 7.2 相关的中断控制寄存器 7.3 INT1外部中断实验 7.4 INTO/INTl中断计数实验 7.5 INTO/INTl中断嵌套实验 7.6 2路防盗报警器实验 7.7 低功耗睡眠模式下的按键中断 7.8 4×4行列式按键的睡眠模式中断唤醒设计 第8章 ATMEGAl6(L)驱动16×2点阵字符液晶模块 8.1 16×2点阵字符液晶显示器概述 8.2 液晶显示器的突出优点 8.3 16×2字符型液晶显示模块(LCM)特性 8.4 16×2字符型液晶显示模块(LCM)引脚及功能 8.5 16×2字符型液晶显示模块(LCM)的内部结构 8.6 液晶显示控制驱动集成电路HD44780特点 8.7 HD44780工作原理 8.8 LCD控制器指令 8.9 LCM工作时序 8.10 8位数据传送的ATMEGAl6(L)驱动16×2点阵字符液晶模块的子函数 8.11 8位数据传送的16×2 LCM演示程序1 8.12 8位数据传送的16×2 LCM演示程序2 8.13 4位数据传送的ATMEGA16(L)驱动16×2点阵字符液晶模块的子函数 8.14 4位数据传送的16×2 LCM演示程序 第9章 ATMEGA16(L)的定时/计数器 9.1 预分频器和多路选择器 9.2 8位定时/计时器T/C0 9.3 8位定时/计数器0的寄存器 9.4 16位定时/计数器T/C1 9.5 16位定时/计数器1的寄存器 9.6 8位定时/计数器T/C2 9.7 8位T/C2的寄存器 9.8 ICC6.31A C语言编译器安装 9.9 定时/计数器1的计时实验 9.10 定时/计数器0的中断实验 9.11 4位显示秒表实验 9.12 比较匹配中断及定时溢出中断的测试实验 9.13 PWM测试实验 9.14 0~5 V数字电压调整器 9.15 定时器(计数器)0的计数实验 9.16 定时/计数器1的输入捕获实验 ......

    标签: AVR 手把手 单片机 C程序

    上传时间: 2013-07-30

    上传用户:yepeng139

  • 基于DSP和FPGA的自动指纹识别系统硬件设计与实现

    随着计算机与信息技术的发展,生物特征识别技术受到了广泛的关注。指纹识别是生物特征识别中的一项重要内容,一直以来是国内外的研究热点。 嵌入式自动指纹识别是指指纹识别技术在嵌入式系统上的应用。传统的嵌入式自动指纹识别系统多采用单片DSP或MIPS处理器来完成算法,由于DSP或MIPS处理器只能根据程序顺序执行,在指纹匹配过程中只能和整个库中的指纹进行一一匹配,因此这类系统在处理较大指纹库时下匹配时间相当长。为了克服这个缺点,本文构建了浮点DSP和FPGA协同处理构架的硬件平台,充分利用DSP在计算上的精确度和FPGA并行处理的特点,由DSP和FPGA共同处理匹配算法。 本文的主要工作如下: 1.设计了一个硬件系统,包括DSP处理器、FPGA、指纹传感器、人机交互接口和USB1.1接口。同时,还设计了各硬件模块的驱动程序,为应用程序提供控制接口。由于系统中DSP工作频率为300MHz,其中某些器件的工作频率达到了100MHz,因此本文还给出了一些信号完整性分析和PCB设计经验。 2.编写了Verilog程序,在FPGA中实现了9路指纹的并行匹配。由于FPGA本身的局限性,实现原有匹配算法有很大困难。在简化原有匹配算法的基础上本文提出了便于FPGA实现“粗匹配”算法。此外,还设计了用于和DSP通信的接口模块设计。 3.完成了系统应用程序设计。在使用uC/OS-Ⅱ实时操作系统的基础上设计了各系统任务,通过调用驱动程序控制和协调各硬件模块,实现了自动指纹识别功能。为了便于存放指纹特征信息,设计了指纹库数据结构,实现了指纹库添加、删除、编辑的功能。 最终,本系统实现了高效、快速的进行指纹识别,各模块工作稳定。同时,模块化的软硬件设计使本系统便于进行二次开发,快速应用于各种场合。

    标签: FPGA DSP 自动 指纹识别系统

    上传时间: 2013-06-05

    上传用户:guanliya

  • 基于ARM的嵌入式无线ZigBee网关的设计与实现

    ZigBee是近年来出现的一种新型无线通信技术,其具有近距离、低复杂度、低功耗、低数据速率、低成本的特点,在家用系统控制、楼宇自动化、工业监控领域具有广阔的市场空间。ZigBee的物理层和数据链路层由IEEE802.15.4工作组制定,高层(网络层、数据安全性及互边互通应用)由ZigBee联盟负责。 随着ZigBee技术在工业现场应用,越来越多的ZigBee设备终端将出现在工业现场,这就提出了将这些ZigBee设备与传统的以太网连接起来要求,为此需要设计一个无线的ZigBee网关来进行数据转发,因此对ZigBee网关的研究和设计具有重要的意义。 本系统选用基于ARM 920T内核的S3C2410作为ZigBee网关的主处理器,并且选用符合802.15.4标准的CC2420作为ZigBee网关的无线收发器。为了降低开发成本以及方便程序升级,网关选用开源嵌入式Linux操作系统,基于2.6.内核进行开发。本文主要对网关软件部分进行了深入研究。软件部分主要由2个程序组成:无线收发器的驱动程序和网关程序。其中网关程序主要包含Zigbee协议栈模块和网关通信模块。开发和测试主要语言采用标准C语言,驱动部分测试部分采用Bash脚本。 本文首先介绍了无线通信的背景知识和ZigBee协议栈,然后详细阐述了采用Linux来进行无线收发器驱动程序设计的关键点,同时对基于Linux的嵌入式ZigBee网关协议栈进行了移植,并且给出了ZigBee网关通信程序的设计方法以及程序的编译、调试和测试方法,实现了将ZigBee设备的数据及其状态转发给上位数据服务器的过程,最后还提出了作者对未来工作方向的一些改进思路和方法。

    标签: ZigBee ARM 嵌入式无线 网关

    上传时间: 2013-07-17

    上传用户:cuibaigao

  • 基于ARM核的USB2.0AHB接口IP主机端驱动程序的设计与实现

    本论文以开发基于ARM核的USB2.0-AHB接口IP此项目为依托,致力于在Windows XP操作系统上使用DDK(Driver Development Kit)设计和开发一个基于WDM的主机端驱动程序。开发该驱动程序的目的是为了对该IP进行FPGA测试以及配合设备端驱动程序的开发,该驱动程序能够完成即插即用功能,块传输,同步传输,控制传输以及对Flash的操作五项主要功能。 论文首先介绍了基于WDM的USB驱动程序设计原理,其中包括了从结构到通信流对USB主机系统的介绍,编写WDM驱动程序的基础理论(主要介绍了数个相关的重要概念、驱动程序的基本组成),以及在开发对Flash操作的例程会使用到的Mass Storage类协议的简要介绍。在介绍设计原理后,论文从总体的系统应用环境和结构蓟数据传输、内部模块以及软硬件体系结构几个方面简要描述了该IP的系统设计。接着论文通过分析主机端驱动程序功能需求,提出了驱动程序的总体构架以及分步式的设计流程,具体步骤是先实现驱动程序的正常加载以及基本PnP功能,然后实现块传输、同步传输以及控制传输,最后完成对Flash操作例程的设计。随后论文详细阐述了对上述五项主要功能模块的设计;其中对Flash操作例程的设计是难点,作者通过分析Bulk-Only协议和UFI命令规范,提出程序的详细设计方案。论文最后简要介绍了调试驱动程序的方法,以及驱动程序的测试内容、部分测试结果以及测试结论。 本论文研究对象为基于ARM核的USB2.0-AHB接口IP主机端驱动程序,因为其研究主体是一个基于WDM的主机端驱动程序,因此有其普遍性;但是它以开发基于ARM核的USB2.0-AHB接口IP这个项目为依托,其目的是为项目服务,因此它有其特殊性。它是一项既有普遍性又有特殊性的研究。

    标签: ARM 2.0 AHB USB

    上传时间: 2013-05-19

    上传用户:2007yqing

  • 计算机组成实验平台的设计与实现

    《计算机组成原理》是计算机系的一门核心课程。但是它涉及的知识面非常广,内容包括中央处理器、指令系统、存储系统、总线和输入输出系统等方面,学生在学习该课程时,普遍觉得内容抽象难于理解。但借助于该计算机组成原理实验系统,学生通过实验环节,可以进一步融会贯通学习内容,掌握计算机各模块的工作原理,相互关系的来龙去脉。 为了增强实验系统的功能,提高系统的灵活性,降低实验成本,我们采用FPGA芯片技术来彻底更新现有的计算器组成原理实验平台。该技术可根据用户要求为芯片加载由VHDL语言所编写出的不同的硬件逻辑,FPGA芯片具有重复编程能力,使得系统内硬件的功能可以像软件一样被编程,这种称为“软”硬件的全新系统设计概念,使实验系统具有极强的灵活性和适应性。它不仅使该系统性能的改进和扩充变得十分简易和方便,而且使学生自己设计不同的实验变为可能。计算机组成原理实验的最终目的是让学生能够设计CPU,但首先,学生必须知道CPU的各个功能部件是如何工作,以及相互之间是如何配合构成CPU的。因此,我们必须先设计出一个教学用的以FPGA芯片为核心的硬件平台,然后在此基础上开发出VHDL部件库及主要逻辑功能,并设计出一套实验。 本文重点研究了基于FPGA芯片的VHDL硬件系统,由于VHDL的高标准化和硬件描述能力,现代CPU的主要功能如计算,存储,I/O操作等均可由VHDL来实现。同时设计实验内容,包括时序电路的组成及控制原理实验、八位运算器的组成及复合运算实验、存储器实验、数据通路实验、浮点运算器实验、多流水线处理器实验等,这些实验形成一个相互关联的系统。每个实验先由教师讲解原理及原理图,学生根据教师提供的原理图,自己用MAX+PLUSII完成电路输入,学生实验实际上是编写VHDL,不需要写得很复杂,只要能调用接口,然后将程序烧入平台,这样既不会让学生花太多的时间在画电路图上,又能让学生更好的理解每个部件的工作原理和工作过程。 论文首先研究分析了FPGA硬件实验平台,即实验系统的硬件组成。系统采用FPGA-XC4010EPC84,62256CPLD以及其他外围芯片(例如74LS244,74LS275)组成。根据不同的实验要求,规划不同实验控制逻辑。用户可选择不同的实验逻辑,通过把实验逻辑下载到FPGA芯片中构成自己的实验平台。 其次,论文详细的阐述了VHDL模块化设计,如何运用VHDL技术来依次实现CPU的各个功能部件。VHDL语言作为一种国际标准化的硬件描述语言,自1987年获得IEEE批准以来,经过了1993年和2001年两次修改,至今已被众多的国际知名电子设计自动化(EDA)工具研发商所采用,并随同EDA设计工具一起广泛地进入了数字系统设计与研发领域,目前已成为电子业界普遍接受的一种硬件设计技术。再次,论文针对实验平台中遇到的较为棘手的多流水线等问题,也进行了深入的阐述和剖析。学生需要什么样的实验条件,实验内容及步骤才能了解当今CPU所采用的核心技术,才能掌握CPU的设计,运行原理。另外,本论文的背景是需要学生熟悉基本的VHDL知识或技能,因为实验是在编写VHDL代码的前提下完成的。 本文在基于实验室的环境下,基本上较为完整的实现了一个基于FPGA的实验平台方案。在此基础上,进行了部分功能的测试和部分性能方面的分析。本论文的研究,为FPGA在实际系统中的应用提供研究思路和参考方案。论文的研究结果将对FPGA与VHDL标准的进一步发展具有重要的理论和现实意义。

    标签: 计算机组成 实验

    上传时间: 2013-04-24

    上传用户:小强mmmm

  • 车牌识别系统的硬件设计与实现

    随着交通工具的迅猛发展,智能交通系统(Intelligent TransportationSystems,简称ITS)在交通管理中受到广泛的关注。而在ITS中,车牌识别(LicensePlate Recognition,简称LPR)是其核心技术。车牌识别系统主要由数据采集和车牌识别算法两个部分组成。由于车牌清晰程度、摄像机性能、气候条件等因素的影响,牌照中的字符可能出现不清楚、扭曲、缺损或污迹干扰,这都给识别造成一定难度。因此,在复杂背景中快速准确地进行车牌定位成为车牌识别系统的难点。 本文研究和设计了一种集图象采集,图象识别,图象传输等于一体的实时嵌入式系统。该平台包括硬件系统设计与应用程序开发两个方面,充分利用TI公司的C6000系列DSP强大的并行运算能力、以及FPGA的灵活时序逻辑控制技术,从硬件方面实现系统的高速运行。 本文的主要工作有两部分组成,具体如下: (1) 在硬件设计方面:实现由A/D、电源、FPGA、DSP以及SDRAM和FLASH所组成的车牌识别系统;设计并完成系统的原理图和印制板图;完成电路板调试,以及完成FPGA.在高速图像采集中的veriIog应用程序开发。 (2) 在软件开发方面:完成Philips公司的SAA7113H的配置代码开发,以及DSP底层的部分驱动程序开发。 该系统能够实现25帧每秒的数字视频流图像数据的输出,并由FPGA负责完成一幅720×572数据量的图像采集。DSP负责系统的嵌入式操作,包括系统的控制和车牌识别算法的实现。 目前,嵌入式车牌识别系统硬件平台已经搭建成功,系统软件代码程序也已经开发完成。本系统能够实现高速图像采集、嵌入式操作与车牌识别算法、UART数据通信等功能,具有速度快、稳定性高、体积小、功耗低等特点,为车牌识别算法提供一个较好的验证平台。

    标签: 车牌识别系统 硬件设计

    上传时间: 2013-07-30

    上传用户:gdgzhym

  • 高速实时数据采集系统的设计与实现

    数据采集处理技术是现代信号处理的基础,广泛应用于雷达、声纳、软件无线电、瞬态信号测试等领域。随着信息科学的飞速发展,人们面临的信号处理任务越来越繁重,对数据采集处理系统的要求也越来越高。近年来FPGA由于其设计灵活性、更强的适应性及可重构性,结合SDRAM的高速、大容量、价格优势,在设计高速实时数据采集系统时受到了广泛的关注。 本课题重点研究了基于FPGA与DDR2-SDRAM的高速实时数据采集系统的设计与实现技术,为需要大容量存储器的系统设计提供了新的思路。在深入研究了DDR2-SDRAM器件的基本构造与工作原理的基础上,结合成熟的商业化IP核,提出了基于FPGA与DDR2-SDRAM的高速实时数据采集系统的设计方案,并从总体设计构想到各逻辑细节实现都进行了详细描述。根据DDR2-SDRAM的特点,选择合适的内存调度方案,采用Verilog HDL语言设计实现了该高速实时数据采集系统,并对系统功能进行验证与分析,结果表明本设计完全能够满足系统的性能指标。

    标签: 高速实时数 采集系统

    上传时间: 2013-06-24

    上传用户:lansedeyuntkn