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

编码方式

  • RS编译码器的设计与FPGA实现

    Reed-Solomon码(简称RS码)是一种具有很强纠正突发和随机错误能力的信道编码方式,在深空通信、移动通信、磁盘阵列以及数字视频广播(DVB)等系统中具有广泛的应用。 本文简要介绍了有限域基本运算的算法和常用的RS编码算法,分析了改进后的Euclid算法和改进后的BM算法,针对改进后的BM算法提出了一种流水线结构的译码器实现方案并改进了该算法的实现结构,在译码器复杂度和译码延时上作了折衷,降低了译码器的复杂度并提高了译码器的最高工作频率。在Xilinx公司的Virtex-Ⅱ系列FPGA上设计实现了RS(255,239)编译码器,证明了该方案的可行性。

    标签: FPGA RS编译码

    上传时间: 2013-06-11

    上传用户:奇奇奔奔

  • 维特比译码的FPGA实现

    卷积编码是深空通信系统和无线通信系统中常用的一种编码方式。Viterbi码算法是卷积码的一种最大似然译码算法,它按照最大似然译码准则,在网格图上找出一条最大似然路径来得到译码结果。本设计的主要内容是3比特软判决Viterbi译码器的FPGA实现,设计是采用硬件VHDL语言来完成,并在ModelSim和Quartus Ⅱ软件环境下进行编译和仿真。在论文中介绍了Viterbi译码器的各模块的各种算法,并着重介绍了本设计所采用的具体方法,通过仿真和测试,验证了设计的正确性。最后,介绍了Viterbi译码器在未来通信中的发展和应用。

    标签: FPGA 译码

    上传时间: 2013-07-02

    上传用户:坏天使kk

  • 基于ARMLinuz的视频监控系统设计与实现

    视频监控系统是一个集计算机的交互性、多媒体信息的综合性、通信的分布性和监控的实时性等技术于一体的综合系统。随着网络带宽,计算机处理能力和存储容量的快速提高,以及各种实用视频处理技术的出现,视频监控进入了全数字化的网络时代。视频监控系统的核心功能主要包括两大部分,一是视频图像采集和压缩处理,一是图像数据的传输。系统的主要硬件模块分为监控终端和监控控制终端两个部分。 本文设计并实现了一种基于ARM和嵌入式Linux的视频监控系统,该系统主要实现了视频图像的采集压缩和图像数据流基于RTP协议的传输。本系统的核心硬件平台采用韩国SamSung公司的S3C2410微处理器,ARM端作为视频监控终端,PC机作为监控控制终端。ARM端主要承载了图像采集、编码和对图像数据进行RTP打包并传输的功能,PC端主要承载的功能是图像数据的接收、显示和对监控终端的控制、访问。 在视频图像采集和压缩处理部分,利用Video for Linux提供的接口函数,实现了利用摄像头采集图像的过程,并设计实现了V4L视频采集及压缩模块,设计了系统JEPG图像采集和压缩模块和MPEG-4图像采集和压缩模块的具体编程流程和实现过程,并实现了基于这两种编码方式的视频压缩。用Visual C++实现了用户控制终端,可对应JPEG和MPEG-4两种编码方式进行解码并显示。 在图像数据的传输部分,系统采用了RTP协议作为视频数据流传输协议,并实现了视频数据在局域网内的实时性传输。移植了现在比较常用的JRTPLIB源码库,为RTP的实现提供了可调用的库函数,按照MPEG-4数据流的RTP封装格式和流程,设计实现了RTP编程。 最后对系统的功能和性能进行了测试。测试结果显示MPEG-4在保证与JPEG相当的图像质量时,大大减少了传输的数据量。同时,使用RTP协议进行传输,保证了系统的实时性,也保证了图像的传输质量。

    标签: ARMLinuz 视频监控 系统设计

    上传时间: 2013-07-12

    上传用户:wzr0701

  • 基于H.264的无线传输差错控制及解码器的ARM实现

    信息化社会的到来以及IP技术的兴起,正深刻的改变着电信网络的面貌以及未来技术发展的走向。无线通信技术的发展为实现数字化社区提供了有力的保证。而视频通信则成为多媒体业务的核心。如何在环境恶劣的无线环境中,实时传输高质量的视频面临着巨大的挑战,因此这也成为人们的研究热点。 对于无线移动信道来说,网络的可用带宽是有限的。由于多径、衰落、时延扩展、噪声影响和信道干扰等原因,无线移动通信不仅具有带宽波动的特点,而且信道误码率高,经常会出现连续的、突发性的传输错误。无线信道可用带宽与传输速率的时变特性,使得传输的可靠性大为降低。 视频播放具有严格的实时性要求,这就要求网络为视频的传输提供足够的带宽.有保障的延时和误码率。为了获得可接受的重建视频质量,视频传输至少需要28Kbps左右的带宽。而且视频传输对时延非常敏感。然而无线移动网络却无法提供可靠的服务质量。 基于无线视频通信面临的挑战,本文在对新一代视频编码国际标准H.264/AVC研究的基础上,主要在提高其编码效率和H.264的无线传输抗误码性能,以及如何在嵌入式环境下实现H.264解码器进行了研究。 结合低码率和帧内刷新,提出一种针对感兴趣区的可变帧内刷新方法。实验表明该方法可以使用较少的码率对感兴趣区域进行更好的错误控制,以提高区域图像质量,同时能根据感兴趣区及信道的状况自动调整宏块刷新数量,充分利用有限的码率。 为了有效的平衡编码效率和抗误码能力的之间的矛盾,笔者提出了一种自适应FMO(Flexible Macroblock Order)编码方法,可根据图像的复杂度自适应地选择编码所需的FMO模式。仿真结果表明这种FMO编码方式完全可行,且在运动复杂度频繁变化时效果更加明显,完全可应用在环境恶劣的无线信道中。 在对嵌入式PXA270硬件结构和X264研究的基础上,基本实现了基于H.264的嵌入式解码,在PXA270基础上进行环境的配置,定制WirtCE操作系统,并编译、产生开发所用的SDK和下载内核到目标机。利用开发工具EVC实现在PC机上的实时开发和在线仿真调试,最终实现了对无差错H.264码流实时解码。

    标签: 264 ARM 无线传输 差错控制

    上传时间: 2013-06-18

    上传用户:也一样请求

  • JPEG2000中小波变换的研究与FPGA实现

    JPEG2000是新一代图像压缩标准,JPEG2000与传统JPEG最大的不同,在于它放弃了JPEG所采用的以离散余弦变换(Discrete Cosine Transform)为主的区块编码方式,而采用以小波转换(Wavelet Transform)为主的多解析编码方式.离散小波变换算法是现代谱分析工具,在图像处理与图像分析领域正得到越来越广泛的应用.由于JPEG2000标准具有复杂的算法,全部用软件来实现将会占用很大的处理器时间开销和内存开销,尤其对于实时图像传输和处理系统,因而用硬件电路来实现JPEG2000标准的部分或全部,就具有重要的意义,本课题的目的就是用硬件电路来实现JPEG2000标准中的离散小波变换部分,论文研究的主要工作就是设计了一个符合JPEG2000标准的、高性能的多级二维离散小波变换的硬件电路.论文研究的内容主要分为两部分,第一部分首先分析了JPEG2000标准和离散小波变换的原理,重点研究了离散小波变换的快速算法,包括第一代小波变换所采用的卷积算法和第二代小波变换所采用的提升算法,然后具体分析了离散小波变换在JPEG2000中的具体实现.论文第二部分对两种离散小波变换快速算法的硬件实现进行了比较,并选择卷积滤波算法作为硬件实现的对象,并采用Daubechies9/7小波基.然后具体设计了离散小波变换的各个模块,所有的模块都是有硬件描述语言(Verilog HDL)来实现,经过仿真和逻辑综合,在一块自行设计的FPGA开发板上进行了验证.仿真和验证的结果表明了该小波变换的硬件电路符合JPEG2000标准,具有较高的速度和信噪比.

    标签: JPEG 2000 FPGA 小波变换

    上传时间: 2013-04-24

    上传用户:h886166

  • (2,1,9)软判决Viterbi译码器的设计与FPGA实现

    卷积码是无线通信系统中广泛使用的一种信道编码方式。Viterbi译码算法是一种卷积码的最大似然译码算法,它具有译码效率高、速度快等特点,被认为是卷积码的最佳译码算法。本文的主要内容是在FPGA上实现约束长度为9,码率为1/2,采用软判决方式的Viterbi译码器。 本文首先介绍了卷积码的基本概念,阐述了Viterbi算法的原理,重点讨论了决定Viterbi算法复杂度和译码性能的关键因素,在此基础上设计了采用“串-并”结合运算方式的Viterbi译码器,并在Altera EP1C20 FPGA芯片上测试通过。本文的主要工作如下: 1.对输入数据采用了二比特四电平量化的软判决方式,对欧氏距离的计算方法进行了简化,以便于用硬件电路方式实现。 2.对ACS运算单元采用了“串-并”结合的运算方式,和全并行的设计相比,在满足译码速度的同时,节约了芯片资源。本文中提出了一种路径度量值存储器的组织方式,简化了控制模块的逻辑电路,优化了系统的时序。 3.在幸存路径的选择输出上采用了回溯译码方法,与传统的寄存器交换法相比,减少了寄存器的使用,大大降低了功耗和设计的复杂度。 4.本文中设计了一个仿真平台,采用Modelsim仿真器对设计进行了功能仿真,结果完全正确。同时提出了一种在被测设计内部插入监视器的调试方法,巧妙地利用了Matlab算法仿真程序的输出结果,提高了追踪错误的效率。 5.该设计在Altera EP1C20 FPGA芯片上通过测试,最大运行时钟频率110MHz,最大译码输出速率10.3Mbps。 本文对译码器的综合结果和Altera设计的Viterbi译码器IP核进行了性能比较,比较结果证明本文中设计的Viterbi译码器具有很高的工程实用价值。

    标签: Viterbi FPGA 软判决 译码器

    上传时间: 2013-07-23

    上传用户:叶山豪

  • 用于图像分类的有偏特征采样方法

    为了模拟图像分类任务中待分类目标的可能分布,使特征采样点尽可能集中于目标区域,基于Yang的有偏采样算法提出了一种改进的有偏采样算法。原算法将目标基于区域特征出现的概率和显著图结合起来,计算用于特征采样的概率分布图,使用硬编码方式对区域特征进行编码,导致量化误差较大。改进的算法使用局部约束性编码代替硬编码,并且使用更为精确的后验概率计算方式以及空间金字塔框架,改善了算法性能。在PASCAL VOC 2007和2010两个数据集上进行实验,平均精度比随机选取的特征采样方法能够提高约0.5%,验证了算法的有效性。

    标签: 图像分类 特征采样

    上传时间: 2013-10-24

    上传用户:wawjj

  • 单片机常用外围设备接口电路

      本资料是关于单片机常用外围设备接口电路图   主要包括以下电路:   LED数码管及编码方式   静态显示方式及其典型应用电路   动态显示方式及其典型应用电路   虚拟I2C总线串行显示电路   键盘去抖动和连接、控制方式   独立式按键及其接口电路   矩阵式键盘及其接口电路   并行A/D ADC0809及其接口电路   串行A/D ADC0832及其接口电路   I2C串行A/D典型应用电路   DAC0832及其接口电路   I2C串行D/A典型应用电路   开关量驱动输出接口电路

    标签: 单片机常用 外围设备 接口电路

    上传时间: 2013-10-30

    上传用户:ks201314

  • EZ-USB FX系列单片机USB外围设备设计与应用

    EZ-USB FX系列单片机USB外围设备设计与应用:PART 1 USB的基本概念第1章 USB的基本特性1.1 USB简介21.2 USB的发展历程31.2.1 USB 1.131.2.2 USB 2.041.2.3 USB与IEEE 1394的比较41.3 USB基本架构与总线架构61.4 USB的总线结构81.5 USB数据流的模式与管线的概念91.6 USB硬件规范101.6.1 USB的硬件特性111.6.2 USB接口的电气特性121.6.3USB的电源管理141.7 USB的编码方式141.8 结论161.9 问题与讨论16第2章 USB通信协议2.1 USB通信协议172.2 USB封包中的数据域类型182.2.1 数据域位的格式182.3 封包格式192.4 USB传输的类型232.4.1 控制传输242.4.2 中断传输292.4.3 批量传输292.4.4 等时传输292.5 USB数据交换格式302.6 USB描述符342.7 USB设备请求422.8 USB设备群组442.9 结论462.10 问题与讨论46第3章 设备列举3.1注册表编辑器473.2设备列举的步骤493.3设备列举步骤的实现--使用CATC分析工具513.4结论613.5问题与讨论61第4章 USB芯片与EZUSB4.1USB芯片的简介624.2USB接口芯片644.2.1Philips接口芯片644.2.2National Semiconductor接口芯片664.3内含USB单元的微处理器684.3.1Motorola694.3.2Microchip694.3.3SIEMENS704.3.4Cypress714.4USB芯片总揽介绍734.5USB芯片的选择与评估744.6问题与讨论80第5章 设备与驱动程序5.1阶层式的驱动程序815.2主机的驱动程序835.3驱动程序的选择865.4结论865.5问题与讨论87第6章 HID群组6.1HID简介886.2HID群组的传输速率886.3HID描述符906.3.1报告描述符936.3.2主要 main 项目类型966.3.3整体 global 项目卷标976.3.4区域 local 项目卷标986.3.5简易的报告描述符996.3.6Descriptor Tool 描述符工具 1006.3.7兼容测试程序1016.4HID设备的基本请求1026.5Windows通信程序1036.6问题与讨论106PART 2 硬件技术篇第7章 EZUSB FX简介7.1简介1097.2EZUSB FX硬件框图1097.3封包与PID码1117.4主机是个主控者1137.4.1从主机接收数据1137.4.2传送数据至主机1137.5USB方向1137.6帧1147.7EZUSB FX传输类型1147.7.1批量传输1147.7.2中断传输1147.7.3等时传输1157.7.4控制传输1157.8设备列举1167.9USB核心1167.10EZUSB FX单片机1177.11重新设备列举1177.12EZUSB FX端点1187.12.1EZUSB FX批量端点1187.12.2EZUSB FX控制端点01187.12.3EZUSB FX中断端点1197.12.4EZUSB FX等时端点1197.13快速传送模式1197.14中断1207.15重置与电源管理1207.16EZUSB 2100系列1207.17FX系列--从FIFO1227.18FX系列--GPIF 通用型可程序化的接口 1227.19AN2122/26各种特性的摘要1227.20修订ID1237.21引脚描述123第8章 EZUSB FX CPU8.1简介1308.28051增强模式1308.3EZUSB FX所增强的部分1318.4EZUSB FX寄存器接口1318.5EZUSB FX内部RAM1318.6I/O端口1328.7中断1328.8电源控制1338.9特殊功能寄存器 SFR 1348.10内部总线1358.11重置136第9章 EZUSB FX内存9.1简介1379.28051内存1389.3扩充的EZUSB FX内存1399.4CS#与OE#信号1409.5EZUSB FX ROM版本141第10章 EZUSB FX输入/输出端口10.1简介14310.2I/O端口14310.3EZUSB输入/输出端口寄存器14610.3.1端口配置寄存器14710.3.2I/O端口寄存器14710.4EZUSB FX输入/输出端口寄存器14910.5EZUSB FX端口配置表15110.6I2C控制器15610.78051 I2C控制器15610.8控制位15810.8.1START位15810.8.2STOP位15810.8.3LASTRD位15810.9状态位15910.9.1DONE位15910.9.2ACK位15910.9.3BERR位15910.9.4ID1, ID015910.10送出 WRITE I2C数据16010.11接收 READ I2C数据16010.12I2C激活加载器16010.13SFR寻址 FX 16210.14端口A~E的SFR控制165第11章 EZUSB FX设备列举与重新设备列举11.1简介16711.2预设的USB设备16911.3USB核心对于EP0设备请求的响应17011.4固件下载17111.5设备列举模式17211.6没有存在EEPROM17311.7存在着EEPROM, 第一个字节是0xB0 0xB4, FX系列11.8存在着EEPROM, 第一个字节是0xB2 0xB6, FX系列11.9配置字节0,FX系列17711.10重新设备列举 ReNumerationTM 17811.11多重重新设备列举 ReNumerationTM 17911.12预设描述符179第12章 EZUSB FX批量传输12.1简介18812.2批量输入传输18912.3中断传输19112.4EZUSB FX批量IN的例子19112.5批量OUT传输19212.6端点对19412.7IN端点对的状态19412.8OUT端点对的状态19512.9使用批量缓冲区内存19512.10Data Toggle控制19612.11轮询的批量传输的范例19712.12设备列举说明19912.13批量端点中断19912.14中断批量传输的范例20112.15设备列举说明20512.16自动指针器205第13章 EZUSB控制端点013.1简介20913.2控制端点EP021013.3USB请求21213.3.1取得状态 Get_Status 21413.3.2设置特性(Set_Feature)21713.3.3清除特性(Clear_Feature)21813.3.4取得描述符(Get_Descriptor)21913.3.5设置描述符(Set Descriptor)22313.3.6设置配置(Set_Configuration)22513.3.7取得配置(Get_Configuration)22513.3.8设置接口(Set_Interface)22513.3.9取得接口(Get_Interface)22613.3.10设置地址(Set_Address)22713.3.11同步帧22713.3.12固件加载228第14章 EZUSB FX等时传输14.1简介22914.2等时IN传输23014.2.1初始化设置23014.2.2IN数据传输23014.3等时OUT传输23114.3.1初始化设置23114.3.2数据传输23214.4设置等时FIFO的大小23214.5等时传输速度23414.5.1EZUSB 2100系列23414.5.2EZUSB FX系列23514.6快速传输 仅存于2100系列 23614.6.1快速写入23614.6.2快速读取23714.7快速传输的时序 仅存于2100系列 23714.7.1快速写入波形23814.7.2快速读取波形23914.8快速传输速度(仅存于2100系列)23914.9其余的等时寄存器24014.9.1除能等时寄存器24014.9.20字节计数位24114.10以无数据来响应等时IN令牌24214.11使用等时FIFO242第15章 EZUSB FX中断15.1简介24315.2USB核心中断24415.3唤醒中断24415.4USB中断信号源24515.5SUTOK与SUDAV中断24815.6SOF中断24915.7中止 suspend 中断24915.8USB重置中断24915.9批量端点中断25015.10USB自动向量25015.11USB自动向量译码25115.12I2C中断25215.13IN批量NAK中断 仅存于AN2122/26与FX系列 25315.14I2C STOP反相中断 仅存于AN2122/26与FX系列 25415.15从FIFO中断 INT4 255第16章 EZUSB FX重置16.1简介25716.2EZUSB FX打开电源重置 POR 25716.38051重置的释放25916.3.1RAM的下载26016.3.2下载EEPROM26016.3.3外部ROM26016.48051重置所产生的影响26016.5USB总线重置26116.6EZUSB脱离26216.7各种重置状态的总结263第17章 EZUSB FX电源管理17.1简介26517.2中止 suspend 26617.3回复 resume 26717.4远程唤醒 remote wakeup 269第18章 EZUSB FX系统18.1简介27118.2DMA寄存器描述27218.2.1来源. 目的. 传输长度地址寄存器27218.2.2DMA起始与状态寄存器27518.2.3DMA同步突发使能寄存器27518.2.4虚拟寄存器27818.3RD/FRD与WR/FWR DMA闪控的选择27818.4DMA闪控波形与延伸位的交互影响27918.4.1DMA外部写入27918.4.2DMA外部读取280第19章 EZUSB FX寄存器19.1简介28219.2批量数据缓冲区寄存器28319.3等时数据FIFO寄存器28419.4等时字节计数寄存器28519.5CPU寄存器28719.6I/O端口配置寄存器28819.7I/O端口A~C输入/输出寄存器28919.8230 Kbaud UART操作--AN2122/26寄存器29119.9等时控制/状态寄存器29119.10I2C寄存器29219.11中断29419.12端点0控制与状态寄存器29919.13端点1~7的控制与状态寄存器30019.14整体USB寄存器30519.15快速传输30919.16SETUP数据31119.17等时FIFO的容量大小31119.18通用I/F中断使能31219.19通用中断请求31219.20输入/输出端口寄存器D与E31319.20.1端口D输出31319.20.2输入端口D脚位31319.20.3端口D输出使能31319.20.4端口E输出31319.20.5输入端口E脚位31419.20.6端口E输出使能31419.21端口设置31419.22接口配置31419.23端口A与端口C切换配置31619.23.1端口A切换配置#231619.23.2端口C切换配置#231719.24DMA寄存器31919.24.1来源. 目的. 传输长度地址寄存器31919.24.2DMA起始与状态寄存器32019.24.3DMA同步突发使能寄存器32019.24.4选择8051 A/D总线作为外部FIFO321PART 3 固件技术篇第20章 EZUSB FX固件架构与函数库20.1固件架构总览32320.2固件架构的建立32520.3固件架构的副函数钩子32520.3.1工作分配器32620.3.2设备请求 device request 32620.3.3USB中断服务例程32920.4固件架构整体变量33220.5描述符表33320.5.1设备描述符33320.5.2配置描述符33420.5.3接口描述符33420.5.4端点描述符33520.5.5字符串描述符33520.5.6群组描述符33520.6EZUSB FX固件的函数库33620.6.1包含文件 *.H 33620.6.2子程序33620.6.3整体变量33820.7固件架构的原始程序代码338第21章 EZUSB FX固件范例程序21.1范例程序的简介34621.2外围I/O测试程序34721.3端点对, EP_PAIR范例35221.4批量测试, BulkTest范例36221.5等时传输, ISOstrm范例36821.6问题与讨论373PART 4 实验篇第22章 EZUSB FX仿真器22?1简介37522?2所需的工具37622?3EZUSB FX框图37722.4EZUSB最终版本的系统框图37822?5第一次下载程序37822.6EZUSB FX开发系统框图37922.7设置开发环境38022.8EZUSB FX开发工具组的内容38122.9EZUSB FX开发工具组软件38222.9.1初步安装程序38222.9.2确认主机 个人计算机 是否支持USB38222.10安装EZUSB控制平台. 驱动程序以及文件38322.11EZUSB FX开发电路板38522.11.1简介38522.11.2开发电路板的浏览38522.11.3所使用的8051资源38622.11.4详细电路38622.11.5LED的显示38722.11.6Jumper38722.11.7连接器39122.11.8内存映象图39222.11.9PLD信号39422.11.10PLD源文件文件39522.11.11雏形板的扩充连接器P1~P639722.11.12Philips PCF8574 I/O扩充IC40022.12DMA USB FX I/O LAB开发工具介绍40122.12.1USBFX简介40122.12.2USBFX及外围整体环境介绍40322?12?3USBFX与PC连接软件介绍40422.12.4USBFX硬件功能介绍404第23章 LED显示器输出实验23.1硬件设计与基本概念40923.2固件设计41023.3.1固件架构文件FW.C41123.3.2描述符文件DESCR.A5141223.3.3外围接口文件PERIPH.C41723.4固件程序代码的编译与链接42123.5Windows程序, VB设计42323.6INF文件的编写设计42423.7结论42623.8问题与讨论427第24章 七段显示器与键盘的输入/输出实验24.1硬件设计与基本概念42824.2固件设计43124.2.1七段显示器43124.2.24×4键盘扫描43324.3固件程序代码的编译与链接43424.4Windows程序, VB设计43624.5问题与讨论437第25章 LCD文字型液晶显示器输出实验25.1硬件设计与基本概念43825.1.1液晶显示器LCD43825.2固件设计45225.3固件程序代码的编译与链接45625.4Windows程序, VB设计45725.5问题与讨论458第26章 LED点阵输出实验26.1硬件设计与基本概念45926.2固件设计46326.3固件程序代码的编译与链接46326.4Windows程序, VB设计46526.5问题与讨论465第27章 步进电机输出实验27.1硬件设计与基本概念46627.1.11相激磁46727.1.22相激磁46727.1.31-2相激磁46827?1?4PMM8713介绍46927.2固件设计47327.3固件程序代码的编译与链接47427.4Windows程序, VB设计47627.5问题与讨论477第28章 I2C接口输入/输出实验28.1硬件设计与基本概念47828.2固件设计48128.3固件程序代码的编译与链接48328.4Windows程序, VB设计48428.5问题与讨论485第29章 A/D转换器与D/A转换器的输入/输出实验29.1硬件设计与基本概念48629.1.1A/D转换器48629.1.2D/A转换器49029.2固件设计49329.2.1A/D转换器的固件设计49329.2.2D/A转换器的固件设计49629.3固件程序代码的编译与链接49729.4Windows程序, VB设计49829.5问题与讨论499第30章 LCG绘图型液晶显示器输出实验30.1硬件设计与基本概念50030.1.1绘图型LCD50030.1.2绘图型LCD控制指令集50330.1.3绘图型LCD读取与写入时序图50530.2固件设计50630.2.1LCG驱动程序50630.2.2USB固件码51330.3固件程序代码的编译与链接51630.4Windows程序, VB设计51730.5问题与讨论518附录A Cypress控制平台的操作A.1EZUSB控制平台总览519A.2主画面520A.3热插拔新的USB设备521A.4各种工具栏的使用524A.5故障排除526A.6控制平台的进阶操作527A.7测试Unary Op工具栏上的按钮功能528A.8测试制造商请求的工具栏 2100 系列的开发电路板 529A.9测试等时传输工具栏532A.10测试批量传输工具栏533A.11测试重置管线工具栏535A.12测试设置接口工具栏537A.13测试制造商请求工具栏 FX系列开发电路板A.14执行Get Device Descriptor 操作来验证开发板的功能是否正确539A.15从EZUSB控制平台中, 加载dev_io的范例并且加以执行540A.16从Keil侦错应用程序中, 加载dev_io范例程序代码, 然后再加以执行542A.17将dev_io 目标文件移开, 且使用Keil IDE 集成开发环境 来重建545A.18在侦错器下执行dev_io目标文件, 并且使用具有侦错能力的IDE547A.19在EZUSB控制平台下, 执行ep_pair目标文件A.20如何修改fw范例, 并在开发电路板上产生等时传输550附录BEZUSB 2100系列及EZUSB FX系列引脚表B.1EZUSB 2100系列引脚表555B?2EZUSB FX系列引脚图表561附录C EZUSB FX寄存器总览附录D EEPROM烧录方式

    标签: EZ-USB USB 单片机 外围设备

    上传时间: 2013-11-21

    上传用户:努力努力再努力

  • 用单片机制作多功能莫尔斯码电路

    用单片机制作多功能莫尔斯码电路:用单片机制作多功能莫尔斯码电路莫尔斯电码通信有着悠久的历史,尽管它已被现代通信方式所取代,但在业余无线电通信和特殊的专业场合仍具有重要的地位,这是因为等幅电码通信的抗干扰能力是其它任何一种通信方式都无法相比的。在短波波段用几瓦的功率即可进行国际间的通信,收发射设备简单易制成本低廉,所以深受业余无线电爱好者的喜爱,是业余无线电高手必备的技能。要想熟练掌握莫尔斯电码的收发技术除了持之以恒的毅力外,还需要相关的设备。设计本电路的目的就是给爱好者提供一个实用和训练的工具。  一、功能简介    本电路可以配合自动键体和手动键体,产生莫尔斯码控制信号,设有16种速度,从初学者到操作高手都能适用。监听音调也有16种,均可以通过功能键进行选择。可以按程序中设定好的呼号自动呼叫,设有听抄练习功能,听抄练习有短码和混合码两种模式,分别对10个数字和常用的38个混合码模拟随机取样,产生分组报码,供爱好者提高抄收水平之用,速度低4档的听抄练习是专为初学者所设,内容是时间间隔较长的单字符。设有PTT开关键,可以决定是否控制发射机工作,不需要反复通断控制线。无论当前处于呼叫状态还是听抄状态只要电键接点接通则自动转到人工发报程序。4分钟内不使用电路将自动关闭电源,只有按复位键才能重新开始工作。先按住听抄练习键复位则进入短码练习状态,其它功能不变。从开机到自动关机执行每个功能都有不同的莫尔斯码提示音。本电路具有较强的抗高低频干扰的能力和使用方便的大电流开关接口,以适应不同的发射设备。    二、硬件电路原理硬件电路如图1所示。设计电路的目的在于方便实用,以免在紧张的操作中失误,所以除了听抄练习键外其它键没有定义复用功能。各键的作用在图中已经标出。PTT控制在每次复位时处于关闭状态,每按动一次PTT功能键则改变一次状态,这样可以使用软件开关控制发射。 PTT处于控制状态时发光二极管随控制信号闪亮。考虑到自制设备及淘汰军用设备与高档设备控制电流的不同,PTT开关管采用了2SC2073,可以承受500mA的电流,同时还增加了无极性PTT开关电路,无论外部被控制的端口直流极性如何加到VT3的极性始终不变,供有兴趣的爱好者实验。应该注意,如果被控制的负载是感性,则电感两端必须并联续流二极管,除自制设备外成品机在这方面一般没有什么问题。手动键只有一个接点,接通后产生连续的音频和发射控制信号。在本电路中手动键的输入端是P1.5 ,程序不断检测P1.5电平,当按键按下时P1.5电平为0,程序转入手动键子程序。 自动键的接点分别接到P1.3和P1.4 ,同样当程序检测到有接点闭合时便自动产生“点”或“划”。音频信号从P输出,经VT1放大后推动扬声器发音。单片机的I/O口在输入状态下阻抗较高,容易受到高低频信号干扰,所以在每个输入端口和三极管的be端并联电阻和高频旁路电容,确保在较长的电键连线和大功率发射时电路工作稳定。图2是印刷电路版图,尺寸为110mmX85mm,扬声器用粘合剂直接粘接在电路版有铜箔的面。    三、软件设计方法  “点”时间长度是莫尔斯电码中的基本时间单位。按规定“划”的时间长度不小于三个“点”,同字符中“点”与“划”的间隔不小于一个“点”,字符之间不小于一个“划”,词与词之间不应小于五个“点”。在本程序中用条件转移指令来产生“点”时间长度。通过速度功能键功可以设置16种延时参数。用T0中断产生监听音频信号,并将中断设为优先级,保证在听觉上纯正悦耳。T1用于自动关机计时,如果不使用任何功能四分钟后将向PCON 位写1,单片机进入休眠状态,此时耗电量仅有几个微安。自动键的“点”或“划”以及手动键的连续发音都是子程序的反复调用。P1.2对地短接时自动呼叫可设定为另一内容。为了便于熟悉汇编语言的读者对发音内容进行修改,这里介绍发音字符的编码方法。莫尔斯码的信息与计算机中二进制恰好相同,我们可以用0表示“点”,用1表示“划”。提示音、自动呼叫、听抄内容等字符是预先按一定编码方式存储在程序中的常数。每个字符的莫尔斯码一般是由1至6位“点”、“划”组成,也就是发音次数最多6次。程序中每个字符占用1个字节,字符时间间隔不占用字节,但更长的延时或发音结束信息占用一个字节。我们用字节的低三位表示字节的性质,对于5次及5次以下发音的字符我们用存储器的高5位存储发音信息,发音顺序由高位至低位,用低3位存储发音次数,发音时将数据送入累加器A,先得到发音次数,然后使A左环移,对E0进行位寻址,判断是发“点”还是“划”,环移次数由发音次数决定。对于6次发音的字符不能完全按照上述编码规则,否则会出现信息重叠,如果是6次发音且最后一次是“划”我们把发音次数定义为111B,因为这时第6次位寻址得到的是1。如果第6次发音是“点”,那么这个字符的低三位定义为000B。字符间隔时间由程序自动产生,更长的时间隔或结束标志由字节低三位110B来定义,高半字节表示字符间隔的倍数,例如26H表示再加两倍时间间隔。如果字节为06H则表示读字符程序结束,返回主程序。更详细的内容不再赘述,读者可阅读源程序。四、使用注意事项手动键的操作难度相对大一些,时间节拍全由人掌握,其特点是发出的电码带有“人情味”。自动键的“点”、“划”靠电路产生,发音标准,容易操作,而且可以达到相当快的速度,长时间工作也不易疲劳。在干扰较大、信号微弱的条件下自动键码的辨别程度好于手动键码。初学者初次使用手动键练习发报要有老师指导,且不可我行我素,一旦养成不正确的手法则很难纠正。在电台上时常听到一些让对方难以抄收的电码,这可能会使对方反感而拒绝回答。使用自动键也应在一定的听抄基础上再去练习。在暂时找不老师的情况下可多练习听力,这对于今后能够发出标准正确的电码非常有益。

    标签: 用单片机 多功能 莫尔斯 电路

    上传时间: 2013-10-31

    上传用户:sdq_123