这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » DIY与开源设计 » 电子DIY » 寒月迷亭的进程贴

共15条 1/2 1 2 跳转至

寒月迷亭的进程贴

菜鸟
2013-09-30 11:13:38     打赏

看到有别的同学发帖子叫进程贴,挺好,我也叫进程贴吧。

其实,板子早拿到了,但是太陌生了,不知如何下手。只是用电脑USb供电上了一下电,看原有的跑马灯跑了一会。

我当了几本书看了看,现在想,要想看完书再动手不知何年何月了。还是像其他同学学习,争取在假期里跟教程走完,先来电上手经验,在进一步琢磨吧。

点亮LED,4、5、6楼。

15楼,加料跑马灯。




关键词: 寒月     迷亭     进程    

高工
2013-09-30 15:30:44     打赏
2楼

可以看看配套的视频教程,跟着教程学起来,上手比较快!


高工
2013-09-30 15:38:13     打赏
3楼
楼主加油~

菜鸟
2013-10-07 01:32:31     打赏
4楼

买了一本讲VerilogHDL的书,电子工业的《VerilogHDL 数字系统设计及实践》,不厚,而且比较纯粹,比较适合我的胃口。

USB Blaster插上后电源灯亮,没有其它反应。后来发现是接触不良,USB线与小方盒连接处加点儿力按一下,就连上了,一松手,又断了。这下不敢动了,要是板子上了电,来这么一下,岂不把FPGA烧了?等换根USB线试一试。

跟着视频教程把点亮LED的过程走了一遍,到编译完成,挺顺利的。教程很好。

 


菜鸟
2013-10-07 11:54:30     打赏
5楼

 

USB Blaster换了一根线,好一些,能连上,但是有时晃一晃,就掉线,不敢用啊。但是确定是连接不好。

把USB Blaster的壳打开,看板子上的USB的接头座,有三个做弹簧压紧用的钢片,我想,把它往下按一按,连接的时候可以紧一点儿,也许连接可靠。但是它们一按就塌下去,完全不弹上来了——毫无弹性,不像是钢的。这个东西质量不好。


菜鸟
2013-10-07 11:59:56     打赏
6楼

把USB Blaster 连上板子,找视频教程把下载程序的部分走完,果然点亮了第一、三两个LED。
断电,再上电,又变成流水灯了。
这样挺好,用JTAG方式下载,如果不工作,断一下电,还有流水灯,至少说明板子、器件没有坏。

完全按教程操作,就不上图了。感觉不错。


菜鸟
2013-10-07 14:12:13     打赏
7楼
做了过程赋值语句的点亮LED的作业,如下,删除了所有的注释。
 `timescale 1ns / 1ps
 module Led(led )       ;
 output reg[3:0]led     ;
 always led=4'b1010     ;
 endmodule
只是把assign改为always,在led的声明里加上reg,说明是寄存器类型。这样对吗?看样子是对的。点亮了1、3两个LED。
下面是教程给的程序。
 `timescale 1ns / 1ps
 module Led(led )       ;
 output[3:0]led         ;
 assign led=4'b1010     ;
 endmodule

菜鸟
2013-10-07 16:17:35     打赏
8楼

闪烁灯试验
跟着视频完成了。
在建立工程的时候采取了一点投机取巧的办法,把前面的点亮LED的工程复制了一份,把教材提供的程序替换掉原来的程序。这样只需改一下顶层模块名,和添加两个引脚设置。


菜鸟
2013-10-07 16:23:08     打赏
9楼

闪烁灯作业
这个确实比较简单。只要把计时常数从24999999改为49999999,同时寄存器变量delay_cnt的位数要增加一位,各有关位置均须相应改变。
程序如下。
`timescale 1ns / 1ps

module Led( sys_clk       ,
  sys_rstn      ,
  led
       );
//
input              sys_clk       ;
input              sys_rstn      ;
output    [3:0]    led           ;
//
reg       [3:0]    led           ;
reg       [25:0]   delay_cnt     ;
//
always@(posedge sys_clk or negedge sys_rstn)
 begin
  if(!sys_rstn)
   delay_cnt<=26'd0;
  else if(delay_cnt==26'd49999999)
   delay_cnt<=26'd0;
  else
   delay_cnt<=delay_cnt+1'b1; 
 end
always@(posedge sys_clk or negedge sys_rstn)
 begin
  if(!sys_rstn)
   led<=4'b1010;
  else if(delay_cnt==26'd49999999)
   led<=~led;
  else
   led<=led; 
 end
endmodule

我把led的初始值改为4'b1010,工作时好像一双蓝色的小眼睛左瞥一眼,右瞥一眼,十分有趣。


菜鸟
2013-10-07 16:39:20     打赏
10楼
流水灯试验
这次没有从头到尾看视频教程,直接找教程的代码,建新工程,跑了一下。
考虑到如果与原来的代码完全相同,就看不出区别了,所以把24999999改为14999999,看起来快了一点儿。

共15条 1/2 1 2 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]