前些日子正好看到了riple兄的《一波三折——危险的“未分配”引脚》一文,颇受启发。正好最近也遇上了类似的问题,也可谓一波三折,还好最后摆平了,要不煮熟的鸭子可就要飞了。

最重要的是又让自己长经验了。以前培训的时候就听老师提到FPGA设计中闲置的管脚一定要置输入三态(As input tri-stated)。而且印象深刻,算是牢记在心,只可惜没有活学活用,知道有危害,但是真真到开发设计的时候就是记不得了。真可谓应了那句“不见棺材不掉泪”,有些事总是需要自己亲身经历一回才会好好吸取教训。还好,我的问题是在只差一步就玩完的时候发现了。

事情发生的其实也很蹊跷,很让人摸不着头脑的。问题大体是这样的,本来那块控制板的样品已经交给客户测试了,基本没有什么大问题了,在我们自己搭的测试平台上运行很稳定的,反正是发现不了什么问题,不过我想这和测试环境不够复杂有关系吧(接口端的MCU除了进行数据传输基本不干别的活),后来板子被拿到另一块板子上一测试,那块板的蜂鸣器会莫名其妙的滴答滴答的响,不接控制器就不会响,一接上去工作就叫,让我很是郁闷。明明MCU和CPLD接口除了P0,P2和WR,RD外再没有别的,而蜂鸣器接的都不是这些口,在P1口上,那为什么这样毫不相干的管脚居然会有意想不到的关联呢?

第一回我和以前接口时序上不太稳定但是用了以后蜂鸣器不叫的代码对比了一下,只是在WR信号的判断上动了下手脚,结果问题好像就解决了,其实那时还没有意识到会是闲置管脚带来的问题,然后就以为万事大吉了。

昨日里产品要交付了,结果慌忙中代码烧写的版本老不对劲,最后只得找老版本按上回的更改重新改写然后编译,烧的CPLD中在自己的测试平台上依然没有出问题。换到有蜂鸣器的板子上问题复现了,这回我一上来直接找闲置管脚了,我一口咬定就是它了。呵呵,果然,quartus ii中默认的设置是:As output driving ground,那么这样的设置很有可能就是蜂鸣器不正常的直接导火索。将这个设置更改后重新编译下载,蜂鸣器怪怪静下来了,问题解决了,多次测试均正常。                                                                                                      引自特权同学

As input tri-stated的更多相关文章

  1. Tri Tiling[HDU1143]

    Tri Tiling Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total ...

  2. Tri Tiling(hdu1143)

    Tri Tiling Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total ...

  3. POJ 2663 Tri Tiling

                                                                                    Tri Tiling   Time Li ...

  4. POJ 2663 Tri Tiling 矩阵快速幂 难度:3

    Tri Tiling Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 7841   Accepted: 4113 Descri ...

  5. HDU 1143 Tri Tiling

    链接:http://acm.hdu.edu.cn/showproblem.php? pid=1143 Tri Tiling Time Limit: 2000/1000 MS (Java/Others) ...

  6. HDU 1143 Tri Tiling (递推)

    Tri Tiling Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total ...

  7. HTML中上传与读取图片或文件(input file)----在路上(25)

    input file相关知识简例 在此介绍的input file相关知识为: 上传照片及文件,其中包括单次上传.批量上传.删除照片.增加照片.读取图片.对上传的图片或文件的判断,比如限制图片的张数.限 ...

  8. HTML5 input元素新的特性

    在HTML5中,<input>元素增加了许多新的属性.方法及控件.本文章分别对这三方面进行介绍. 目录 1. 属性 2. 方法 3. 新控件 1. 属性 <input>元素在H ...

  9. input[tyle="file"]样式修改及上传文件名显示

    默认的上传样式我们总觉得不太好看,根据需求总想改成和上下结构统一的风格…… 实现方法和思路: 1.在input元素外加a超链接标签 2.给a标签设置按钮样式 3.设置input[type='file' ...

  10. input标签中button在iPhone中圆角的问题

    1.问题 使用H5编写微信页面时,使用<input type="button"/>时,在Android手机中显示正常,但是在iPhone手机中则显示不正常,显示为圆角样 ...

随机推荐

  1. java的几种对象解释

    一.PO:persistent object 持久对象,可以看成是与数据库中的表相映射的Java对象.最简单的PO就是对象数据库中某个表中的一条记录,多个记录可以用PO的集合.PO中应该不包含任何数据 ...

  2. 开发框架(WinForm)3

    我的开发框架(WinForm)3 今天继续给大家介绍核心库的IOC的使用,在我的框架里,IOC使用的比较简单,主要是用于解除模块间的耦合和实例化接口. 1.接口说明,IocContainer接口比较简 ...

  3. .NET:国际化和本地化

    .NET:国际化和本地化 背景 国际化(i18n)和本地化(l10n)是高端程序的必备技术,可惜从业五年从没有尝试过,下一步准备做一个多用户的博客系统,想支持多语言,今天就学习了一下,写出来,希望大家 ...

  4. LoadTest中内存和线程Troubleshooting实战

    LoadTest中内存和线程Troubleshooting实战 在端午节放假的三天中,我对正在开发的Service进行了LoadTest,尝试在增大压力的条件下发现问题. 该Service为独立进程的 ...

  5. hdu 2859 (二维dp)

    点击打开链接 题意: 给你一个n*n的矩阵,矩阵中只含有26个小写字母,求其中最大的对称矩阵的大小 当我们算到s[i][j]时,每次我们只需要将它上方的和右方的依次比较,看是否相同 注意这里不能只比较 ...

  6. ssd可以用作redo 盘吗?

                                               ssd可以用作redo 盘吗? 1.ssd有写磨损,而且ssd的写性能也不是非常好,ssd只是随机读特别好,因为 ...

  7. 给Activity切换加入动画

    在startActivity或finish()后,调用overridePendingTransition方法,可以加入动画效果.例如: 使用Android自带的淡入淡出:android.R.anim. ...

  8. Trade-----HDU3401----单调队列优化的DP

    题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=3401 题目意思: 有T天,你每天可以以API买进,BPI卖出,最多买ASI个,最多卖BSI个 最多只能 ...

  9. javadataAbout stack and heap in JAVA(2)

    改章节个人在上海喝咖啡的时候突然想到的...近期就有想写几篇关于javadata的笔记,所以回家到之后就奋笔疾书的写出来发表了 The stack is much faster than the he ...

  10. 【汇编语言】DEBUG的使用

    在masm for windows中,需要先生存exe文件,然后再点调试按钮. 常用的命令有: R命令:查看.改变CPU寄存器的内容:如果要修改某个寄存器的内容,可以在r的后面接上空格和寄存器名.如: ...