原创 一下午的程序

2009-4-6 01:17 2373 5 7 分类: 工程师职场

今天是清明节放假的第二天,写了一下午的程序,是用FPGA来驱动LCD1602的VHDL源程序,以前写过单片机的C程序,虽然那时候刚开始写的时候也是费了很大的劲才搞定,不过现在想起来用的单片机来的驱动是挺简单的。


    前几天想用的VHDL来写的时候,一直是用单片机的编程思想来的考虑这个驱动的,一直想不通怎么去用VHDL来实现,后来在网上找了一个例程,看了一遍基本上知道实现的方法了,用的状态机来的实现,


   然后自己就开始写程序,参考了一下那个程序,但还是改了很多。前前后后遇到了很多的问题,其实我也知道不会是一帆风顺的。从中午一点开始一直写到了晚上8点多。这中间其实程序其实早就写好了,主要就是中间编译之后各种报错,改了N次,这其中有语法上的错误,逻辑上,当然最不好改的就是自己之前没有遇到过的。当然了写VHDL程序还不是很长的时间,经验还是要靠日积月累的。


调试过程中遇到的三个主要问题:


  1 Error (10028): Can't resolve multiple constant drivers for net "current_state.st0" at LCD1602.vhd(111)  这个错误是说在两个进程中同时对同一个变量做了赋值操作。因此以后写程序要避免在两个不用的进程中,对同一个变量进行操作。


  2.  第二个错误是因为程序里用了一个分频器对48M的时钟信号分频得到一个100Hz 的信号也是周期是10MS做为LCD1602的时钟信号。但时序仿真的时候时间太长,没办法仿真,所以先把周期调了一 下,大概在US级吧,仿真结果出来,基本符号要求,就下载到FPGA中,结果没显示,找了半天的错误就是不知道问题在哪,又是改程序,又是检查硬件连接。哎,结果是忘了把周期再调回去了,那么的短的操作周期,LCD1602当然工作不了。


 3,第三个问题到现在还没有解决,没办法,只能等上课的时候问 一下老师,


就是用定义了一 个变量,这个变量作为一个索引值来的选择数组 的内容。


结果在状态机 的一个状态中,就是无法实现 cnt1:=cnt1+1这样的运算,时序仿真的结果老是XX未知,但的用的一个数对他赋值就可以。如cnt:=2,结果就正确,不知是什么原因 。


  一直到晚上8点多才去买饭,出来之后才知道天已经很黑了。路上的同学很多,有说有笑,可以的悠闲的散步,而我却呆呆的写了一下午的程序,有时候感觉真的,做这方面真的很累,要舍弃很多的东西。不知道以后回想起自己年轻的时候,会不会后悔因为爱好这些,而放弃了本应该属于这个时期应有的东西。

PARTNER CONTENT

文章评论2条评论)

登录后参与讨论

tengjingshu_112148725 2009-4-6 13:06

向你学习啊

用户1513083 2009-4-6 08:37

我昨天也用CPLD驱动1602的
相关推荐阅读
用户1615591 2011-01-08 12:42
一个老工程师给年轻工程师的职业生涯规划忠告
  一个老工程师给年轻工程师的职业生涯规划忠告   [1]好好规划自己的路,不要跟着感觉走!根据个人的理想决策安排,绝大部分人并不指望成为什么院士或教授,而是希望活得滋润一些,爽一些。那么,就...
用户1615591 2011-01-08 12:40
电子工程师的职业规划
电子工程师的职业规划 时间:2010-10-19 15:41:59 来源:互联网 作者:  对于学生,也要做规划,提前规划,提前受益。对于学生朋友们,我给出两句话:保持学习激情,...
用户1615591 2010-09-22 16:31
求解四元一次方程组
#include<stdio.h>#include<math.h>#include<string.h>void main(void){float a[4][5]={...
用户1615591 2009-09-12 10:05
电赛结束了
四天三夜的电赛结束了,虽说这四天很短,但之前却准备了很长的时间,整个暑假都在实验室。这次比赛我们只得了一个省二等奖,不管怎么说有奖总比没奖好,如果想取得好成绩,不仅跟自身的努力的有关,还有学校的投入,...
用户1615591 2009-07-26 16:41
MC8051 IPcore 调试笔记
1.注意I/O不是双向口,不能复用.2.MC8051的执行速度是普通单片机(AT89S51)的8倍.3.RAM为128Byte,可扩展XRAM至64KB,ROM 64KB.具体大小,可根据FPGA的R...
用户1615591 2009-07-21 10:25
MC8051 IPcore 的嵌入方法
quartus 里的原理图前几天想把MC8051 IPcore嵌入到FPGA中,到网上找了很久,这方面的资料不很多,而且有点乱.不过经过两天的努力,终于成功了.时间有限,只测试了一些它的I/O,定时器...
我要评论
2
5
关闭 站长推荐上一条 /3 下一条