查看: 6164  |  回复: 7
FPGA核心板转DIP40 本帖主对外承接开发, 联系作者
QUICK
1
主题
3
回复
该帖子为嘉立创认证过的开发案例,案例是对作者实际开发产品的介绍,您可以通过这些案例去找到和自己产品相关的一些方案或解决途径。 查看更多案例 >>
发表于2016-10-16 21:47:33 | 显示全部楼层
1# 电梯直达

FPGA核心板转DIP40

1、作品简介


实物图:

    


用途:制作一个FPGA转接板,插在51开发板的DIP40(或锁座)上,学习FPGA,给FPGA入门级学生使用。

功能:相比其他作品来说,应该是最简单的了。1、板子配有8LED灯,可做LED灯试验;2、有DIP40接口,兼容51单片机的座子,理论上51的外围电路,该板子的FPGA都可以使用上;3、扩展的32IO,可做其它用途。

目的:现在市面上我还没有发现有这种类型板子,在我看来还是有必要存在的。主要原因是:1、现在买一套FPGA板少则一两百,多则上万,对于一个初学者或者只需简单了解FPGA的人来说,是一笔不小的支出。2、初学者一般都有自己的51开发板,闲置是一种浪费,如果有一个FPGA核心板转DIP40的模块,搭上合适简单的外围,就可以利用上51开发板的外围,也是一个不错的选择,价格会低一点点。3、学的深一些的同学,可以搞个51核,继续跑原来十分熟悉的51底板,也是一件很愉快的事情。 

2、作品亮点

 这个板子最大的特点就是,它可以插在51的开发板上使用外围电路,自带一小部分扩展功能,和下载接口。

3、系统构架图

 

4、原理图


原理图源文件EP4CE6E22C8N CORE.rar


1)供电电路


2)下载电路


38Bit LED电路


432Bit 外扩IO


5DIP40接口电路


6)时钟电路


7EP4CE10E22部分电路

 

5PCB实物图

PCB源文件:EP4CExE22 TO DIP40.rar

嘉立创打板也真是快,三天就拿到了,价格也便宜。拿到板就迫不及待焊接,焊的不是很好,还能看。上实物图。插上51开发板上,驱动数码管闪烁。兴奋ING。

        


BOM物料:

6、软件部分的描述

新建工程参考链接:FPGA怎么建立一个Quartus工程

程序下载参考链接:fpgaEPCS 配置的2种方法 FPGA下载程序的方法

 

我也是刚开始学习FPGA,复杂的程序现在写不出来,简单写了一下驱动8BIT LED的跑马灯程序,可以跑。后续接着努力学习,看能否移植51核上去,现在正在看VERILOG。

自己建立的工程文件EP4CE10_TEST.rar

调试程序:

module EP4CE10(clk,led);

                     input clk;

                     output[7:0] led;

                     reg[7:0] led;

                     reg[23:0] q;

always@(posedge clk)

                     begin

                            q<=q+1;

                            if(q==24'b000111111111111111111111)

                                   begin

                                                 led<=8'b11111110;

                                   end

                            else if(q==24'b001111111111111111111111)

                                   begin

                                                 led<=8'b11111101;

                                   end

                            else if(q==24'b010111111111111111111111)

                                   begin

                                                 led<=8'b11111011;

                                   end

                            else if(q==24'b011111111111111111111111)

                                   begin

                                                 led<=8'b11110111;

                                   end

                            else if(q==24'b100111111111111111111111)

                                   begin

                                                 led<=8'b11101111;

                                   end

                            else if(q==24'b101111111111111111111111)

                                   begin

                                                 led<=8'b11011111;

                                   end

                            else if(q==24'b110111111111111111111111)

                                   begin

                                                 led<=8'b10111111;

                                   end

                            else if(q==24'b111111111111111111111111)

                                   begin

                                                 led<=8'b01111111;

                                                 q<=0;

                                   end

                            end

endmodule

7、总结

调试过程:

1FPGA封装中心最好留个大过孔焊盘,不然焊接的时候会很痛苦。我就是没留好孔,FPGA中间的地要跟PCB连起来,费了好大劲。后来还是通过钻孔才能焊接起来。注意:如果FPGA中间地没连到PCB上是下载不了程序的。

2、焊接好板子后,测试电源3.3V对地短路,找了好久,发现是滤波电容短路了,0603封装还是有点小,有一定概率短路,后面做板子建议使用0805会好些。

3、所有元器件焊接好后,上电,下载测试程序,下载成功,就是不跑,纳闷了,以为是FPGA被我用热风枪吹坏了,着急,以为是程序写错了,一直改,还是不行。后来就找硬件上的问题,一直找,找到有源晶振,测试其振幅才1.2V,判断应该是坏了,重新换了一个,测得振幅是3.3V,程序才跑了起来。这个有源晶振因为批次和质量问题,有可能是坏的,不能太相信有源晶振了。

认真是一种态度
爱的很古典
0
主题
1
回复
发表于2022-07-27 08:54:48   |  显示全部楼层
7#
楼主搞得不错,挺有实际意义的,让我们后来人有了肩膀可以站。

主题

回复
  • 温馨提示: 标题不合格、重复发帖、发布广告贴,将会被删除帖子或禁止发言。 详情请参考: 社区发帖规则
  • 您当前输入了 0 个文字。还可以输入 8000 个文字。 已添加复制上传图片功能,该功能目前仅支持chrome和火狐

禁言/删除

X
请选择禁言时长:
是否清除头像:
禁言/删除备注:
昵 称:
 
温馨提示:昵称只能设置一次,设置后无法修改。
只支持中文、英文和数字。

举报

X
请选择举报类型:
请输入详细内容:

顶部