实验箱FPGA部分测试报告及A8与FPGA链接测试报告

本文记录了一系列FPGA实验的过程与结果,包括拨码开关程序设计、跑马灯实验设计等多个实验。针对实验过程中遇到的问题进行了分析并提出了可能的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

其实,我一开始还以为实验箱不会有什么问题只是让我们多学习东西才做这个测试的,结果发现还真的有不少问题。

1、实验准备部分

安装驱动时,win10系统无法正确安装usb-blaster

Windows 8及以上的系统无法正常安装USB-Blaster驱动,在网上查找后发现了相关的解决办法

按部就班完成工作后,就可以安装USB-Blaster驱动了。

2.各实验情况

实验一:拨码开关程序设计

一、实验目的

1.了解拨码开关的工作方式。

2.学习LED灯的共阳极接法及FPGA通过拨码开关控制LED的实现方法。

二、实验内容

认识拨码开关;学习LED的共阳极接法;学习用FPGA通过拨码开关控制LED的亮灭。

三、实验过程

1.打开文件。

2.编译文件。

3.编译成功后,进行管脚的分配;再选择菜单栏Assignments----->DeviceDevice and Pin Options----->Unused Pins----->Reserve all unused pins,将其改为As input tri-stated。点击OK,退出。

4.重新编译。

5.将计算机与实验箱连接,进入下载程序界面。

6.点击下载界面左上角的Hardware Setup...,进入图2.3.12界面。当前的硬件选择为USB-Blaster[USB-0],然后关闭。

7.点击start。

四、我的运行结果。

运行结果:失败。

在程序编译、管脚分配、接线连接都没错的情况下,无法显示结果。准确情况,无论拨哪一个开关,led灯都不会有任何的反应。

由于实验比较早,这个实验没有截图。初步怀疑是拨码开关的哪里有问题。

实验二:跑马灯实验设计

一、实验目的

学习使用FPGA实现LED灯循环点亮(即跑马灯)。

二、实验内容

学习使用FPGA对系统时钟分频来控制各LED灯以等时间间隔循环点亮(即跑马灯)。

三、实验过程

1.打开文件。

2.编译文件。

3.编译成功后,进行管脚的分配;再选择菜单栏Assignments----->DeviceDevice and Pin Options----->Unused Pins----->Reserve all unused pins,将其改为As input tri-stated。点击OK,退出。

4.重新编译。

5.将计算机与实验箱连接,进入下载程序界面。

6.点击下载界面左上角的Hardware Setup...,进入图2.3.12界面。当前的硬件选择为USB-Blaster[USB-0],然后关闭。

7.点击start。

四、我的实验结果

运行结果:成功。

通过实验二,确定LED灯没有问题,所以实验一只有可能是拨码开关的问题。

实验三:数码管显示矩阵键盘数据程序设计

一、实验目的

1.了解矩阵键盘的工作方式。

2.学习使用数码管显示键盘的发送数据。

二、实验内容

1.学习矩阵键盘的工作原理及控制方法。

2.用数码管显示矩阵键盘发送的数据。

三、实验过程

1.打开文件。

2.编译文件。

3.编译成功后,进行管脚的分配;再选择菜单栏Assignments----->DeviceDevice and Pin Options----->Unused Pins----->Reserve all unused pins,将其改为As input tri-stated。点击OK,退出。

4.重新编译。

5.将计算机与实验箱连接,进入下载程序界面。

6.点击下载界面左上角的Hardware Setup...,进入图2.3.12界面。当前的硬件选择为USB-Blaster[USB-0],然后关闭。

7.点击start。

四、我的运行结果:失败

实验情况:实验三接通后数码管发光,但是按键无反应

依据之后的实验,我觉得可能是程序的问题。比如clk的端口可能不是PIN_G1.

实验四:数码管显示计数器程序设计

一、实验目的

1.了解数码管的工作方式。

2.学习使用数码管显示一个四位计数器。

二、实验内容

学习使用FPGA对系统时钟分频计数,并在数码管上显示。

三、实验过程

1.打开文件。

2.编译文件。

3.编译成功后,进行管脚的分配;再选择菜单栏Assignments----->DeviceDevice and Pin Options----->Unused Pins----->Reserve all unused pins,将其改为As input tri-stated。点击OK,退出。

4.重新编译。

5.将计算机与实验箱连接,进入下载程序界面。

6.点击下载界面左上角的Hardware Setup...,进入图2.3.12界面。当前的硬件选择为USB-Blaster[USB-0],然后关闭。

7.点击start。

四、我的实验结果

运行结果:失败

实验情况:实验箱无反应,应该是器材的问题

实验五:LCD12864程序设计

一、实验目的

1.了解LCD12864液晶的工作原理。

2.掌握用FPGA控制LCD12864显示预设字符的设计方法。

二、实验内容

学习LCD12864液晶的工作原理;学习用FPGA驱动LCD12864来显示预设字符。

三、实验过程

1.打开文件。

2.编译文件。

3.编译成功后,进行管脚的分配;再选择菜单栏Assignments----->DeviceDevice and Pin Options----->Unused Pins----->Reserve all unused pins,将其改为As input tri-stated。点击OK,退出。

4.重新编译。

5.将计算机与实验箱连接,进入下载程序界面。

6.点击下载界面左上角的Hardware Setup...,进入图2.3.12界面。当前的硬件选择为USB-Blaster[USB-0],然后关闭。

7.点击start。

四、我的实验结果

运行结果:成功。

然而实验指导书有错误,实验指导书中clk的端口有两个,文字叙述为PIN_G1,图上为PIN_G22。最终证实PIN_G22正确。

实验六:PC发送串口接收程序设计

一、实验目的

1.了解串行端口传输数据的基本帧格式。

2.掌握串行端口接收数据的硬件描述基本设计方法。

3.学习在PC端使用串口助手发送数据,及用数码管和LED来显示串口助手发送的数据。

二、实验内容

学习串行端口传输数据的基本帧格式;在PC端使用串口助手软件向实验箱发送数据,并将数据通过数码管和LED来显示。

三、实验过程

1.打开文件

2.编译文件

3.编译成功后,进行管脚的分配;再选择菜单栏Assignments----->DeviceDevice and Pin Options----->Unused Pins----->Reserve all unused pins,将其改为As input tri-stated。点击OK,退出。

4.重新编译。

5.将计算机与实验箱连接,进入下载程序界面。

6.点击下载界面左上角的Hardware Setup...,进入图2.3.12界面。当前的硬件选择为USB-Blaster[USB-0],然后关闭。

7.点击start。

 

8.将USB转串口线连接到实验箱和计算机

9.打开串口调试助手

10.查看串口连接线所占用的PC端口(计算机——>管理——>端口)

11.在打开的串口调试助手界面中点击“打开串口”,之后设置串口端口(串口连接线的数字),波特率(9600),校验位(无),数据位(8),停止位(1)等信息,最后在下方的发送区(小的空白区)输入要发送的数据。勾选发送区上边的“HEX发送”,此时数据将以16进制的形式发送到FPGA。设置完成后点击“发送”

四、我的实验结果

运行结果:成功

虽然成功,但是有个很重要的问题。真实使用的串口调试助手与实验指导书是不同的。并没有HEX发送与HEX显示,有的是十六进制发送与显示。不过在这两个实验上没有影响。

实验七:串口发送键盘数据程序设计

一、实验目的

1.了解串行端口传输数据的基本帧格式和矩阵键盘的工作原理。

2.掌握串行端口发送外部数据的硬件描述基本设计方法。

3.学习在PC端使用串口助手接收键盘发送的数据,及用数码管来显示键盘发送的数据。

二、实验内容

学习串行端口发送数据的基本帧格式和矩阵键盘的工作原理;按下矩阵键盘的按键,在PC端使用串口助手进行数据接收,并将数据显示在数码管上。

三、实验过程

1.打开文件

2.编译文件

3.编译成功后,进行管脚的分配;再选择菜单栏Assignments----->DeviceDevice and Pin Options----->Unused Pins----->Reserve all unused pins,将其改为As input tri-stated。点击OK,退出。

4.重新编译。

5.将计算机与实验箱连接,进入下载程序界面。

6.点击下载界面左上角的Hardware Setup...,进入图2.3.12界面。当前的硬件选择为USB-Blaster[USB-0],然后关闭。

7.点击start。

8.将USB转串口线连接到实验箱和计算机

9.打开串口调试助手

10.查看串口连接线所占用的PC端口(计算机——>管理——>端口)

11.在打开的串口调试助手界面中点击“打开串口”,之后设置串口端口(串口连接线的数字),波特率(9600),校验位(无),数据位(8),停止位(1)等信息,最后在下方的发送区(小的空白区)输入要发送的数据。勾选发送区上边的“HEX显示”。

12.在实验箱上按下数字

四、我的实验结果

运行结果:成功

实验八:SM3密码杂凑算法程序设计
一、实验目的

1.了解串行端口传输数据的基本帧格式。

2.了解SM3密码杂凑算法的基本原理。

3.学习实现SM3算法的硬件描述设计方法。

4.学习在PC端使用串口助手发送明文,并接收返回的密文。

二、实验内容

学习SM3算法的硬件描述设计方法;在PC端使用串口助手向实验箱发送明文,然后接收返回的密文数据,检验设计的正确性。

三、实验过程

1.打开文件

2.编译文件

1.打开文件。

2.编译文件。

3.编译成功后,进行管脚的分配;再选择菜单栏Assignments----->DeviceDevice and Pin Options----->Unused Pins----->Reserve all unused pins,将其改为As input tri-stated。点击OK,退出。

4.重新编译。

5.将计算机与实验箱连接,进入下载程序界面。

6.点击下载界面左上角的Hardware Setup...,进入图2.3.12界面。当前的硬件选择为USB-Blaster[USB-0],然后关闭。

7.点击start。

8.将USB转串口线连接到实验箱和计算机

9.打开串口调试助手

10.查看串口连接线所占用的PC端口(计算机——>管理——>端口)

11.在打开的串口调试助手界面中点击“打开串口”,之后设置串口端口(串口连接线的数字),波特率(9600),校验位(无),数据位(8),停止位(1)等信息,最后在下方的发送区(小的空白区)输入要发送的数据。勾选发送区上边的“HEX显示”与“发送新行”

四.我的实验结果

运行结果:失败

因为给的软件里根本没有“发送新行”这一项……

实验九:SM4分组密码程序设计

一、实验目的

1.了解串行端口传输数据的基本帧格式。

2.了解SM4分组密码的基本原理。

3.学习实现SM4算法的硬件描述设计方法。

4.学习在PC端使用串口助手发送明文,并接收返回的密文。

二、实验内容

学习SM4算法的硬件描述设计方法;在PC端使用串口助手向实验箱发送明文,然后接收返回的密文数据,检验设计的正确性。

三、实验过程

1.打开文件。

2.编译文件。

3.编译成功后,进行管脚的分配;再选择菜单栏Assignments----->DeviceDevice and Pin Options----->Unused Pins----->Reserve all unused pins,将其改为As input tri-stated。点击OK,退出。

4.重新编译。

5.将计算机与实验箱连接,进入下载程序界面。

6.点击下载界面左上角的Hardware Setup...,进入图2.3.12界面。当前的硬件选择为USB-Blaster[USB-0],然后关闭。

7.点击start。

8.将USB转串口线连接到实验箱和计算机

9.打开串口调试助手

10.查看串口连接线所占用的PC端口(计算机——>管理——>端口)

11.在打开的串口调试助手界面中点击“打开串口”,之后设置串口端口(串口连接线的数字),波特率(9600),校验位(无),数据位(8),停止位(1)等信息,最后在下方的发送区(小的空白区)输入要发送的数据。勾选发送区上边的“发送新行”

12.15.发送时,先发送16字节的待加密数据。在发送区输入待加密数据后点击发送。串口调试助手接受区显示“OK”时,表示待加密的数据被正确接受。若未返回“OK”,则需将模块复位后重新输入待加密数据,重新发送。之后再输入16字节的密钥,点击发送。串口助手接受区显示“OK”时,表示密钥的数据被正确接受,同时接受区可以读取到模块返回的加密数据。若未返回“OK”,则需将模块复位后重新输入待加密数据,并重新开始执行以上步骤。

四、我的实验结果

运行结果:失败

同实验八,串口助手上没有“发送新行”这一项,没法做

3.A8与FPGA链接测试

这部分是20145225唐振远做的,这里只提供实验结果

实验结果:成功。

转载于:https://www.cnblogs.com/taigenzhenjun/p/6204663.html

智能车主控芯片采用STM32F103ZET6,该处理器为32 位ARM Cortex-M3 处理器,工作频率为72MHz,64K SRAM,512K Flash,12 位ADC,12 位DAC,12 通道DMA,11 个多功能定时器,多达13 个通信接口:2 个I2C 接口(支持SMBus/PMBus),5 个USART 接口(支持ISO7816、LIN、IrDA 接口和调制解调控制),3 个SPI 接口,CAN 接口,USB 2.0 全速接口,SDIO 接口。 目录 智能车简介 4 主控芯片简介 4 传感器模块 4 第一章 STM32基础实验 5 实验一 Keil uVision4安装以及软件介绍 6 实验二 LED流水灯基础实验 10 引脚分配 10 实验原理 10 函数简介 11 实验步骤 11 实验三 精确延时(SysTick) 12 引脚分配 12 实验原理 12 函数简介 12 实验步骤 13 实验四 串口打印实验 14 引脚分配 14 实验原理 14 函数简介 14 实验步骤 14 实验五 定时器控制 16 引脚分配 16 实验原理 16 函数简介 17 实验步骤 17 实验六 AD转化实验 18 引脚分配 18 实验原理 18 函数简介 18 实验步骤 18 第二章 智能车实验 20 实验一 液晶显示实验 21 引脚分配 21 实验原理 21 函数简介 22 实验步骤 23 实验二 按键检测实验 24 引脚分配 24 实验原理 24 函数简介 26 实验步骤 26 实验三 电机控制实验 28 引脚分配 28 实验原理 28 函数简介 29 实验步骤 29 实验四 转速检测实验 31 引脚分配 31 实验原理 31 函数简介 31 实验步骤 32 实验五 黑线寻迹实验 33 引脚分配 33 实验原理 33 函数简介 34 实验步骤 34 实验六 电池电量检测实验 36 引脚分配 36 实验原理 36 实验步骤 36 实验七 自动避障实验 37 引脚分配 37 实验原理 37 函数简介 37 实验步骤 37 实验八 RFID卡片读取实验 38 引脚分配 38 实验原理 38 函数简介 38 实验步骤 39 实验九 语音播报实验 40 引脚分配 40 实验原理 40 实验步骤 40 实验十 Zigbee数据传输实验 41 引脚分配 41 实验原理 41 函数简介 43 实验步骤 43
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值