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

共25条 1/3 1 2 3 跳转至

momo578的进程贴—举步维艰!

助工
2012-10-07 20:47:59     打赏

一.接到板子
9月29号回家;
9月30号同事帮忙接收到板子;
10月7号回来,开始焊接板子;
第一天焊接图:



这是第一天的焊接成果,还没有全部焊接完,因为工作比较忙,可能进度会慢点。

二.安装Quartus II 9.0 
1. 首先安装Quartus II 9.0 (32-Bit)
2. 用Quartus_II_9.0破解器.exe破解C:\altera\90\quartus\bin下的sys_cpt.dll和quartus.exe文件(运行Quartus_II_9.0破解器.exe后,直接点击“应用补丁”,如果出现“未找到该文件。搜索该文件吗?”,点击“是”,(如果直接把该破解器Copy到C:\altera\90\quartus\bin下,就不会出现这个对话框,而是直接开始破解!)然后选中sys_cpt.dll,点击“打开”。安装默认的sys_cpt.dll路径是在C:\altera\90\quartus\bin下)。
3. 把license.dat里的XXXXXXXXXXXX 用您老的网卡号替换(在Quartus II 9.0的Tools菜单下选择License Setup,下面就有NIC ID)。
    备注:如何查看自己电脑的网卡号:
                启动<运行>;
                在运行下输入:cmd
                点击确定
                再输入:ipconfig/all
                敲回车键
                在输出的信息中有一项physical address是一组16进制的编码就是自己电脑的网卡号
4. 在Quartus II 9.0的Tools菜单下选择License Setup,然后选择License file,最后点击OK。

三.10月8日


板子已经全部焊接完成
出了点小问题,我把两个液晶的接口都焊成插针了,有点悲剧,以后用到液晶的时候再拆才来换插座咯,因为上班后脑袋不好使了
下面开始调试了。。。。。

10月23日
小车系统组装完成
下面是视频
player.youku.com/player.php/sid/XNDY1ODcyOTUy/v.swf

视频地址:http://player.youku.com/player.php/sid/XNDY1ODcyOTUy/v.swf

player.youku.com/player.php/sid/XNDY1ODgwMzI0/v.swf

视频地址:http://player.youku.com/player.php/sid/XNDY1ODgwMzI0/v.swf



2012.12.21世界末日 

2012.12.22世界重生

 

2013.02.21新年新气象

2013.03.02重整旗鼓




关键词: momo578     进程     举步维艰    

助工
2012-10-07 23:29:32     打赏
2楼

我想大声告诉自己
有梦想一定要坚持下去
苦和累是必须的
能坚守也是一种莫大的幸福
You got a dream,you gotta protect it!


助工
2012-10-08 23:46:21     打赏
3楼
10月8日
板子焊接调试完成
效果图如下

明天就可以正式玩转FPGA了
继续。。。。。

助工
2012-10-09 00:08:35     打赏
4楼

刚刚看了下<焊接注意事项>
结果发现板子还是有问题的
现在已经很晚了
只能等明天解决咯


助工
2012-10-09 22:19:05     打赏
5楼
10月9日
板子检查完毕,基本上没什么问题了
搞了个流水灯,已经跑起来了

慢慢来,不急不躁,一步一个脚印,踏实

助工
2012-10-09 22:46:34     打赏
6楼
10月9日

还有个事得抱怨下
这是个芝麻小事
还是得抱怨


注意到没有

我的led是10个绿的 1个黄色的
没有红色的

红色的有是有,有一个电源红色指示灯

版主看到没有啊!



助工
2012-10-09 23:33:00     打赏
7楼

module LED(
           clk,
           rst,
           led0,led1,led2,led3,led4,led5,led6,led7,
           led_r,led_g,led_y
          );

input clk;
input rst;
output led0,led1,led2,led3,led4,led5,led6,led7;
output led_r,led_g,led_y;

reg[31:0] count;
reg[10:0] led_out;

always @(posedge clk or negedge rst)
      begin
        if(!rst)
         count<=31'd0;
        else
         if(count==31'd220_000_000)
           count<=31'd0;
         else
           count<=count+1'b1;
      end
     
always @(posedge clk or negedge rst)
      begin
        if(!rst)
         led_out <= 1'b0;
        else
         if(count >= 31'd0 && count < 31'd20_000_000)
          led_out <= 11'b111_1111_1110;
         else if(count >= 31'd20_000_000 && count < 31'd40_000_000)
          led_out <= 11'b111_1111_1101;
         else if(count >= 31'd40_000_000 && count < 31'd60_000_000)
          led_out <= 11'b111_1111_1011;
         else if(count >= 31'd60_000_000 && count < 31'd80_000_000)
          led_out <= 11'b111_1111_0111;
         else if(count >= 31'd80_000_000 && count < 31'd100_000_000)
          led_out <= 11'b111_1110_1111;
         else if(count >= 31'd100_000_000 && count < 31'd120_000_000)
          led_out <= 11'b111_1101_1111;
         else if(count >= 31'd120_000_000 && count < 31'd140_000_000)
          led_out <= 11'b111_1011_1111;
         else if(count >= 31'd140_000_000 && count < 31'd160_000_000)
          led_out <= 11'b111_0111_1111;
         else if(count >= 31'd160_000_000 && count < 31'd180_000_000)
          led_out <= 11'b110_1111_1111;
         else if(count >= 31'd180_000_000 && count < 31'd200_000_000)
          led_out <= 11'b101_1111_1111;
         else if(count >= 31'd200_000_000 && count < 31'd220_000_000)
          led_out <= 11'b011_1111_1111;
      end
     
assign led0 =led_out[0];
assign led1 =led_out[1];
assign led2 =led_out[2];
assign led3 =led_out[3];
assign led4 =led_out[4];
assign led5 =led_out[5];
assign led6 =led_out[6];
assign led7 =led_out[7];

assign led_r = led_out[8];
assign led_g = led_out[9];
assign led_y = led_out[10];

endmodule


助工
2012-10-10 21:11:08     打赏
8楼
10月10日
数码管驱动



助工
2012-10-11 00:19:03     打赏
9楼
10月10日
数码管秒表和时钟

搞得有点晚了
不急不急慢慢的来

助工
2012-10-11 00:20:24     打赏
10楼

module miaobiao(
           clk,
           rst,
           led0,led1,led2,led3,led4,led5,led6,led7,
           led_r,led_g,led_y,
           seg,dig
          );

input clk;
input rst;
output led0,led1,led2,led3,led4,led5,led6,led7;
output led_r,led_g,led_y;
output[7:0] seg;
output[7:0] dig;

reg[7:0] seg_reg;
reg[7:0] dig_reg;

reg[7:0] seg_reg0;
reg[7:0] seg_reg1;
reg[7:0] seg_reg2;
reg[7:0] seg_reg3;
reg[7:0] seg_reg4;
reg[7:0] seg_reg5;

reg[3:0] sum,sum1,sum2,sum3,sum4,sum5;

reg[31:0] count;
reg[10:0] led_out;

always @(posedge clk or negedge rst)
      begin
        if(!rst)
         begin
          count<=31'd0;
          sum<=4'b0; sum1<=4'b0; sum2<=4'b0; sum3<=4'b0; sum4<=4'b0; sum5<=4'b0;
         end
        else
         begin
          if(count==31'd1_000_000)
           begin
            count<=31'd0;
            sum<=sum+1'b1;
            if(sum==4'h9)
             begin
              sum1<=sum1+1'b1; sum<=4'b0;
              if(sum1==4'h5)
               begin
                sum2<=sum2+1'b1; sum1<=4'b0;
                if(sum2==4'h9)
                 begin
                  sum3<=sum3+1'b1; sum2<=4'b0;
                  if(sum3==4'h5)
                   begin
                    sum4<=sum4+1'b1; sum3<=4'b0;
                    if(sum4==4'h9)
                    begin
                     sum5<=sum5+1'b1; sum4<=4'b0;
                    end
                   end
                  end
                end
               end           
           end
          else
           begin
            count<=count+1'b1;
           end
         end
      end
     
always @(posedge clk or negedge rst)
      begin
        if(!rst)
         led_out <= 1'b0;
        else
         if(count >= 31'd0 && count < 31'd20_000_000)
          led_out <= 11'b111_1111_1110;
         else if(count >= 31'd20_000_000 && count < 31'd40_000_000)
          led_out <= 11'b111_1111_1101;
         else if(count >= 31'd40_000_000 && count < 31'd60_000_000)
          led_out <= 11'b111_1111_1011;
         else if(count >= 31'd60_000_000 && count < 31'd80_000_000)
          led_out <= 11'b111_1111_0111;
         else if(count >= 31'd80_000_000 && count < 31'd100_000_000)
          led_out <= 11'b111_1110_1111;
         else if(count >= 31'd100_000_000 && count < 31'd120_000_000)
          led_out <= 11'b111_1101_1111;
         else if(count >= 31'd120_000_000 && count < 31'd140_000_000)
          led_out <= 11'b111_1011_1111;
         else if(count >= 31'd140_000_000 && count < 31'd160_000_000)
          led_out <= 11'b111_0111_1111;
         else if(count >= 31'd160_000_000 && count < 31'd180_000_000)
          led_out <= 11'b110_1111_1111;
         else if(count >= 31'd180_000_000 && count < 31'd200_000_000)
          led_out <= 11'b101_1111_1111;
      end
///////////////////////////////////////////////////////////////////////////////////////////////     
always @(posedge clk or negedge rst)
      begin
        if(!rst)
         begin
          seg_reg0<=8'b0000_0000;
         end
        else
         begin
         case(sum)
          4'h0: seg_reg0<=8'b1100_0000;  //0
          4'h1: seg_reg0<=8'b1111_1001;  //1
          4'h2: seg_reg0<=8'b1010_0100;  //2
          4'h3: seg_reg0<=8'b1011_0000;  //3
          4'h4: seg_reg0<=8'b1001_1001;  //4
          4'h5: seg_reg0<=8'b1001_0010;  //5
          4'h6: seg_reg0<=8'b1000_0010;  //6
          4'h7: seg_reg0<=8'b1111_1000;  //7
          4'h8: seg_reg0<=8'b1000_0000;  //8
          4'h9: seg_reg0<=8'b1001_0000;  //9
          default seg_reg0<=8'b1100_0000;
         endcase
         end
      end
/////////////////////////////////////////////////////////////////////////////     
always @(posedge clk or negedge rst)
      begin
        if(!rst)
         begin
          seg_reg1<=8'b0000_0000;
         end
        else
         begin
         case(sum1)
          4'h0: seg_reg1<=8'b1100_0000;  //0
          4'h1: seg_reg1<=8'b1111_1001;  //1
          4'h2: seg_reg1<=8'b1010_0100;  //2
          4'h3: seg_reg1<=8'b1011_0000;  //3
          4'h4: seg_reg1<=8'b1001_1001;  //4
          4'h5: seg_reg1<=8'b1001_0010;  //5
          4'h6: seg_reg1<=8'b1000_0010;  //6
          4'h7: seg_reg1<=8'b1111_1000;  //7
          4'h8: seg_reg1<=8'b1000_0000;  //8
          4'h9: seg_reg1<=8'b1001_0000;  //9
          default seg_reg1<=8'b1100_0000;
         endcase
         end
      end
     
always @(posedge clk or negedge rst)
      begin
        if(!rst)
         begin
          seg_reg2<=8'b0000_0000;
         end
        else
         begin
         case(sum2)
          4'h0: seg_reg2<=8'b1100_0000;  //0
          4'h1: seg_reg2<=8'b1111_1001;  //1
          4'h2: seg_reg2<=8'b1010_0100;  //2
          4'h3: seg_reg2<=8'b1011_0000;  //3
          4'h4: seg_reg2<=8'b1001_1001;  //4
          4'h5: seg_reg2<=8'b1001_0010;  //5
          4'h6: seg_reg2<=8'b1000_0010;  //6
          4'h7: seg_reg2<=8'b1111_1000;  //7
          4'h8: seg_reg2<=8'b1000_0000;  //8
          4'h9: seg_reg2<=8'b1001_0000;  //9
          default seg_reg2<=8'b1100_0000;
         endcase
         end
      end
always @(posedge clk or negedge rst)
      begin
        if(!rst)
         begin
          seg_reg3<=8'b0000_0000;
         end
        else
         begin
         case(sum3)
          4'h0: seg_reg3<=8'b1100_0000;  //0
          4'h1: seg_reg3<=8'b1111_1001;  //1
          4'h2: seg_reg3<=8'b1010_0100;  //2
          4'h3: seg_reg3<=8'b1011_0000;  //3
          4'h4: seg_reg3<=8'b1001_1001;  //4
          4'h5: seg_reg3<=8'b1001_0010;  //5
          4'h6: seg_reg3<=8'b1000_0010;  //6
          4'h7: seg_reg3<=8'b1111_1000;  //7
          4'h8: seg_reg3<=8'b1000_0000;  //8
          4'h9: seg_reg3<=8'b1001_0000;  //9
          default seg_reg3<=8'b1100_0000;
         endcase
         end
      end
always @(posedge clk or negedge rst)
      begin
        if(!rst)
         begin
          seg_reg4<=8'b0000_0000;
         end
        else
         begin
         case(sum4)
          4'h0: seg_reg4<=8'b1100_0000;  //0
          4'h1: seg_reg4<=8'b1111_1001;  //1
          4'h2: seg_reg4<=8'b1010_0100;  //2
          4'h3: seg_reg4<=8'b1011_0000;  //3
          4'h4: seg_reg4<=8'b1001_1001;  //4
          4'h5: seg_reg4<=8'b1001_0010;  //5
          4'h6: seg_reg4<=8'b1000_0010;  //6
          4'h7: seg_reg4<=8'b1111_1000;  //7
          4'h8: seg_reg4<=8'b1000_0000;  //8
          4'h9: seg_reg4<=8'b1001_0000;  //9
          default seg_reg4<=8'b1100_0000;
         endcase
         end
      end
always @(posedge clk or negedge rst)
      begin
        if(!rst)
         begin
          seg_reg5<=8'b0000_0000;
         end
        else
         begin
         case(sum5)
          4'h0: seg_reg5<=8'b1100_0000;  //0
          4'h1: seg_reg5<=8'b1111_1001;  //1
          4'h2: seg_reg5<=8'b1010_0100;  //2
          4'h3: seg_reg5<=8'b1011_0000;  //3
          4'h4: seg_reg5<=8'b1001_1001;  //4
          4'h5: seg_reg5<=8'b1001_0010;  //5
          4'h6: seg_reg5<=8'b1000_0010;  //6
          4'h7: seg_reg5<=8'b1111_1000;  //7
          4'h8: seg_reg5<=8'b1000_0000;  //8
          4'h9: seg_reg5<=8'b1001_0000;  //9
          default seg_reg5<=8'b1100_0000;
         endcase
         end
      end
///////////////////////////////////////////////////////////////////////////////           
always @(posedge clk or negedge rst)
      begin 
       case(count[15:13])
        3'h0:  dig_reg <= 8'b1111_1110; //seg_reg<=seg_reg0;
        3'h1:  dig_reg <= 8'b1111_1101;
        3'h2:  dig_reg <= 8'b1111_1011;
        3'h3:  dig_reg <= 8'b1111_0111;
        3'h4:  dig_reg <= 8'b1110_1111;
        3'h5:  dig_reg <= 8'b1101_1111;
        3'h6:  dig_reg <= 8'b1011_1111;
        3'h7:  dig_reg <= 8'b0111_1111;
        default  dig_reg <= 8'b1111_1111;
       endcase  
      end

always @(dig_reg)
      begin 
       case(dig_reg)
        8'b1111_1110:  seg_reg <= seg_reg0; //seg_reg<=seg_reg0;
        8'b1111_1101:  seg_reg <= seg_reg1;
        8'b1111_1011:  seg_reg <= 8'b1011_1111;
        8'b1111_0111:  seg_reg <= seg_reg2;
        8'b1110_1111:  seg_reg <= seg_reg3;
        8'b1101_1111:  seg_reg <= 8'b1011_1111;
        8'b1011_1111:  seg_reg <= seg_reg4;
        8'b0111_1111:  seg_reg <= seg_reg5;
        default  seg_reg <= seg_reg0;
       endcase  
      end
     
assign led0 =led_out[0];
assign led1 =led_out[1];
assign led2 =led_out[2];
assign led3 =led_out[3];
assign led4 =led_out[4];
assign led5 =led_out[5];
assign led6 =led_out[6];
assign led7 =led_out[7];

assign led_r = led_out[8];
assign led_g = led_out[9];
assign led_y = led_out[10];

assign seg = seg_reg;
assign dig = dig_reg;

endmodule


共25条 1/3 1 2 3 跳转至

回复

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