此帖是lan0o0在本次CPLD DIY开发的进程帖 我会慢慢的更新进展 本人菜鸟一只 翻过VERILOG的书。但是FPGA很感兴趣,希望通过这个廉价的CPLD开启我新的征程。我会用大量的图片全方面展示接下来的进程。
我也整个目录吧
2 用生命在焊篇
3 冒烟火星事件篇
4 下载程序演示篇
5 led的实验作业
接下来上电之后是我万万没有想到的,刚开始的时候已经把流水灯,数码管,和1602的实验都实现了,到按键的实验时,第一次出现了冒火星,刚开始一直是以为管脚焊接时出现了短路,但是连续很多次,管脚都检查的是不短路,上电的时候会冒烟出现火星,然后3.3V就和地短路了,一直想不出原因来,后来群里的一个朋友提醒我助焊剂的问题,我才上网百度了一下。不少同学都看了我拍的冒烟火星实录,忽略我激动时候的语气词吧。原因也基本找到了,是因为用得坑爹的助焊膏,这种生产鞋油的厂商生产的助焊膏还是不要再用了。下面是我从网上搜到的类似的情况的。
一只金鸡引发的血案! 注:我用的就是金鸡
最近做一个PIC的单片机项目。大概程序,原理图,PCB都OK了。
这周一,PCB和元器件都到位了。东风已到,可以硬件调试了。首先基本检查了PCB的质量。没什么问题。先把IC类的都焊接上去,。。。很快都搞得了。万用表测试了短路情况,烧录基本程序。最后上电。都很正常。
过了1分钟,奇怪的事情发生了,总的电流在不断跳动,并且有变大的趋势。
断电后,测电源和地的阻抗,比以前变小了。怀疑没焊接后,又去焊接了一下,通电测试,正常了几秒,又重复以上情况。
因为是一个新用的PIC18F65J50,它有个核心供电的问题。怀疑中。。。试过很多办法。都不能解决问题。
突然发现有电源脚有火花。以为PCB上有焊锡没干净,就去用刀片刮了一下。情况还是没改变。
中间发现引脚间很多焊锡膏,怀疑是不是它导电。就用刀片刮掉引脚间的焊锡膏。(洗板水洗不干净),发现电流正常了。
最后去市场买了宝工的焊锡膏。一切都正常了。
想当初贪便宜,花了4圆买的“金鸡”焊锡膏,丢了4块PIC和大把的时间。教训呀。
现在发现宝工的焊锡膏也一个样。焊锡膏基本都有弱导电性,对于IC的引脚间距很小的时候---慎用。
后来改用酒精+松香,导电的问题解决了,但是没焊锡膏好用。
最后买了一部超声波清洗机,所有的问题就解决了。有条件的还是用超声波清洗机。
MUX II数据手册下载地址:http://www.altera.com.cn/literature/lit-max2.jsp
EPM240T100C5N IC 引脚介绍:
EPM240T100C5N 工作条件(1)VCC = 3.3V, GND = 0V
(2)4个CLK全局时钟接口至少有一个输入作为驱动时钟
(3)JTAG接口,用来烧录代码
注意:MUX II 可以不用外部晶振,因为MUX II 内部有一块UFM,可作为内部晶振,能够达到10M的频率(不是很准确)
EPM240T100C5N 核心板设计(1)电源模块
a) 由于CPLD内核工作需要3.3V电压,因此电源模块需要能提供3.3V电源,由AMS1117-3.3直接产生,供给FPGA VCCIO。电路图如下所示:
b) 由于PLD工作频率之高,为了得到更稳定的时候,更稳定的工作状态,提供更稳定的电源,需要在每个VCC接口下拉一个104的电容。如下图所示:
关于并联电容有如下作用:
此处为去耦电容,去藕电容就是起到高频信号提供回流路径,就是去除高频耦合,满足驱动电路电流的变化,避免相互间的耦合干扰 ;同时也有滤波的作用(根据TI的模拟设计方案,若是几百兆的频率工作,最好同时并联103一下的电容,已达到更好的状态)。
(2)时钟模块
时钟是CPLD工作的必须条件(除非在要求不高的场合,使用内部UFM),用50MHz的晶振产生时钟源,供给CPLD,作为驱动时钟。其电路如下所示:
(3)复位模块
考虑到电路的稳定性,工作的可控性,在电路板中一般都设定复位模块,来实现硬件的异常复位或者重新开始工作。具体电路图如下所示:
注意:复位信号与CPLD的全局时钟输入IO相连,这并不意味着只能连全局时钟,只是全局时钟连接能够达到更大的同步性以及可控性,而一般IO是具有局部性,在时序要求相当严格的场合,这样更保险。
(4)JTAG模块
保证一个模块的运行,这理所当然需要一个灵魂。而这个灵魂的通道,就是JTAG接口。JTAG和PC通信,烧录配置信息。具体电路图如下所示:
CPLD核心板Layout注意事项(1)每一个VCC的去耦电容要尽可能靠近端口,以达到更好的去耦效果
(2)JTAG接口4条信号线,大致保持等长,保证信号完备性
(3)晶振尽可能靠近IC,CLK输入信号线不能与IO信号线平行
(4)电源尽量做到数模隔离,减少干扰
(5)必要时加上防短路电路
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
【笔记】生成报错synthdesignERROR被打赏50分 | |
【STM32H7S78-DK评测】LTDC+DMA2D驱动RGBLCD屏幕被打赏50分 | |
【STM32H7S78-DK评测】Coremark基准测试被打赏50分 | |
【STM32H7S78-DK评测】浮点数计算性能测试被打赏50分 | |
【STM32H7S78-DK评测】Execute in place(XIP)模式学习笔记被打赏50分 | |
每周了解几个硬件知识+buckboost电路(五)被打赏10分 | |
【换取逻辑分析仪】RA8 PMU 模块功能寄存器功能说明被打赏20分 | |
野火启明6M5适配SPI被打赏20分 | |
NUCLEO-U083RC学习历程2-串口输出测试被打赏20分 | |
【笔记】STM32CUBEIDE的Noruletomaketarget编译问题被打赏50分 |