Hallo zusammen, ich wollte den de0 Nano als Slave testen. Ich habe den Master erstmal weggelassen und wollte den Slave mal nur zum laufen bringen. Hab mir überlegt vielleicht mit dem Frequenzgenerator eine Clock zu generieren und auf den sclk pin zu geben , den eigentlich der Master rüberschicken sollte. Den Miso Mosi habe ich erstmal nicht angerührt nur den PINS zugewiesen. Den Chip Select habe ich auf Ground gezogen damit er ständig aktiv ist. Nun wollte ich mir das alles mal im Signaltap anschauen. Jetzt zu meiner eigentlichen Frage: Ich muss doch den FPGA irgendwie mit einer Clock versorgen und der fehlt mir irgendwie. Sonst läuft ja garnichts hier. Wie suche ich mir genau die Clock aus ? Kann ich einfach den internen Clock vom Oszi im Datenblatt raussuchen und einfach den Pin in SignalTap angeben? Oder brauche ich ne PLL? Oder wie mache ich das damit irgendwas intern mal passiert? Ich habe das so verstaden, das man die PLL verwendet um Clocks bzw. Frequenzen zu teilen. Das heißt wenn ich jetzt wie auf meinem FPGA ein 50MHz oszi habe und ein 8MHz bräuchte dann verwende ich ne PLL oder wie versteht sich das? Vielen Dank schonmal für jede Antwort Gruß Joe91
Joe91 schrieb: > Wie suche ich mir genau die Clock aus ? Das kannst nur du beantworten, denn es kommt auf das an, was in dem Kasten ist. Aber so wie es aussieht braucht dieses Modul trotz der vielen Steuersignale keinen Systemtakt. Mein Vorschlag: simuliere das Interface doch einfach erst mal. Es gibt fast nichts einfacheres, als einen SPI zu simulieren... > Den Chip Select habe ich auf Ground gezogen damit er ständig aktiv ist. Du weißt schon, dass der SlaveSelect (so heißt das beim SPI) auch zur Wortsynchronisation verwendet wird. Je nach Slave-Implementation siehst du erst an der steigenden Flanke des SS eine Reaktion.
Was willst Du eigentlich genau machen? Joe91 schrieb: > ich wollte den de0 Nano als Slave testen. Ich habe den Master erstmal > weggelassen und wollte den Slave mal nur zum laufen bringen. Du willst also das DE0 Nano als SPI Slave betreiben? Und wer soll denn dann was lesen/schreiben? Hat dieser SPI Slave irgendeine Art Inhalt, also Register mit Werten die man lesen/schreiben könnte? Auf den DE0 Nano ist aber sogar schon schicke SPI Hardware drauf, der Beschleunigungssensor ADXL345 http://www.analog.com/media/en/technical-documentation/data-sheets/ADXL345.pdf Wenn der ähnlich funktioniert wie der ADXL362 auf den Nexys4 Board, dann ist das relativ schön einfach. Zur Konfiguration um den Standby zu verlassen muss man ein Register beschreiben hier vermutlich 0x2D und dann kann man in einem Burst 0x32 bis 0x37 lesen um alle drei Beschleunigungswerte zu erhalten.
Hallo zusammen! Vielen Dank zunächst für jede einzelne Antwort! Also meine Gustl B. schrieb: > Du willst also das DE0 Nano als SPI Slave betreiben? Und wer soll denn > dann was lesen/schreiben? Genau, denn nano möchte ich als slave benutzen. Meine Aufgbe ist es von einem hercules microcontroller board per button eine led auf der fpga Seite anzusteuern mit SPI. Und meine Aufgabe ist es die fpga Seite zu konfigurieren. Lothar M. schrieb: > Du weißt schon, dass der SlaveSelect (so heißt das beim SPI) auch zur > Wortsynchronisation verwendet wird. Je nach Slave-Implementation siehst > du erst an der steigenden Flanke des SS eine Reaktion. Daa habe ich nicht so ganz verstanden ? Der ist ja Active Low. Das heißt sobald er auf Ground gezogen wird geht es mit der Kommunikation los. Wie übermitteln man denn genau diesen einen bit zum ansteuern einer LED ? Könntet ihr mir da weiterhelfen? Gruß Joe91
Joe91 schrieb: > Daa habe ich nicht so ganz verstanden ? Der ist ja Active Low. Das heißt > sobald er auf Ground gezogen wird geht es mit der Kommunikation los. Ja. Und eigneltich interessant ist das /Ende/: mit der steigenden Flanke werden die übertragenen Daten übernommen. > Wie übermitteln man denn genau diesen einen bit zum ansteuern einer LED > ? Vorab: bitte nicht Plenken, ein Fragezeichen hat keine eigene Zeile verdient. Wenn es nur eine einzelne LED ist, dann nimmt man nur eine einzelne Leitung, die die Information "on" und "off" überträgt. Dann hat man verglichen mit der SPI-Lösung 2..3 Leitungen eingespart... > Könntet ihr mir da weiterhelfen? Prinzipiell ist die Übertragunslänge eines SPI-Transfers nicht eingeschränkt. Das kann also von 1...n Bits gehen. Allerdings sind die meisten µC byteorienteirt, und deshalb wird mindestens 1 Bate übertragen. Ich würde das zur Übung erstmal komplett asynchron so machen wie dort: http://www.lothar-miller.de/s9y/archives/31-SPI-Slave-im-CPLD.html (du brauchst natürlich nur den Empfang...) Und dann als "richtiges" synchrones FPGA-Design mit einem richtigen Takt wie dort im Beitrag "Re: Erfahrung mit SPI Slave und Spartan 6 FPGA?" (kleiner Tipp: den ganzen Thread ansehen und natürlich wieder nur die Empfangsrichtung implementieren)
:
Bearbeitet durch Moderator
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.