mikrocontroller.net

Forum: FPGA, VHDL & Co. Slaveregister in SDK


Autor: matze (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
halo alle zusammen,

ich arbeite grad mit dem Spartan 3e starter kit...
hab eine Peripherie in edk erzaugt die ich jetzt in C in SDK zum 
funtionieren bringen will.
Das program soll ein dreiecksignal am Dac ausgeben...
könnt ihm mir bitte weiter helfen...???
im anhang habe ich meine user_logic und mein c program mitgesendet.

danke an alle im voraus

Autor: Valko Zapalko (hydravliska)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

hier ist ein PDF wie mann ein IP Core mit Interrupt erstellt.

http://www.cosmiac.org/pdfs/EDK_Peripheral_Wizard_...

Ausserdem wird bei dir SPI mit dem PLB BUS Takt betrieben. Ich bin 
keinerlei
SPI Erfahrungen, aber wie ich sehe läuft der PLB mit 50 MHz, ist das 
nicht ein bisschen hoch?

In EDK kannst du dir mal das Interrupt Controller API(rechtsclick auf 
dem IP Core und da gibt es "View API" oder ähnliches), ich glaube du 
übergibts die falsche Adresse beim Funktionsaufruf.

Die MOSI sowie MISO Leitungen sind beide als OUT definiert, ist das auch 
korrekt?


Gruss:
Valentin

Autor: matze (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>> aber wie ich sehe läuft der PLB mit 50 MHz, ist das
nicht ein bisschen hoch?

also der fpga von spartan 3e läuft mit 50mhz.... sollte eigentlich nich 
das problem sein...

>>In EDK kannst du dir mal das Interrupt Controller API(rechtsclick auf
dem IP Core und da gibt es "View API" oder ähnliches), ich glaube du
übergibts die falsche Adresse beim Funktionsaufruf.

hab das nicht gefunden... muss nochmal genauer nachschauen...

aber mein problem ist einfach in der funktion timer1_int_handler()..
ich weiss da nicht genau was mir noch fehlt um den dac zum funken zu 
brigen...

lg

Autor: Valko Zapalko (hydravliska)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

kriegst du überhaupt Interrupts(Pin toggeln, LED an/aus)?

Poste dein "xparameters.h".


Gruss:
Valentin

Autor: matze (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
hey,

ich habe die leds leider nicht programmiert um zu sehen ob die 
interrupts funktionieren...

lg

Autor: Valko Zapalko (hydravliska)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

du musst die LEDs nicht implementieren.

Aus deinem IP Core kannst du einfach ein Signal ausgeben, und der 
einfach an das LED routen. So kannst du mindestens sehen ob was 
rauskommt.

Wenn du ein eigenen IP Core erstellst, wird da auch ein Interrupt 
Beispiel generiert.

Gruss:
Valentin

Autor: A. M. (am85)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sag mal, besteht dein VHDL Code nur aus den paar Signalzuweisungen oder 
gibt es da noch mehr Logik? Verstehe ich das richtig, dass du über einen 
Timer einen Interrupt auslösen und damit dein "Signal" toggeln willst 
oder was hast du da genau vor? So richtig ersichtlich ist das nicht.

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.