www.mikrocontroller.net

Forum: FPGA, VHDL & Co. Anfänger!LED unter verilog zum leuchten brinegn!


Autor: Charles Darwin (charlesdarwin)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ziel ist es, led auf dem fpga zum leuchten zu bringen!dies sind meine
ersten schritte! danke im voraus!



module HalloWelte( not_reset_i,clock_i,led_o );

  input  not_reset_i;
        input  clock_i;// input clk 50 MHz
        output [ 2 : 0 ] led_o;//output 3-Bit

   wire      clock_i, not_reset_i;
   reg        CLK_RATE = 50000000 / 10;


   reg[2:0] led_reg;
   reg[31:0] clk_cnt;
   reg         clk_en;

   assign     clk = clock_i;
   assign     reset = ~not_reset_i;
   assign     led_o= led_reg;

always @(posedge clk or posedge reset)begin
   if(reset) begin
      clk_en <= 1'b0;
      clk_cnt <= 32'b0;
   end
  else begin
     if(clk_cnt == CLK_RATE)begin
  clk_cnt <= 1'b1;
     end
     else begin
  clk_cnt <= clk_cnt + 1;
  clk_en <= 1'b0;
     end
  end // else: !if(reset)
end // always @ (posedge clk or posedge reset)


   always @(posedge clk or posedge reset)begin
      if(reset)begin
   led_reg <= 3'hAA;
      end
      else begin
   if(clk_en)led_reg <= led_reg + 1;
      end
   end






endmodule

Autor: SuperWilly (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja und ?

Autor: Charles Darwin (charlesdarwin)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
leider klappt das programm wie es dort steht nicht...woran liegt es? 
danke

Autor: bko (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Charles D.

ich sehe in deinem Verilog-Code nur das du "clk_en" auf log
Null legst also nur:
>clk_en <= 1'b0;

da müsste, so meine ich, auch noch wo
>clk_en <= 1'b1;
stehen denn sonst tut dieses >always< da unten
nie sowas wie blinken ..
[verilog]
always @(posedge clk or posedge reset)begin
  if(reset)
     led_reg <= 3'hAA;
  else
     if(clk_en)led_reg <= led_reg + 1;//<-- (clk_en) ist (clk_en == 
1'b1)
  end
[/verilog]

Autor: Charles Darwin (charlesdarwin)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
danke für den tipp.ich werde es mal versuchen!
falls es nicht klappt melde ich mich noch mal!
lg

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.