基于EDA的FPGA的实验开发板的设计与程序调试.docx
- 文档编号:30161875
- 上传时间:2023-08-05
- 格式:DOCX
- 页数:18
- 大小:721.53KB
基于EDA的FPGA的实验开发板的设计与程序调试.docx
《基于EDA的FPGA的实验开发板的设计与程序调试.docx》由会员分享,可在线阅读,更多相关《基于EDA的FPGA的实验开发板的设计与程序调试.docx(18页珍藏版)》请在冰豆网上搜索。
基于EDA的FPGA的实验开发板的设计与程序调试
基于EDA的FPGA的实验开发板的设计与程序调试
————————————————————————————————作者:
————————————————————————————————日期:
专业课程设计报告
课设名称:
基于EDA的FPGA实验开发板
的设计ﻩ
目录:
1、设计任务及内容
2、系统硬件设计(要求对系统每部分电路进行介绍)
3、系统软件设计(画出程序流程图)
4、系统调试
5、课程设计总结
6、参考文献
7、附录(系统硬件原理图以及程序代码)
一:
设计任务及内容
设计任务:
基于EDA的FPGA的实验开发板的设计与程序调试。
设计内容:
开发板底板和核心板原理图以及PCB的设计,程序的编写与下载调试。
二:
系统硬件设计
核心板部分
1、电源部分:
通过5V直流供电,经过电容滤波
2、蜂鸣器部分:
通过三极管驱动蜂鸣器,可以播放一些简单的音乐
3、PS2键盘:
可以用作一般通讯目的或者嵌入式系统和片上系统调试
4、1602-12964LCD液晶显示屏:
LCD模块接口,显示点阵为128x64;一种为T6963控制器的LCD模块
5、串口:
数据通信,提高数据传输速度
6、VGA部分:
VGA接口就是显卡上输出模拟信号的接口
7、步进电机部分:
通过编写程序可以控制步进电机的转速
8、LED灯部分:
可以通过vhdl语言编程来控制发光二极管按顺序依次点亮
9、按键部分:
人机交换部分,更加智能与方便
10、数码管部分:
11、双排底座:
与核心板的链接部分
核心板部分
1、晶振部分:
为芯片提供时钟信号
2、排针部分
与外部器件的连接部分
3、电源部分:
为芯片供电
4、JTAG部分:
与计算机进行数据通信,程序的下载
5、核心芯片:
FPGA核心部分,控制各模块的工作
三:
系统软件设计
四:
系统调试
软件仿真:
利用quartus2软件将编写好的程序进行时序仿真,得到波形图如下
五 课程设计总结
通过这次课程设计,让我们学会了如何应用AD6这款软件进行原理图与PCB的绘制,期间遇到了很多困难,不过通过查询资料和咨询老师,我们最后还是能够基本上完成了任务。
通过这次课设,学会了很多东西,比如如何自己利用AD6绘制一个元器件,怎么利用AD6进行PCB正方面的设计,怎么布铜等等。
当然只是通过这次课设我们也学会了团队合作的重要性,组员之间分工明确,使得任务完成的更加轻松。
总之,这次可是让我们受益匪浅,感谢学校给我们这次机会,更加感谢刘老师的悉心指导!
六参考文献
1、sopc-eda实验指导书
2、阎石.数字电子技术基础.北京:
高等教育出版社,2006
3、AD6使用指导
4、FPGA开发板使用说明书
附录:
底板原理图与PCB
核心板原理图与PCB
程序代码:
libraryIEEE;
useIEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
useIEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY seg70IS
PORT(
clk:
INstd_logic;
rst :
INstd_logic;
dataout :
OUT std_logic_vector(7 DOWNTO 0);--各段数据输出
en :
OUT std_logic_vector(7 DOWNTO 0)); --COM使能输出
ENDseg70;
ARCHITECTUREarch OFseg70 IS
signalcnt_scan:
std_logic_vector(15downto0);
signaldata4:
std_logic_vector(3downto0);
signal dataout_xhdl1:
std_logic_vector(7 downto0);
signalen_xhdl :
std_logic_vector(7 downto0);
begin
dataout<=dataout_xhdl1;
en<=en_xhdl;
process(clk,rst)
begin
if(rst='0')then
cnt_scan<="00000";
elsif(clk'eventandclk='1')then
cnt_scan<=cnt_scan+1;
endif;
endprocess;
process(cnt_scan(15downto13))
begin
casecnt_scan(15 downto 13)is
when"000"=>en_xhdl<="11111110";
when"001"=>en_xhdl<="11111101";
when"010"=>en_xhdl<="11111011";
when"011"=>en_xhdl<="11110111";
when"100"=>en_xhdl<="11101111";
when"101"=>en_xhdl<="11011111";
when"110"=>en_xhdl<="10111111";
when"111"=> en_xhdl<="01111111";
whenothers=> en_xhdl<="11111110";
endcase;
endprocess;
process(en_xhdl)
begin
caseen_xhdlis
when"11111110"=>data4<="0000";
when"11111101"=>data4<="0001";
when"11111011"=>data4<="0010";
when"11110111"=>data4<="0011";
when"11101111"=>data4<="0100";
when "11011111"=> data4<="0101";
when"10111111"=> data4<="0110";
when "01111111"=>data4<="0111";
whenothers =>data4<="1000";
end case;
endprocess;
process(data4)
begin
casedata4 is
WHEN"0000"=>
dataout_xhdl1<="11000000";
WHEN"0001" =>
dataout_xhdl1 <="11111001";
WHEN"0010" =>
dataout_xhdl1<= "10100100";
WHEN"0011"=>
dataout_xhdl1<="10110000";
WHEN"0100"=>
dataout_xhdl1<="10011001";
WHEN"0101"=>
dataout_xhdl1<="10010010";
WHEN "0110"=>
dataout_xhdl1<="10000010";
WHEN"0111"=>
dataout_xhdl1 <="11111000";
WHEN"1000"=>
dataout_xhdl1 <="10000000";
WHEN"1001" =>
dataout_xhdl1 <="00011001";
WHEN"1010"=>
dataout_xhdl1 <= "00010001";
WHEN "1011" =>
dataout_xhdl1<= "11000001";
WHEN"1100" =>
dataout_xhdl1<="01100011";
WHEN"1101" =>
dataout_xhdl1 <="10000101";
WHEN"1110"=>
dataout_xhdl1<="01100001";
WHEN "1111"=>
dataout_xhdl1 <= "01110001";
WHENOTHERS=>
dataout_xhdl1<="00000011";
ENDCASE;
ENDPROCESS;
end arch;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 EDA FPGA 实验 开发 设计 程序 调试
![提示](https://static.bdocx.com/images/bang_tan.gif)