www.mikrocontroller.net

Forum: FPGA, VHDL & Co. Pulsgenerator für Baudrate


Autor: udo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo habe da ein Problem und komme mit meiner Schnittstelle RS232 und 
nem Xilinx-Board nicht weiter.
Ich benötige für die Baudrate: 9600Hz eine Pulsfrequenz von 65
(10Mhz/(16 * 9600 Baud)) . Wie erzeuge ich mir die am einfachsten?
Danke schon im vorraus.

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@udo

>Ich benötige für die Baudrate: 9600Hz eine Pulsfrequenz von 65
>(10Mhz/(16 * 9600 Baud)) . Wie erzeuge ich mir die am einfachsten?

Mit nem Zähler?

signal cnt : std_logic_vector(6 downto 0);
signal baud_pulse : std_logic;

process(clk)
begin
  if rising_edge(clk) then
    cnt <= cnt +1;
    if cnt=64 then
      cnt <= (others =>'0');
      baud_pulse <= '1';
    else
      baud_pulse <= '0';
    end if;
  end if;
end process;

MfG
Falk

Autor: udo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke Falk,
den Grundgedanken dahinter verstehe ich auch. Aber wie realisiere ich es 
am Besten in Schematik da ich leider wenig vhdl verstehe.

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@udo

>den Grundgedanken dahinter verstehe ich auch. Aber wie realisiere ich es
>am Besten in Schematik da ich leider wenig vhdl verstehe.

Ganz genauso. Ein Zähler wird bei erreichen von 64 synchron 
zurückgesetzt.
Das Rücksetzsignal ist gleichzeitig dein Baudraten-Clock-Enable (najs, 
keine schönes Wort). Sinnvollerweise sollte das Baudraten-Clock-Enable 
noch über ein FlipFlop retimed werden.

Du brauchst also

- 1x 7 bit Zähler mit synchronem Reset
- 1x 7 bit Comparator
- 1x FlipFlop

MFG
Falk

Autor: udo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke Falk für deine schnellen Antworten.
Die Pulserzeugung klappt jetzt.
Jetzt kann ich mich weiter mit der Schnittstelle selber befassen.

Gruß Udo


Autor: Rick Dangerus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@udo:
Befasse Dich auch mit VHDL. Die Schaltplaneingabe wird sehr schnell 
unübersichtlich und unflexibel.

Rick

Autor: udo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Rick,
du hast warscheinlich recht. Befasse mich mit FPLA erst seit letzter 
Woche und bis jetzt reicht die Schaltplaneingabe für mich aus. Außerdem 
ist es bei einfachen Sachen für mich übersichtlicher.

Udo

Autor: udo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo ich schon wieder,

beim übersetzen des Programmes bekomme ich den Fehler das Spartan 3 
keine 16x9 bbfifo Buffer unterstützt?
Was jetzt machen Chip ändern oder???

Autor: Falk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@udo

>beim übersetzen des Programmes bekomme ich den Fehler das Spartan 3
>keine 16x9 bbfifo Buffer unterstützt?

Klingt nach Picoblaze und Xapp 233. Da fehlt wahrscheinlich die *.edn 
Datei im Projektverzeichnis. Oder der VHDL-Code (da gibt es verschiedene 
Versionen).

>Was jetzt machen Chip ändern oder???

Nein, die Dateien ins Projektverzeichnis kopieren.

MFG
Falk

Autor: udo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nochmal danke habe lediglich vergessen die  VHDL - Dateien  alle 
hinzuzufügen.

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.