这个程序包包括对两款常用的LCD的串行和并行2中驱动方式: HDG12864液晶仿真 HY12864液晶驱动 HY12864液晶阅读器 LCD1602液晶显示 LCD显示PC-MCU串口通信 FYD12864并行8位.c FYD12864并行8位.c
上传时间: 2017-05-06
上传用户:lunshaomo
现场可编程门阵列(FPGA,Field Programmable Gate Array)是可编程逻辑器件的一种,它的出现是随着微电子技术的发展,设计与制造集成电路的任务已不完全由半导体厂商来独立承担。系统设计师们更愿意自己设计专用集成电路(ASIC,Application Specific Integrated Circuit).芯片,而且希望ASIC的设计周期尽可能短,最好是在实验室里就能设计出合适的ASIC芯片,并且立即投入实际应用之中。现在,FPGA已广泛地运用于通信领域、消费类电子和车用电子。 本文中涉及的I/O端口模块是FPGA中最主要的几个大模块之一,它的主要作用是提供封装引脚到CLB之间的接口,将外部信号引入FPGA内部进行逻辑功能的实现并把结果输出给外部电路,并且根据需要可以进行配置来支持多种不同的接口标准。FPGA允许使用者通过不同编程来配置实现各种逻辑功能,在IO端口中它可以通过选择配置方式来兼容不同信号标准的I/O缓冲器电路。总体而言,可选的I/O资源的特性包括:IO标准的选择、输出驱动能力的编程控制、摆率选择、输入延迟和维持时间控制等。 本文是关于FPGA中多标准兼容可编程输入输出电路(Input/Output Block)的设计和实现,该课题是成都华微电子系统有限公司FPGA大项目中的一子项,目的为在更新的工艺水平上设计出能够兼容单端标准的I/O电路模块;同时针对以前设计的I/O模块不支持双端标准的缺点,要求新的电路模块中扩展出双端标准的部分。文中以低压双端差分标准(LVDS)为代表构建双端标准收发转换电路,与单端标准比较,LVDS具有很多优点: (1)LVDS传输的信号摆幅小,从而功耗低,一般差分线上电流不超过4mA,负载阻抗为100Ω。这一特征使它适合做并行数据传输。 (2)LVDS信号摆幅小,从而使得该结构可以在2.5V的低电压下工作。 (3)LVDS输入单端信号电压可以从0V到2.4V变化,单端信号摆幅为400mV,这样允许输入共模电压从0.2V到2.2V范围内变化,也就是说LVDS允许收发两端地电势有±1V的落差。 本文采用0.18μm1.8V/3.3V混合工艺,辅助Xilinx公司FPGA开发软件ISE,设计完成了可以用于Virtex系列各低端型号FPGA的IOB结构,它有灵活的可配置性和出色的适应能力,能支持大量的I/O标准,其中包括单端标准,也包括双端标准如LVDS等。它具有适应性的优点、可选的特性和考虑到被文件描述的硬件结构特征,这些特点可以改进和简化系统级的设计,为最终的产品设计和生产打下基础。设计中对包括20种IO标准在内的各电器参数按照用户手册描述进行仿真验证,性能参数已达到预期标准。
上传时间: 2013-05-15
上传用户:shawvi
可靠通信要求消息从信源到信宿尽量无误传输,这就要求通信系统具有很好的纠错能力,如使用差错控制编码。自仙农定理提出以来,先后有许多纠错编码被相继提出,例如汉明码,BCH码和RS码等,而C。Berrou等人于1993年提出的Turbo码以其优异的纠错性能成为通信界的一个里程碑。 然而,Turbo码迭代译码复杂度大,导致其译码延时大,故而在工程中的应用受到一定限制,而并行Turbo译码可以很好地解决上述问题。本论文的主要工作是通过硬件实现一种基于帧分裂和归零处理的新型并行Turbo编译码算法。论文提出了一种基于多端口存储器的并行子交织器解决方法,很好地解决了并行访问存储器冲突的问题。 本论文在现场可编程门阵列(FPGA)平台上实现了一种基于帧分裂和篱笆图归零处理的并行Turbo编译码器。所实现的并行Turbo编译码器在时钟频率为33MHz,帧长为1024比特,并行子译码器数和最大迭代次数均为4时,可支持8.2Mbps的编译码数掘吞吐量,而译码时延小于124us。本文还使用EP2C35FPGA芯片设计了系统开发板。该开发板可提供高速以太网MAC/PHY和PCI接口,很好地满足了通信系统需求。系统测试结果表明,本文所实现的并行Turbo编译码器及其开发板运行正确、有效且可靠。 本论文主要分为五章,第一章为绪论,介绍Turbo码背景和硬件实现相关技术。第二章为基于帧分裂和归零的并行Turbo编码的设计与实现,分别介绍了编码器和译码器的RTL设计,还提出了一种基于多端口存储器的并行子交织器和解交织器设计。第三章讨论了使用NIOS处理器的SOC架构,使用SOC架构处理系统和基于NIOSII处理器和uC/0S一2操作系统的架构。第四章介绍了FPGA系统开发板设计与调试的一些工作。最后一章为本文总结及其展望。
上传时间: 2013-04-24
上传用户:ziyu_job1234
随着面向应用的增加,单片机系统I/O端口数量有限的问题日益突出。根据74HC164串行输入、并行输出的工作原理,对单片机系统的I/O端口进行扩展。设计具有16个按键的中断串行键盘和具有8个数码管的串行数码管显示,用4个I/O端口完成了传统并行技术中需要24个I/O端口才能实现的功能。给出了硬件电路、程序和需要注意的问题。实践表明,基于74HC164扩展单片机系统I/O端口的效果良好。
上传时间: 2013-10-14
上传用户:jeffery
基于M ult isim 10 仿真软件, 设计单片机的虚拟串口驱动LCD1602 液晶电路。实现了虚拟串口扩展并行输出的功能。该设计适用单片机UART 串口被占用时, 以最少的单片机IöO 口驱动LCD1602, 满足显示电路中复杂信息的需求。与传统的设计手段相比, 在M ult isim 10 平台支撑下, 设计电路更方便快捷, 并可通过仿真结果直接观测和验证设计电路是否达到要求, 具有省时、低耗、高效的优越性。
上传时间: 2013-10-11
上传用户:xywhw1
带您从零学单片机之串口通信 串口应用简介51的单片机除了定时器/计数器和中断外.还拥有串行通信接口.有了这个接口我们可以用它和电脑通信.我们可以利用串口向电脑发送数据,也可以用串口接收电脑的数据.有了这个接口我们可以利用它来设计很多东西,数据采集,多机通信,远程控制等等. 串行通信是将一组数据分成一位位的方式在数据线上传送.串行通信的优点:占用IO口少.远距离传输时候成本低.串行通信的缺点:相对并行通信传输速度慢,传输方式比较复杂.DS1302 ADC0832等等都是串行传输数据.
上传时间: 2013-10-27
上传用户:jing911003
单片机I/O口的使用:对单片机的控制,其实就是对I/O口的控制,无论单片机对外界进行何种控制,亦或接受外部的控制,都是通过I/O口进行的。单片机总共有P0、P1、P2、P3四个8位双向输入输出端口,每个端口都有锁存器、输出驱动器和输入缓冲器。4个I/O端口都能作输入输出口用,其中P0和P2通常用于对外部存储器的访问。§4.1 MCS-51单片机的并行端口结构与操作 51系列单片机有4个I/O端口,每个端口都是8位准双向口,共占32根引脚。每个端口都包括一个锁存器(即专用寄存器P0~P3)、一个输出驱动器和输入缓冲器。通常把4个端口笼统地表示为P0~P3。
标签: 单片机
上传时间: 2013-11-06
上传用户:zhouxuepeng1
本实验是基于EasyFPGA030 的串口接收设计。FPGA 除了需要控制外围器件完成特定的功能外,在很多的应用中还需要完成FPGA 和FPGA 之间、FPGA 和外围器件之间以及FPGA 和微机的数据交换和指令传输,称之为FPGA 数据传输。FPGA 的数据通信的方式有并行通信和串行通信两种,这里我们就本实验重点讲述串口通信。所谓串口通信是指外设与计算机之间使用一根数据信号线(另外需要地线,可能还需要控制线),数据在一根数据信号线上一位一位地进行传输,每一位数据都占据一个固定的时间长度。这种通信方式使用的数据线少,在远距离通信中可以节约成本。当然,其传输的速度比并行传输慢。
上传时间: 2013-10-08
上传用户:wushengwu
关键词 I/O 口扩展芯片、I2C、SMBus摘要CAT9554A 是一款将I2C/SMBus 接口扩展成8 位并行输入/输出I/O 口的器件
上传时间: 2013-12-27
上传用户:txfyddz
PC机之间串口通信的实现一、实验目的 1.熟悉微机接口实验装置的结构和使用方法。 2.掌握通信接口芯片8251和8250的功能和使用方法。 3.学会串行通信程序的编制方法。 二、实验内容与要求 1.基本要求主机接收开关量输入的数据(二进制或十六进制),从键盘上按“传输”键(可自行定义),就将该数据通过8251A传输出去。终端接收后在显示器上显示数据。具体操作说明如下:(1)出现提示信息“start with R in the board!”,通过调整乒乓开关的状态,设置8位数据;(2)在小键盘上按“R”键,系统将此时乒乓开关的状态读入计算机I中,并显示出来,同时显示经串行通讯后,计算机II接收到的数据;(3)完成后,系统提示“do you want to send another data? Y/N”,根据用户需要,在键盘按下“Y”键,则重复步骤(1),进行另一数据的通讯;在键盘按除“Y”键外的任意键,将退出本程序。2.提高要求 能够进行出错处理,例如采用奇偶校验,出错重传或者采用接收方回传和发送方确认来保证发送和接收正确。 三、设计报告要求 1.设计目的和内容 2.总体设计 3.硬件设计:原理图(接线图)及简要说明 4.软件设计框图及程序清单5.设计结果和体会(包括遇到的问题及解决的方法) 四、8251A通用串行输入/输出接口芯片由于CPU与接口之间按并行方式传输,接口与外设之间按串行方式传输,因此,在串行接口中,必须要有“接收移位寄存器”(串→并)和“发送移位寄存器”(并→串)。能够完成上述“串←→并”转换功能的电路,通常称为“通用异步收发器”(UART:Universal Asynchronous Receiver and Transmitter),典型的芯片有:Intel 8250/8251。8251A异步工作方式:如果8251A编程为异步方式,在需要发送字符时,必须首先设置TXEN和CTS#为有效状态,TXEN(Transmitter Enable)是允许发送信号,是命令寄存器中的一位;CTS#(Clear To Send)是由外设发来的对CPU请求发送信号的响应信号。然后就开始发送过程。在发送时,每当CPU送往发送缓冲器一个字符,发送器自动为这个字符加上1个起始位,并且按照编程要求加上奇/偶校验位以及1个、1.5个或者2个停止位。串行数据以起始位开始,接着是最低有效数据位,最高有效位的后面是奇/偶校验位,然后是停止位。按位发送的数据是以发送时钟TXC的下降沿同步的,也就是说这些数据总是在发送时钟TXC的下降沿从8251A发出。数据传输的波特率取决于编程时指定的波特率因子,为发送器时钟频率的1、1/16或1/64。当波特率指定为16时,数据传输的波特率就是发送器时钟频率的1/16。CPU通过数据总线将数据送到8251A的数据输出缓冲寄存器以后,再传输到发送缓冲器,经移位寄存器移位,将并行数据变为串行数据,从TxD端送往外部设备。在8251A接收字符时,命令寄存器的接收允许位RxE(Receiver Enable)必须为1。8251A通过检测RxD引脚上的低电平来准备接收字符,在没有字符传送时RxD端为高电平。8251A不断地检测RxD引脚,从RxD端上检测到低电平以后,便认为是串行数据的起始位,并且启动接收控制电路中的一个计数器来进行计数,计数器的频率等于接收器时钟频率。计数器是作为接收器采样定时,当计数到相当于半个数位的传输时间时再次对RxD端进行采样,如果仍为低电平,则确认该数位是一个有效的起始位。若传输一个字符需要16个时钟,那么就是要在计数8个时钟后采样到低电平。之后,8251A每隔一个数位的传输时间对RxD端采样一次,依次确定串行数据位的值。串行数据位顺序进入接收移位寄存器,通过校验并除去停止位,变成并行数据以后通过内部数据总线送入接收缓冲器,此时发出有效状态的RxRDY信号通知CPU,通知CPU8251A已经收到一个有效的数据。一个字符对应的数据可以是5~8位。如果一个字符对应的数据不到8位,8251A会在移位转换成并行数据的时候,自动把他们的高位补成0。 五、系统总体设计方案根据系统设计的要求,对系统设计的总体方案进行论证分析如下:1.获取8位开关量可使用实验台上的8255A可编程并行接口芯片,因为只要获取8位数据量,只需使用基本输入和8位数据线,所以将8255A工作在方式0,PA0-PA7接实验台上的8位开关量。2.当使用串口进行数据传送时,虽然同步通信速度远远高于异步通信,可达500kbit/s,但由于其需要有一个时钟来实现发送端和接收端之间的同步,硬件电路复杂,通常计算机之间的通信只采用异步通信。3.由于8251A本身没有时钟,需要外部提供,所以本设计中使用实验台上的8253芯片的计数器2来实现。4:显示和键盘输入均使用DOS功能调用来实现。设计思路框图,如下图所示: 六、硬件设计硬件电路主要分为8位开关量数据获取电路,串行通信数据发送电路,串行通信数据接收电路三个部分。1.8位开关量数据获取电路该电路主要是利用8255并行接口读取8位乒乓开关的数据。此次设计在获取8位开关数据量时采用8255令其工作在方式0,A口输入8位数据,CS#接实验台上CS1口,对应端口为280H-283H,PA0-PA7接8个开关。2.串行通信电路串行通信电路本设计中8253主要为8251充当频率发生器,接线如下图所示。
上传时间: 2013-12-19
上传用户:小火车啦啦啦