FPGA和外围51单片机的通信

1 单片机与FPGA的接口方式
单片机与FPGA的接口方式一般有两种,即总线方式与独立方式。

MCS-51单片机具有很强的外部总线扩展能力,利用片外三总线结构很容易实现单片机与FPGA的总线接口,而且单片机以总线方式与FPGA进行数据与控制信息通信也有许多优点:速度快;节省PLD芯片的I/O口线;相对于非总线方式,单片机编程简捷,控制可靠;在FPGA中通过逻辑切换,单片机易于与SRAM或ROM接口。

单片机与FPGA以总线方式通信的逻辑设计,重要的是要详细了解单片机的总线读写时序,根据时序图来设计逻辑结构,其通信的时序必须遵循单片机内固定的总线方式读/写时序。

FPGA的逻辑设计也相对比较复杂,在程序设计上必须与接口的单片机程序相结合,严格安排单片机能访问的I/O空间。

单片机以总线方式与FPGA 进行数据通信与控制时,其通信工作时序是纯硬件行为,速度要比前一种方式快得多,另外若在FPGA内部设置足够的译码输出,单片机就可以仅通过19根I/O线在FPGA与单片机之间进行通信和控制信息交换,这样可以节省FPGA芯片的I/O线。

其原理图如图1所示。

2 总线接口逻辑设计
2.1 接口设计思想
单片机与CPLD/FPC,A以总线方式通信的逻辑设计,重要的是要详细了解单片机的总线读写时序,根据时序图来设计逻辑结构。

MCS-51系列单片机的时序图如图2所示。

ALE为地址锁存使能信号,可利用其下降沿将低8位地址锁存于FPGA中的地址锁存器(LATCH_ADDRES)中;当ALE将低8位地址通过P0锁存的同时,高8位地址已稳定建立于P2口,单片机利用读指令允许信号PSEN的低电平从外部ROM中将指令从P0口读入,由时序图可见,其指令读入的时机是在PSEN的上升沿之前。

接下来,由P2口和P0口分别输出高8位和低8位数据地址,并由ALE的下降沿将P0口的低8位地址锁存于地址锁存器。

若需从FPGA中读出数据,单片机则通过指令“MOVXA,@DPTR”使RD信号为低电平,由P0口将锁存器中的数据读入累加器A;但若欲将累加器A的数据写进FPGA,则需通过指令“MOVx DPTR,A”和写允许信号WR。

这时,DPTR中的高8位和低8位数据作为高、低8位地址分别向P2和P0口输出,然后由WR的低电平并结合译码,将累加器A的数据写入图中相关的锁存器。

通过对MCS-51单片机总线读/写时序的分析,设计了图3所示的接口电路。

在FPGA中,设计了两个模块:一个是总线接口模块,负责单片机与FPGA的总线接口逻辑;另一个是寄存器单元及外部接口模块,运用总线接口模块来操作此模块。

在总线应用时,MCS-51单片机的P0口是作为地址/数据总线分时复用的,因此应在总线接口模块中设计一个三态缓冲器,实现P0口的三态接口;又因MCS-51单片机在访问外部空间时,它的地址为16位,因此借助地址锁存使能信号ALE在FPGA中实现高8位与低8位地址的编码,组合成16位地址,然后再根据MCS-51单片机的读/写信号,实现对FPGA的读写操作。

在接口设计中,采用了VHDL语言实现其接口逻辑。

用VHDL语言编写,往往比较方便和严谨,注意整个过程的逻辑思路,并且尽量避免语言的冗余,造成比较长的延时。

-MCS-51单片机与FPGA的通信读写电路的部分程序
FPGA是一种新兴的可编程逻辑器件,可以取代现有的全部微机接口芯片,实现微机系统中的存储器、地址译码等多种功能,具有更高的密度、更快的工作速度和更大的编程灵活性,被广泛应用于各种电子类产品中。

在功能上,单片机具有性价比高、功能灵活、易于人机对话、强大的数据处理能力等特点;而FPGA则具有高速、高可靠性以及开发便捷、规范等特点,因此两类器件相结合的电路结构将在许多高性能仪器仪表和电子产品中被广泛应用。

基于这种需求,本文设计了MCS-51单片机与FPGA的总线接口逻辑电路,实现了单片机与FPGA数据与控制信息的可靠通信,使FP—GA与单片机优势互补,组成灵活的、软硬件都可现场编程的控制系统。

合集下载

基于51单片机和FPGA的人机交互系统的设计

基于51单片机和FPGA的人机交互系统的设计

基于51单片机和FPGA的人机交互系统的设计
基于51 单片机和FPGA 的人机交互系统的设计
在现代各类仪器的开发中,人机交互功能正起着无可替代的作用。

人
机交互界面友好的仪器将更容易操作和使用,从而提高工作效率。

液晶显示器(LCD)具有功耗低、价格低、寿命长、接口控制方便等特点,在科研与设计
领域正发挥着越来越大的作用。

FPGA 作为单片机外设的接口芯片,可以大大简化接口电路,通过对FPGA 进行编程,可以实现常用的译码、地址选通等功能。

本文以C8051F020 单片机与FPGA 互连系统为控制核心,以液晶显示控制器T6963C 为例,结合行扫描键盘,简述了一种人机交互功能的设计。

1 系统设计方案:
FPGA 可在很大程度上扩展单片机的资源,然而人机交互功能仍应尽量减少对单片机及FPGA 的资源消耗,以便将更多的片内资源用于其他功能的扩展。

采用FPGA 扫描键盘可以节省单片机的资源,同时也能灵活地实现键盘的扩展。

而考虑到液晶控制较复杂,依然采用单片机控制LCD,使LCD 的各种功能得到最大程度的利用,其系统框图如图1 所示。

2 硬件电路及FPGA 接口设计:
2.1 总线接口设计:
这里采用单片机C8051F020 与CycloneⅡFPGA 互连的系统。

C8051F020 器件是完全集成的混合信号系统级MCU 芯片,具有64 个数字I/O 引脚,与8051 完全兼容,而且速度得到了极大提高,70%的指令执行时间为1 或2 个系统时钟周期,只有4 条指令的执行时间大于4 个系统时钟周期。

此外,C8051F020 系列MCU 对CIP-51 内核和外设有几项关键性的改进,提高。

基于FPGA的单片机外围接口电路设计

基于FPGA的单片机外围接口电路设计

基于FPGA的单片机外围接口电路设计微计算机信息摘要:利用现场可编程门阵列 FPGA实现单片机的外设接口电路可以简化单片机系统的硬件电路,提高系统的集成度、可靠性和系统设计的灵活性。

本文介绍了基于 FPGA的单片机外设接口电路的基本设计方法,分别给出了各个功能模块的设计思路和实现方法。

所有功能的实现全部采用 VHDL进行描述。

0 引言单片机具有性价比高、功能灵活、易于人机对话、数据处理能力强等特点。

单片机应用系统通常由键盘、显示器、通信接口、存储器、A/D、D/A电路等部分组成。

传统的单片机系统经常要用标准的逻辑电路或专用的接口芯片来组成外围电路,如地址译码、I/O扩展等功能通常由标准的TTL/COMS逻辑电路或各种专用接口芯片实现,这样就会使系统的芯片数增多,接线复杂,从而使电路板面积增大、可靠性和 EMI性能减低,难以实现设计的小型化、集成化和高可靠性。

而可编程门阵列FPGA的LCA结构和它丰富的内部资源可以用来设计各种组合逻辑和时序逻辑电路,因此使用FPGA设计单片机的外围电路能够大大简化系统硬件结构,使系统的设计、修改和扩展都变的十分灵活方便。

本文通过对FPGA器件进行功能设计,取代传统单片机系统中外设接口用的标准逻辑电路和专用的接口芯片,使单片机系统的硬件电路大大简化并提高其可靠性。

当需要改变系统性能时,可以通过对FPGA重新编程而不用改变硬件电路,提高了系统设计的灵活性。

1 系统设计方案根据一般单片机系统设计的需要,本文所设计的系统具有以下几个功能模块,如图1所示。

1 )通用逻辑模块:根据具体的情况产生各种不同的逻辑电路及控制信号,代替传统的标准逻辑芯片。

本文将其设计为扩展存储器时用到的地址锁存器。

2 )键盘接口模块:代替传统的单片机与键盘的接口电路,用 FPGA编程完成消除抖动及按键识别功能。

本文将其设计为4×4扫描键盘的通用接口。

3 )显示接口模块:代替传统的单片机与显示器的接口电路,用 FPGA编程完成译码、扫描等功能。

FPGA和外围51单片机的通信

FPGA和外围51单片机的通信

F PG A和外围51单片机的通信(总5页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--1 单片机与FPGA的接口方式单片机与FPGA的接口方式一般有两种,即总线方式与独立方式。

MCS-51单片机具有很强的外部总线扩展能力,利用片外三总线结构很容易实现单片机与FPGA的总线接口,而且单片机以总线方式与FPGA进行数据与控制信息通信也有许多优点:速度快;节省PLD 芯片的I/O口线;相对于非总线方式,单片机编程简捷,控制可靠;在FPGA中通过逻辑切换,单片机易于与SRAM或ROM接口。

单片机与FPGA以总线方式通信的逻辑设计,重要的是要详细了解单片机的总线读写时序,根据时序图来设计逻辑结构,其通信的时序必须遵循单片机内固定的总线方式读/写时序。

FPGA的逻辑设计也相对比较复杂,在程序设计上必须与接口的单片机程序相结合,严格安排单片机能访问的I/O空间。

单片机以总线方式与FPGA进行数据通信与控制时,其通信工作时序是纯硬件行为,速度要比前一种方式快得多,另外若在FPGA内部设置足够的译码输出,单片机就可以仅通过19根I/O线在FPGA与单片机之间进行通信和控制信息交换,这样可以节省FPGA芯片的I/O线。

其原理图如图1所示。

2 总线接口逻辑设计2.1 接口设计思想单片机与CPLD/FPC,A以总线方式通信的逻辑设计,重要的是要详细了解单片机的总线读写时序,根据时序图来设计逻辑结构。

MCS-51系列单片机的时序图如图2所示。

ALE为地址锁存使能信号,可利用其下降沿将低8位地址锁存于FPGA中的地址锁存器(LATCH_ADDRES)中;当ALE将低8位地址通过P0锁存的同时,高8位地址已稳定建立于P2口,单片机利用读指令允许信号PSEN的低电平从外部ROM中将指令从P0口读入,由时序图可见,其指令读入的时机是在PSEN的上升沿之前。

接下来,由P2口和P0口分别输出高8位和低8位数据地址,并由ALE的下降沿将P0口的低8位地址锁存于地址锁存器。

FPGA和51单片机通信接口的设计

FPGA和51单片机通信接口的设计

FPGA和51单片机通信接口的设计作者:刘宇成李金凤来源:《卷宗》2015年第10期摘要:虽然FPGA速度快,但由于FPGA对采集到的数据的处理能力和控制能力比较差,故需要将其采集到的数据送到单片机系统上来实现数据的处理功能,这就使得FPGA系统与单片机系统之间的数据通信提到日程上。

本文给出部分VHDL源程序,并用Quartus II进行仿真。

关键词:FPGA;VHDL;单片机;通信单片机具有性价比高、功能灵活、易于人机对话、良好的数据处理能力的特点;FPGA则具有高速、可靠以及开发便捷等优点。

系统设计中将单片机数据处理的优势与FPGA、执行快速的特点相结合,能够设计出既有强大控制功能又能使各项功能快速执行的系统。

因此,单片机与FPGA之间的通信便显得尤为重要本文介绍利用VHDL语言实现FPGA与单片机的并行通信接口设计。

本文主要由以下三个部分组成:FPGA接收ADC0809数据;FPGA发送数据和单片机接收数据模块,VHDL程序及仿真结果。

本文着重对FPGA数据发送模块实现进行说明,原理图如图1所示:1 FPGA接收ADC0809数据ADC0809是美国国家半导体公司生产的CMOS工艺8通道,8位逐次逼近式A/D模数转换器。

其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。

本系统用ADC0809把传感器采集的模拟信号变成数字信号,然后用FPGA控制数据流进程,并用外围LED电路显示。

FPGA与ADC0809接口电路图如图2所示。

为了实现对ADC0809精确地控制,所以本系统采用FPGA特有的状态机来进行时序上的控制,引脚说明如下:(1)ALE信号(引脚):高电平时把三个地址信号送入地址锁存器,并经译码器得到地址数据,以选择相应的模拟输入通道。

(2)OE信号(引脚)EN使能信号:电平由低变高时,打开数据输出锁存器,将转换数据送到数据总线上。

基于FPGA与单片机通讯的LCD显示模块设计_毕业设计(论文)

基于FPGA与单片机通讯的LCD显示模块设计_毕业设计(论文)

基于FPGA与单片机通讯的LCD显示模块设计摘要在数字电路技术高度发展的今天,基于FPGA、单片机的产品无处不在。

液晶显示也成为现代显示器的主流产品。

LCD液晶显示已经是人机交互界面得以实现的关键手段。

本文对基于FPGA与单片机通信及单片机驱动LCD 液晶显示器系统进行了研究。

本文简要介绍了用单片机作驱动控制器的GDM12864A的基本原理,汉字的显示原理以及单片机的原理。

阐述了基于51系列单片机的LCD 液晶显示器的并行方式的接口电路设计方法。

对驱动电路的应用方法加以研究,还详细说明了其驱动程序相关部分的设计步骤并给出了相关代码。

本设计的重点是用单片机驱动控制LCD显示器,接受来自FPGA发的信号。

根据实验室的要求。

FPGA输出一些简单的数字信号,通过LCD显示相应的结果。

本设计的目的就是将LCD用到实验里。

不止做简单的几个汉字显示。

让它显示我们试验中FPGA发的信号数字。

在本课题中,FPGA只传输一些在试验中比较简单的数字信号。

所以在写驱动程序库在不需要太多的汉字库,设置一些数字,字母和一些常用的算数逻辑符号即可满足我们的要求。

通过本课题设计能解决试验箱GW48-SOPC上LCD一直不被利用的状态,让它在教学中发挥它应用的作用。

让我们在做实验时观察的结果更直观方便。

关键词:FPGA,LCD,单片机,GDM12864A,GW48-SOPCSingle-chip FPGA-based communications with the LCDdisplay module designABSTRACTIn the digital circuit technology of today's highly developed, based on the FPGA, MCU products everywhere. LCD monitors have become the mainstream of modern products. LCD liquid crystal display is a man-machine interface of the key means to achieve. In this paper, with the single-chip FPGA-based communications and single-chip LCD driver liquid crystal display systems were studied.This paper introduces the use of single-chip controller driver for GDM12864A the basic principles of the principle characters of the show, as well as the principle of single-chip microcomputer. 51 series of single-chip based on the LCD liquid crystal display mode of the parallel interface circuit design. Of the drive circuit to study the application of methods, but also a detailed description of its driver-related part of the design steps and give the relevant code.The focus of this design is a single-chip LCD display drive control, receive the signal from the FPGA made. In accordance with the requirements of the laboratory. FPGA output of some simple digital signal through the LCD shows the corresponding results. The purpose of this design is the LCD used in the experiment. Do more than simply show that the number of Chinese characters. It shows that we made the pilot signal in the digital FPGA.In this issue, FPGA transmission only in the test is relatively simple digital signal. Therefore, in writing database drivers do not need too much in hancku, set up some numbers, letters and a number of commonly used logic symbol count to meet our requirements. Issues through the design of the chamber to solve GW48-SOPC on LCD has not been utilized, and in teaching it to play its role in applications. Let us do sdddo to observe the results of experiments to facilitatemore intuitive.KEY WORDS:FPGA, LCD, single-chip, GDM12864A, GW48-SOPC目录前言 (6)第1章绪论 (8)§1.1 开发背景及意义 (8)§1.2 系统方案 (8)§1.3 系统方案流程图 (9)§1.4 系统方案论证 (9)§1.5 系统需求 (10)§1.6 开发软硬件平台 (10)第2章系统硬件设计 (11)§2.1 单片机 (11)§2.1.1 单片机概述 (11)§2.1.2 单片机系列芯片介绍 (11)§2.2 FPGA (12)§2.2.1 FPG A概述 (12)§2.2.2 FPGA系列芯片介绍 (13)§2.3 CPU的选择及应用 (16)§2.3.1 MCS-51单片机的内部结构及芯片图 (16)§2.3.2 Cyclone EP1C6结构及特性 (22)§2.4 LCD液晶显示器 (23)§2.4.1 LCD液晶器工作原理 (23)§2.4.2 GDM12864A 图形液晶显示模块电路特性 (24)§2.5 硬件原理连接 (26)§2.5.1 单片机与FPGA并行通信接口 (26)§2.5.2 单片机与LCD连接 (27)§2.5.3 整系统连接图 (28)第3章系统软件设计 (29)§3.1 软件设计模块概述 (29)§3.2 FPGA嵌入式存储器模块 (29)§3.3 单片机模块 (31)§3.4 GDM12864A 图形液晶显示模块的软件特性 (32)§3.5 汉字取模 (36)第4章开发环境 (38)§4.1 系统调试软件Keil uVision2 (38)§4.2 系统调试软件Quartus II (39)第5章系统测试与结果仿真 (40)§5.1 FPGA模块测试 (40)§5.2 单片机驱动测试 (40)§5.3 整体系统测试 (41)结论 (43)参考文献 (1)致谢 (2)前言自上世纪70年代第一位4位单片机问世,到如今的8位,16位,32位单片机,其应用已涉足诸多领域,如工业生产,航空航天,生物技术,医疗器械,办公自动化等等。

FPGA_8051_UART串行通信

FPGA_8051_UART串行通信

多数示例提供完整源程序
KX2C5F+系统提供的大量电子设计自主创新演示项目于宽领域大深度培养能力、启迪智慧、激励创新
杭州康芯公司
实验4
8052 IP核UART串口应用和CPU与硬件频率计联合设计
多路选择器
输出数据接P1口的低4位数字频率计
频率计采样控制时钟
频率计待测信号输入口
锁存器,数据在开发板的LEDB 数码管显示
锁存器,数据在开发板的LEDA 数码管显示锁存器,数据在开发板的LEDC 数码管显示
显示译码器频率计信号采样控制模块
32位计数器32位锁存器
单片机IP核+内部RAM+内部程序ROM+频率计采样电路+RS232通信控制
待测频率信号:1Hz —200MHz
CycloneII FPGA SOC设计
I/O口
PC机显示频率数据
RS232串行通信
FPGA中51单片机核的工作程序
注意程序路径
下载文件
串行通信口连接PC机
黑线接地
棕线接RX,接P71
红线接TX,接P75
来自PC机的数据“123”,
检测双向通信功能
黑线接地
红线接TX,接P75
棕线接RX,接P71
锁存器VHDL描述
多路选择器VHDL描述译码器VHDL描述
频率计信号采样控制模块32位计数器
32位锁存器
键入3为16进制数据
按此键接受来自FPGA的数据
按此键向FPGA发送数据
UART串行通信测试程序加频率计文件
下载此程序,测试频率计功能
单纯UART串行通信测试程序
测得频率:32768Hz 键入数据
按此纽,向KX_7C板传送数据”ABC”按此纽,将KX_7C板测得的频率显示。

FPGA和单片机串行通信接口的实现

FPGA和单片机串行通信接口的实现FPGA(Field-Programmable Gate Array)和单片机(Microcontroller)是两种常用的数字电子设备,它们在串行通信接口方面有不同的实现方式。

首先,我们需要了解串行通信是一种将数据以位的形式逐个传输的通信方式。

常见的串行通信协议包括UART(Universal Asynchronous Receiver/Transmitter)、SPI(Serial Peripheral Interface)和I2C (Inter-Integrated Circuit)等。

对于FPGA和单片机之间的串行通信,我们可以基于以下几种方式进行实现:1. UART:UART是一种常见的串行通信协议,可以实现全双工的通信。

在FPGA和单片机之间建立UART通信,需要在FPGA中实现UART模块,并将其与单片机的UART接口连接。

在FPGA中,我们可以使用硬件语言(如Verilog或VHDL)来实现UART模块,该模块负责将FPGA内部的数据通过UART协议进行封装和解封装。

单片机与FPGA之间通过TX(发送)和RX (接收)引脚建立连接。

单片机可以通过串口发送数据给FPGA,FPGA接收到数据后进行处理,然后再通过串口将处理后的数据发送给单片机。

2.SPI:SPI是一种用于片上外设之间通信的串行通信协议,常用于FPGA与外部设备(例如传感器、显示器等)之间的通信。

在FPGA和单片机之间建立SPI通信,需要在FPGA中实现SPI控制器,并将其与单片机的SPI接口连接。

FPGA通过把数据写入SPI发送缓冲区或从SPI接收缓冲区读取数据来实现与单片机的通信。

单片机通过控制SPI接口的时钟、数据和使能信号来与FPGA进行数据传输。

3.I2C:I2C是一种双线制串行总线,常用于连接多个设备的系统,例如FPGA、单片机和其他外部设备之间的通信。

在FPGA和单片机之间建立I2C通信,需要在FPGA中实现I2C控制器,并将其与单片机的I2C接口连接。

51系列单片机与外围接口芯片的实验和技巧

51系列单片机与外围接口芯片的实验和技巧51系列单片机是一种常用的微控制器,具有广泛的应用领域。

为了提高单片机的功能和扩展其外围接口,常常需要使用外围接口芯片。

本文将介绍一些与51系列单片机配合使用的外围接口芯片的实验和技巧。

一、LCD液晶显示屏LCD液晶显示屏是一种常见的外围接口设备,可以用来显示各种信息。

与51系列单片机配合使用时,需要通过IO口进行数据和控制信号的交互。

在使用LCD液晶显示屏时,需要注意以下几点:1. 配置IO口的工作模式:将IO口设置为输出模式,以便向液晶显示屏发送控制信号和数据。

2. 使用延时函数:由于LCD液晶显示屏的响应速度较慢,需要在发送完数据后进行适当的延时,以确保数据能够被正确接收和显示。

3. 熟悉液晶显示屏的命令和数据格式:LCD液晶显示屏有自己的一套命令和数据格式,需要根据具体型号的要求进行设置。

二、ADC模数转换芯片ADC模数转换芯片可以将模拟信号转换为数字信号,常用于采集和处理模拟信号。

与51系列单片机配合使用时,需要注意以下几点:1. 配置IO口的工作模式:将IO口设置为输入模式,以便接收来自ADC芯片的模拟信号。

2. 设置ADC模数转换的精度:根据需要,可以调整ADC芯片的工作精度,以获得更高的准确性或更快的转换速度。

3. 调用ADC转换函数:通过调用相应的函数,可以启动ADC芯片进行模数转换,并获取转换结果。

三、DAC数模转换芯片DAC数模转换芯片可以将数字信号转换为模拟信号,常用于控制模拟设备的输出。

与51系列单片机配合使用时,需要注意以下几点:1. 配置IO口的工作模式:将IO口设置为输出模式,以便向DAC芯片发送数字信号。

2. 设置DAC数模转换的精度:根据需要,可以调整DAC芯片的工作精度,以获得更高的准确性或更大的输出范围。

3. 调用DAC转换函数:通过调用相应的函数,可以向DAC芯片发送数字信号,并控制其输出模拟信号的大小。

四、串口通信芯片串口通信芯片可以实现与其他设备的串口通信,常用于数据传输和远程控制。

基于FPGA的MCS-51单片机的控制模块和串口模块设计

摘要单片机自问世以来由于其本身的优越性使其在社会的各个领域得到了广泛的应用,目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。

单片机不仅有小巧灵活、控制能力强、成本低、易于产品化等优势,但随着社会的发展,单片机也存在一些弊端,其速度、规模、性能等指标越来越难以满足用户的需求,因此单片机的开发、升级面临着新的挑战。

随着可编程逻辑控制器技术的发展越来越成熟,为单片机的重构开辟了新的途径,为单片机的设计与升级提供了一种新的方法,本文采用的是以FPGA器件为载体,采用EDA设计中TOP-DOWN和模块化设计思想进行系统设计,灵活运用VHDL描述语言对设计对象进行编程,来实现MCS-51单片机的控制运算模块设计。

最后以EDA开发软件Quartus II为设计平台,经过编译、调试、修改、仿真测试,完成该设计。

关键词:MCS-51单片机,VHDL,EDA,大规模可编程逻辑器件,TOP-DOWNAbstractThe Single Chip Micyoco(SCM)ask myself a life time because of it of the superiority make it at society of each the realm got extensive of application,currently SCM seep through us life of each realm,almost can hardly find out which realm have no a list slice the trace of the machine.SCM not only is cleverly made and vivid,the control ability be strong,the cost be low and be easy to a product to turn etc. advantage,but along with society of development,SCM also existence some irregularity,it speed, scale,function etc. the index sign be more and more hard satisfy the customer's need,so SCM of development,get stripe to face new of challenge.Along with programmable logic controller technique of development more and more mature,for SCM developped new of path,is list slice the design of the machine with got stripe to provide a kind of new of method,this text adoption of take FPGA spare part as to carry a body,adoption EDA design medium TOP-DOWN and mold piece turn design thought to carry on system design and use flexibly VHDL description language to design the object carry on plait distance,realization MCS-51 SCM the arithmetic,logic of the machine operation mold piece design.End with EDA development software Quartus II is design terrace,has been editted and translate, adjusted to try,modification, imitate true test,completion should design.Key Words:MCS-51microcomputer,VHDL,EDA,FPGA,TOP-DOWN目录摘要 (I)Abstract .................................................................................................................................................. I I 目录 .................................................................................................................................................... I II 第一章绪论 (1)1.1 课程设计背景知识 (1)1.1.1 单片机的特点 (1)1.1.2 单片机面临的问题 (1)1.1.3 单片机与FPGA/CPLD的对比 (2)1.2 课程研究的目的以及要完成的任务 (3)第二章 EDA介绍 (4)2.1 EDA技术的发展概述 (4)2.1.1 EDA技术的含义 (4)2.1.2 EDA设计的主要流程 (5)2.1.3 EDA与传统的设计方法的比较 (6)2.1.4 自顶向下(Top-Down)设计的基本概念 (6)2.2 FPGA/CPLD简介 (7)2.3 Verilog HDL和VHDL的比较 (8)2.4 常见的EDA软件与Quartus II简介 (9)2.4.1 常见的EDA软件 (9)2.4.2 Quartus II介绍 (9)第三章MCS-51单片机的反向解剖 (11)3.1 MCS-51单片机的结构、原理 (11)3.1.1 MCS-51单片机概述 (11)3.1.2 MCS-51单片机内部结构与工作原理 (11)3.2 MCS-51单片机的指令系统的实现原理 (16)第四章MCS-51单片机的控制模块设计 (17)4.1控制器模块 (17)4.1.1存储器控制模块 (17)4.1.2 实现指令系统的状态机的模块 (18)4.1.3串行接口模块 (22)4.2小结 ....................................................................................................... 错误!未定义书签。

51单片机与fpga进行串行通信

when stop=> sout1<='1'; state<=delay1;
when delay1=> if count<120 then count:=count+1; else count:=0; if len<7 then state<=start; len<=len+1; else state<=delay2; end if; end if;
clk1<='0'; else clk1<='1'; end if; end if; end process;
-- process(clk1) -- begin -- if clk1='1' and clk1'event then -- len<="000"; -- end if; -- end process;
begin
process(txclk)
begin
if txclk='1' and txclk'event then thr<=din; end if; end process;
process(txclk) variable tsr:std_logic_vector(7 downto 0); variable count:integer range 0 to 480:=0; variable count1:integer range 0 to 4800:=0; begin if txclk='1' and txclk'event then case state is
when start=> tsr:=thr; sout1<='0'; --传输起始位 txcnt_r<=(others=>'0'); --传输数据位数计数清 0 state<=shift;
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档