单片微型计算机(单片机)是将微处理器CPU、程序存储器、数据存储器、定时/计数器、输入/输出并行接口等集成在一起。由于单片机具有专门为嵌入式系统设计的体系结构与指令系统,所以它最能满足嵌入式系统的应用要求。Intel公司生产的MCS-51系列单片机是我国目前应用最广的单片机之一。 随着可编程逻辑器件设计技术的发展,每个逻辑器件中门电路的数量越来越多,一个逻辑器件就可以完成本来要由很多分立逻辑器件和存储芯片完成的功能。这样做减少了系统的功耗和成本,提高了性能和可靠性。FPGA就是目前最受欢迎的可编程逻辑器件之一。IP核是将一些在数字电路中常用但比较复杂的功能块,设计成可修改参数的模块,让其他用户可以直接调用这些模块,这样就大大减轻了工程师的负担,避免重复劳动。随着FPGA的规模越来越大,设计越来越复杂,使用IP核是一个发展趋势。 本课题结合FPGA与8051单片机的优点,主要针对以下三个方面研究: (1)FPGA开发平台的硬件实现选用Xilinx公司的XC3S500E-PQ208-4-C作为核心器件,采用Intel公司的EEPROM芯片2816A和SRAM芯片6116作为片内程序存储器,搭建FPGA的硬件开发平台。 (2)用VHDL语言实现8051IP核分析研究8051系列单片机内部各模块结构以及各部分的连接关系,实现了基于FPGA的8051IP核。主要包括如下几个模块:CPU模块、片内数据存储器模块、定时/计数器模块、并行端口模块、串行端口模块、中断处理模块、同步复位模块等。 (3)基于FPGA的8051IP核应用用所设计的8051IP核,实现了对一个4×4键盘的监测扫描、键盘确认、按键识别等应用。
上传时间: 2013-04-24
上传用户:1417818867
通过驻极体话筒对音乐声量进行采集后,把采集的信号进行放大整流滤波,并通过555构成的压控振荡器把音乐的声量信号转化成变化的振荡频率,即通过声量的大小来产生相应频率的振荡信号,再经过二进制计数器对该振荡输出的脉冲进行计数输出四种不同的状态,通过二-四译码器对计数器输出状态进行译码产生相应的选通信号控制灯流接口电路 ,接口电路驱动一列信号指示灯,实现灯流速度随音乐声量大小而相应变化的效果。
上传时间: 2013-04-24
上传用户:362279997
该课题通过对开放式数控技术的全面调研和对运动控制技术的深入研究,并针对国内运动控制技术的研究起步较晚的现状,结合激光雕刻领域的具体需要,紧跟当前运动控制技术研究的发展趋势,吸收了世界开放式数控技术和相关运动控制技术的最新成果,采纳了基于DSP和FPGA的方案,研制了一款比较新颖的、功能强大的、具有很大柔性的四轴多功能运动控制卡.该论文主要内容如下:首先,通过对制造业、开放式数控系统、运动控制卡等行业现状的全面调研,基于对运动系统控制技术的深入学习,在比较了几种常用的运动控制方案的基础上,确定了基于DSP和FPGA的运动控制设计方案,并规划了板卡的总体结构.其次,针对运动控制中的一些具体问题,如高速、高精度、运动平稳性、实时控制以及多轴联动等,在FPGA上设计了功能相互独立的四轴运动控制电路,仔细规划并定义了各个寄存器的具体功能,设计了功能完善的加/减速控制电路、变频分配电路、倍频分频电路和三个功能各异的计数器电路等,完全实现了S-曲线升降速运动、自动降速点运动、A/B相编码器倍频计数电路等特殊功能.再次,介绍了DSP在运动控制中的作用,合理规划了DSP指令的形成过程,并对DSP软件的具体实现进行了框架性的设计.然后,根据光电隔离原理设计了数字输入/输出电路;结合DAC原理设计了四路模拟输出电路;实现了PCI接口电路的设计;并针对常见的干扰现象,提出了有效的抗干扰措施.最后,利用运动控制卡强大的运动控制功能,并针对激光雕刻行业进行大幅图形扫描时需要实时处理大量的图形数据的特别需要,在板卡第四轴完全实现了激光控制功能,并基于FPGA内部的16KBit块RAM,开辟了大量数据区以便进行大幅图形的实时处理.
上传时间: 2013-06-09
上传用户:youlongjian0
低密度校验码(LDPC,Low Density Parity Check Code)是一种性能接近香农极限的信道编码,已被广泛地采用到各种无线通信领域标准中,包括我国的数字电视地面传输标准、欧洲第二代卫星数字视频广播标准(DVB-S2,Digital Video Broadcasting-Satellite 2)、IEEE 802.11n、IEEE 802.16e等。它是3G乃至将来4G通信系统中的核心技术之一。 当今LDPC码构造的主流方向有两个,分别是结合准循环(QC,Quasi Cyclic)移位结构的单次扩展构造和类似重复累积(RA,Repeat Accumulate)码构造。相应地,主要的LDPC码编码算法有基于生成矩阵的算法和基于迭代译码的算法。基于生成矩阵的编码算法吞吐量高,但是需要较多的寄存器和ROM资源;基于迭代译码的编码算法实现简单,但是吞吐量不高,且不容易构造高性能的好码。 本文在研究了上述几种码构造和编码算法之后,结合编译码器综合实现的复杂度考虑,提出了一种切实可行的基于二次扩展(Dex,Duplex Expansion)的QC-LDPC码构造方法,以实现高吞吐量的LDPC码收发端;并且充分利用该类码校验矩阵准循环移位结构的特点,结合RU算法,提出了一种新编码器的设计方案。 基于二次扩展的QC-LDPC码构造方法,是通过对母矩阵先后进行乱序扩展(Pex,Permutation Expansion)和循环移位扩展(CSEx,Cyclic Shift Expansion)实现的。在此基础上,为了实现可变码长、可变码率,一般编译码器需同时支持多个乱序扩展和循环移位扩展的扩展因子。本文所述二次扩展构造方法的特点在于,固定循环移位扩展的扩展因子大小不变,支持多个乱序扩展的扩展因子,使得译码器结构得以精简;构造得到的码字具有近似规则码的结构,便于硬件实现;(伪)随机生成的循环移位系数能够提高码字的误码性能,是对硬件实现和误码性能的一种折中。 新编码器在很大程度上考虑了资源的复用,使得实现复杂度近似与码长成正比。考虑到吞吐量的要求,新编码器结构完全抛弃了RU算法中串行的前向替换(FS,Forward Substitution)模块,同时简化了流水线结构,由原先RU算法的6级降低为4级;为了缩短编码延时,设计时安排每一级流水线计算所需的时钟数大致相同。 这种码字构造和编码联合设计方案具有以下优势:相比RU算法,新方案对可变码长、可变码率的支持更灵活,吞吐量也更大;相比基于生成矩阵的编码算法,新方案节省了50%以上的寄存器和ROM资源,单位资源下的吞吐量更大;相比类似重复累积码结构的基于迭代译码的编码算法,新方案使高性能LDPC码的构造更为方便。以上结果都在Xilinx Virtex II pro 70 FPGA上得到验证。 通过在实验板上实测表明,上述基于二次扩展的QC-LDPC码构造和相应的编码方案能够实现高吞吐量LDPC码收发端,在实际应用中具有很高的价值。 目前,LDPC码正向着非规则、自适应、信源信道及调制联合编码方向发展。跨层联合编码的构造方法,及其对应的编码算法,也必将成为信道编码理论未来的研究重点。
上传时间: 2013-07-26
上传用户:qoovoop
LAMOST(Large Sky Area Multi-Obiect Fiber Spectroscopy Telescope,大天区面积多目标光纤光谱天文望远镜)需要对焦而上的4 000个光纤定位单元进行精确定位,一个光纤定位单元需要两个步进电机来驱动,即需要对8 000个电机进行驱动控制。如何对这8 000个电机进行有效的控制,是本文主要的研究内容。 本义引入EDA(Electronic Design Automation),技术,以FPGA和CAN总线为硬件载体来进行设计。FPGA相比较于DSP,单片机而言,具有10管脚多,资源丰富,使用灵活等优点,可以存片内集成多个电机的摔制,这样对于提高系统的集成度,节约成本无疑有着很大的帮助。 在电机的控制当中,其失步和过冲会直接影响到系统的精度,所以需要对电机脉冲频率加以控制,对于在平稳状态下能正常工作的电机,失步往往发生在启动停止等脉冲频率突然发生改变的时刻。具体实现方法是通过实验找出一条理想的加减速曲线,再将曲线离散化,并把离散化后的加减速分频系数存储在FPGA片内ROM里而,当电机运行到对应的步数时,取出分频系数来获取对应的运行频率。 在LAMOST观测中,光纤定位单元的零位是个很重要的基准,在每次观测之前,电机都要回零,理论上电气零位和机械零位在同一点上,如果电气检测到达零位则认为已经到达机械零位位置。但是实际中由于装配等一些原因,可能会出现零位短路和零位断路的情况。零位断路是指电机处于机械零位,但是电气不能检测到;零位短路是指电机不在机械零位,但是电气已经检测到处于零位。这两种情况会造成越界和机械零位一直被挤压的后果,有可能会损坏光纤定位单元,为了防止这些情况出现,软件程序中加入了计数器,从而从有效地保护了光纤定位单元,同时将这些状况向上反馈,以便维护和检修。 在本文完成之时,能够控制驱动336个光纤定位单元的小系统已经在北京天文台兴隆观测站实际投入运行,并于2007年5月28日获得首条光谱,取得了不错的效果。
上传时间: 2013-04-24
上传用户:afeiafei309
8051处理器自诞生起近30年来,一直都是嵌入式应用的主流处理器,不同规模的805l处理器涵盖了从低成本到高性能、从低密度到高密度的产品。该处理器极具灵活性,可让开发者自行定义部分指令,量身订制所需的功能模块和外设接口,而且有标准版和经济版等多种版本可供选择,可让设计人员各取所需,实现更高性价比的结构。如此多的优越性使得8051处理器牢固地占据着庞大的应用市场,因此研究和发展8051及与其兼容的接口具有极大的应用前景。在众多8051的外设接口中,I2C总线接口扮演着重要的角色。通用的12C接口器件,如带12C总线的RAM,ROM,AD/DA,LCD驱动器等,越来越多地应用于计算机及自动控制系统中。因此,本论文的根本目的就是针对如何在8051内核上扩展I2C外设接口进行较深入的研究。 本课题项目采用可编程技术来开发805l核以及12C接口。由于8051内核指令集相容,我们能借助在现有架构方面的经验,发挥现有的大量代码和工具的优势,较快地完成设计。在8051核模块里,我们主要实现中央处理器、程序存储器、数据存储器、定时/计数器、并行接口、串行接口和中断系统等七大单元及数据总线、地址总线和控制总线等三大总线,这些都是标准8051核所具有的模块。在其之上我们再嵌入12C的串行通信模块,采用自下而上的方法,逐次实现一位的收发、一个字节的收发、一个命令的收发,直至实现I2C的整个通信协议。 8051核及I2C总线的研究通过可编程逻辑器件和一块外围I2C从设备TMPl01来验证。本课题的最终目的是可编程逻辑器件实现的8051核成功并高效地控制扩展的12C接口与从设备TMPl01通信。 用EP2C35F672C6芯片开发的12C接口,数据的传输速率由该芯片嵌入8051微处理的时钟频率决定。经测试其传输速率可达普通速率和快速速率。 目前集成了该12C接口的8051核已经在工作中投入使用,主要用于POS设备的用户数据加密及对设备温度的实时控制。虽然该设备尚未大批量投产,但它已成功通过PCI(PaymentCardIndustry)协会认证。
上传时间: 2013-06-18
上传用户:731140412
数据采集系统是信号与信息处理系统中不可缺少的重要组成部分,同时也是软件无线电系统中的核心模块,在现代雷达系统以及无线基站系统中的应用越来越广泛。为了能够满足目前对软件无线电接收机自适应性及灵活性的要求,并充分体现在高性能FPGA平台上设计SOC系统的思路,本文提出了由高速高精度A/D转换芯片、高性能FPGA、PCI总线接口、DB25并行接口组成的高速数据采集系统设计方案及实现方法。其中FPGA作为本系统的控制核心和传输桥梁,发挥了极其重要的作用。通过FPGA不仅完成了系统中全部数字电路部分的设计,并且使系统具有了较高的可适应性、可扩展性和可调试性。 在时序数字逻辑设计上,充分利用FPGA中丰富的时序资源,如锁相环PLL、触发器,缓冲器FIFO、计数器等,能够方便的完成对系统输入输出时钟的精确控制以及根据系统需要对各处时序延时进行修正。 在存储器设计上,采用FPGA片内存储器。可根据系统需要随时进行设置,并且能够方便的完成数据格式的合并、拆分以及数据传输率的调整。 在传输接口设计上,采用并行接口和PCI总线接口的两种数据传输模式。通过FPGA中的宏功能模块和IP资源实现了对这两种接口的逻辑控制,可使系统方便的在两种传输模式下进行切换。 在系统工作过程控制上,通过VB程序编写了应用于PC端的上层控制软件。并通过并行接口实现了PC和FPGA之间的交互,从而能够方便的在PC机上完成对系统工作过程的控制和工作模式的选择。 在系统调试方面,充分利用QuartuslI软件中自带的嵌入式逻辑分析仪SignalTaplI,实时准确的验证了在系统整个传输过程中数据的正确性和时序性,并极大的降低了用常规仪器观测FPGA中众多待测引脚的难度。 本文第四章针对FPGA中各功能模块的逻辑设计进行了详细分析,并对每个模块都给出了精确的仿真结果。同时,文中还在其它章节详细介绍了系统的硬件电路设计、并行接口设计、PCI接口设计、PC端控制软件设计以及用于调试过程中的SignalTapⅡ嵌入式逻辑分析仪的使用方法,并且也对系统的仿真结果和测试结果给出了分析及讨论。最后还附上了系统的PCB版图、FPGA逻辑设计图、实物图及注释详细的相关源程序清单。
上传时间: 2013-06-09
上传用户:lh25584
DS2438智能电池监视器为电池组提供了若干很有价值的功能:可用于标识电池组的唯一序列号;直接数字化的温度传感器省掉了电池组内的热敏电阻;可测量电池电压和电流的A/D转换器;集成电流累积器用于记录进入和流出电池的电流总量;一个经历时间纪录器;以及40字节的非易失EEPROM存储器,可用于存储重要的电池参数例如化学类型、电池容量、充电方式和组装日期等。
上传时间: 2013-08-03
上传用户:wangrijun
第一章 概述 1.1 AVR 单片机GCC 开发概述 1.2 一个简单的例子 1.3 用MAKEFILE 管理项目 1.4 开发环境的配置 1.5 实验板CA-M8 第二章 存储器操作编程 2.1 AVR 单片机存储器组织结构 2.2 I/O 寄存器操作 2.3 SRAM 内变量的使用 2.4 在程序中访问FLASH 程序存储器 2.5 EEPROM 数据存储器操作 2.6 avr-gcc 段结构与再定位 2.7 外部RAM 存储器操作 2.8 堆应用 第三章 GCC C 编译器的使用 3.1 编译基础 3.2 生成静态连接库 第四章 AVR 功能模块应用实验 4.1 中断服务程序 4.2 定时器/计数器应用 4.3 看门狗应用 4.4 UART 应用 4.5 PWM 功能编程 4.6 模拟比较器 4.7 A/D 转换模块编程 4.8 数码管显示程序设计 4.9 键盘程序设计 4.10 蜂鸣器控制 第五章 使用C 语言标准I/O 流调试程序 5.1 avr-libc 标准I/O 流描述 5.2 利用标准I/0 流调试程序 5.3 最小化的格式化的打印函数 第六章 CA-M8 上实现AT89S52 编程器的实现 6.1 编程原理 6.2 LuckyProg2004 概述 6.3 AT989S52 isp 功能简介 6.4 下位机程序设计 第七章 硬件TWI 端口编程 7.1 TWI 模块概述 7.2 主控模式操作实时时钟DS1307 7.3 两个Mega8 间的TWI 通信 第八章 BootLoader 功能应用 8.1 BootLoader 功能介绍 8.2 avr-libc 对BootLoader 的支持 8.3 BootLoader 应用实例 8.4 基于LuckyProg2004 的BootLoader 程序 第九章 汇编语言支持 9.1 C 代码中内联汇编程序 9.2 独立的汇编语言支持 9.3 C 与汇编混合编程 第十章 C++语言支持
上传时间: 2013-08-01
上传用户:飞翔的胸毛
【经典设计】VHDL源代码下载~~ 其中经典的设计有:【自动售货机】、【电子钟】、【红绿灯交通信号系统】、【步进电机定位控制系统】、【直流电机速度控制系统】、【计算器】、【点阵列LED显示控制系统】 基本数字逻辑设计有:【锁存器】、【多路选择器】、【三态门】、【双向输入|输出端口】、【内部(缓冲)信号】、【编码转换】、【加法器】、【编码器/译码器】、【4位乘法器】、【只读存储器】、【RSFF触发器】、【DFF触发器】、【JKFF触发器】、【计数器】、【分频器】、【寄存器】、【状态机】
上传时间: 2013-05-27
上传用户:shijiang