一个并行转串行的verilog源程序,可以讲12位并行数据转换为一个串行数据
上传时间: 2014-01-06
上传用户:fhzm5658
pie编码器,将串行数据并行输出的一种常用编码
上传时间: 2014-12-08
上传用户:qb1993225
在数据的输入过程中可完成并行数据和串行数据的转换
上传时间: 2017-09-23
上传用户:talenthn
串行数据转换器接口,你需要的资源,你指的用欧
上传时间: 2016-05-19
上传用户:胡文俊12
近年来,随着控制系统规模的扩大和总线技术的发展,对数据采集和传输技术提出了更高的要求。目前,很多设备需要实现从单串口通信到多路串口通信的技术改进。同时,随着以太网技术的发展和普及,这些设备的串行数据需要通过网络进行传输,因而有必要寻求一种解决方案,以实现技术上的革新。 本文分别对串行通信和基于TCP/IP协议的以太网通信进行研究和分析,在此基础上,设计一个嵌入式系统一基于APM处理器的多路串行通信与以太网通信系统,来实现F8-DCS系统中多路串口数据采集和以太网之间的数据传输。主要作了如下工作:首先,分析了当前串行通信的应用现状和以太网技术的发展动态,通过比较传统的多路串口通信系统的优缺点,设计出了一种采用CPID技术和CAN总线技术相结合的新型技术,并结合F8-DCS系统数据量大和实时性高的特点,对串行通讯帧同步的方法进行了详细的研究。然后,根据课题的实际需求,对系统进行总体设计和功能模块划分,并详细介绍了基于ARM7处理器的多路串口通信接口、以太网通信接口以及二者之间的数据传输接口的电路设计。在软件设计上,对系统的启动代码、串行通信协议、串口驱动以及多串口与网口间双向数据传输等进行了详细的论述。最后,将上述技术应用于某大型火电厂主机F8-DCS系统I/O通讯网络的测试与分析,达到了设计要求。
上传时间: 2013-07-31
上传用户:aeiouetla
本文应用EDA技术,基于FPGA器件设计与实现UART,并采用CRC校验。主要工作如下: 1、在异步串行通信电路部分完全用FPGA来实现。选用Xilinx公司的SpartanⅢ系列的XC3S1000来实现异步串行通信的接收、发送和接口控制功能,利用FPGA集成度比较高,具有在线可编程能力,在其完成各种功能的同时,完全可以将串行通信接口构建其中,可根据实际需求分配资源。 2、利用VerilogHDL语言非常容易掌握,功能比VHDL更强大的特点,可以在设计时不断修改程序,来适用不同规模的应用,而且采用Verilog输入法与工艺性无关,利用系统设计时对芯片的要求,施加不同的约束条件,即可设计出实际电路。 3、利用ModelSim仿真工具对程序进行功能仿真和时序仿真,以验证设计是否能获得所期望的功能,确定设计程序配置到逻辑芯片之后是否可以运行,以及程序在目标器件中的时序关系。 4、为保证数据传输的正确性,采用循环冗余校验CRC(CyclicRedundancyCheck),该编码简单,误判概率低,为了减少硬件成本,降低硬件设计的复杂度,本设计通过CRC算法软件实现。 实验结果表明,基于EDA技术的现场可编程门阵列FPGA集成度高,结构灵活,设计方法多样,开发周期短,调试方便,修改容易,采用FPGA较好地实现了串行数据的通信功能,并对数据作了一定的处理,本设计中为CRC校验。另外,可以利用FPGA的在线可编程特性,对本设计电路进行功能扩展,以满足更高的要求。
上传时间: 2013-04-24
上传用户:Altman
针对大数据量的串口间通信,在常规的UART串行数据通信的基础上,结合Cortex-M3微控制器中DMA控制器的作用,实现DMA控制的UART串口数据包收发。设计链表项缓存,最终实现DMA的分散/聚集模式的数据传输过程,主要是发送过程。提高了串行数据通信过程的MCU独立性和MCU利用的效率。
上传时间: 2013-11-04
上传用户:gaome
介绍一种运用PIC16F84单片机实现与PC机串行通信的方法,并给出其硬件接口电路及通信源程序。关键词 异步串行通信 发送与接收 VB4 Win95 串口查询法 1 前言 美国Microchip公司的PIC16系列单片机是一种新型的CMOS工艺的8位单片机。其中,PIC16FXX单片机的程序存储器为电可擦除闪速存储器(flash),可多次修改程序,甚至可以在线编程。PIC16F83和PIC16F84片内数据存储器除RAM外,还有64字节的EEPROM,可以当作一般的或非易失性的数据存储器使用,简单方便。它还具有片内上电复位、延时电路、看门狗电路等。另外,PIC16系列单片机功耗极低,因而是一种非常适合在各种便携式设备中使用的高性价比的单片机,并已经得到了越来越广泛的应用。 但是在许多需要大量计算的运用中,还必须借助微机的强大数据处理能力。这样必须通过通信电路实现PIC单片机与微机间的可靠数据传输。有的PIC16单片机内并没有提供串行口,所以串行通信必须通过自己设计的硬件电路和通信软件来实现。 下面介绍用查询法实现异步串行通讯的方法。同时给出了用PIC16F84单片机的两个I/O口模拟2线串行口的硬件接口电路、程序流程框图、单片机内通信程序以及微机内的通信程序等。2 硬件实现方法与电路 PIC16F84的程序存储器由1K×14的闪速(flash)存储器构成,它只有13条I/O口,1个定时器,为了尽量节省单片机的软硬件资源,采用下述异步串行通信的实现方法。 如图1所示,PIC16F84在4MHz时钟下,采用半双工方式,可实现9600波特率的异步串行数据通信,1位停止位,8位数据位,无校验位。接收和发送以低位在先(一般模式),采用软件延时。为节省篇幅,单片机内的通信程序中未提供任何握手协议,用户可根据自己的需要在软件中加入握手方式。
上传时间: 2014-12-27
上传用户:偷心的海盗
自动检测80C51串行通讯中的波特率:本文介绍一种在80C51 串行通讯应用中自动检测波特率的方法。按照经验,程序起动后所接收到的第1 个字符用于测量波特率。这种方法可以不用设定难于记忆的开关,还可以免去在有关应用中使用多种不同波特率的烦恼。人们可以设想:一种可靠地实现自动波特检测的方法是可能的,它无须严格限制可被确认的字符。问题是:在各种的条件下,如何可以在大量允许出现的字符中找出波特率定时间隔。显然,最快捷的方法是检测一个单独位时间(single bit time),以确定接收波特率应该是多少。可是,在RS-232 模式下,许多ASCII 字符并不能测量出一个单独位时间。对于大多数字符来说,只要波特率存在合理波动(这里的波特率是指标准波特率),从起始位到最后一位“可见”位的数据传输周期就会在一定范围内发生变化。此外,许多系统采用8 位数据、无奇偶校验的格式传输ASCII 字符。在这种格式里,普通ASCII 字节不会有MSB 设定,并且,UART总是先发送数据低位(LSB),后发送数据高位(MSB),我们总会看见数据的停止位。在下面的波特率检测程序中,先等待串行通讯输入管脚的起始信号(下降沿),然后起动定时器T0。在其后的串行数据的每一个上升沿,将定时器T0 的数值捕获并保存。当定时器T0溢出时,其最后一次捕获的数值即为从串行数据起始位到最后一个上升沿(我们假设是停止位)过程所持续的时间。
上传时间: 2014-08-22
上传用户:dajin
在VC++中利用ActiveX控件开发串行通信程序 用VC控件MSComm编写串口通信程序的源代码,并写出详细的编程过程 一个单片机串行数据采集/传输模块的设计
上传时间: 2015-04-21
上传用户:Miyuki