E-LAB Computers
 

SPI-Treiber SPI-Order MSB

in SPIoutLong möglicher Fehler ?

golf
Benutzer
Avatar
Geschlecht:
Herkunft: Donauwörth
Alter: 73
Beiträge: 270
Dabei seit: 11 / 2009
Betreff:

SPI-Treiber SPI-Order MSB

 · 
Gepostet: 08.04.2016 - 22:52 Uhr  ·  #1
all,
ich habe bisher die ganzen SPI-Ein/Ausgaben fast immer mit Bitbanging gemacht. Der Prozessor war da meist schnell genug. Nun wollte ich doch bei einem Projekt die volle Geschwindigkeit. Da ist mir aufgefallen, daß es bei SPI-Order MSB und SPIOutLong für mich einen Fehler gibt.

Wenn ich im Beispiel SPIOutLongD($01400005) mache, wird bei Order LSB das Longword korrekt ausgegeben, das ergibt dann $A0000280 . Bei Order MSB sollte es $01400005 sein, es wird aber $05004001 gesendet. Oder verstehe ich da was falsch ?

golf


// über SPI-Treiber

Import SPI_D;

SPIorderD = MSB; // SPIorderD = LSB;
SPImodeD = 0;
SPIprescD = 1;
SPI_SSD = PortD, 4;

....

HL := $01400005;
SPIoutLongD(HL);



// über Bit-Bang

excl (AD4350LE); // // LE auf Low

HL := $01400005; // InitAD4350ArrayFrac1[1];
bitz:=31; // Bitzähler, 32 relevante Bits werden gesendet
repeat
AD4350Data := bit(HL,(bitz));
incl (AD4350Clk);//
excl (AD4350Clk);//
dec (bitz);
until bitz=255;

incl (AD4350LE); // LE auf High
Anhänge an diesem Beitrag
$01400005 korrekt  Bit-Bang MSB first.
Dateiname: $01400005 korrekt B … irst.PNG
Dateigröße: 16.14 KB
Titel: $01400005 korrekt Bit-Bang MSB first.
Information: korrekte Ausgabe mit Bitbanging
Heruntergeladen: 303
$05004001 SPI Order MSB
Dateiname: $05004001 SPI Order MSB.PNG
Dateigröße: 19.38 KB
Titel: $05004001 SPI Order MSB
Information: Ausgabe mit SPIOutLong, Order MSB, für mich falsch
Heruntergeladen: 299
$A0000280 SPI Order LSB korrekt.
Dateiname: $A0000280 SPI Order  … rekt.PNG
Dateigröße: 19.66 KB
Titel: $A0000280 SPI Order LSB korrekt.
Information: SPIAusgabe Order LSB, korrekt
Heruntergeladen: 297
golf
Benutzer
Avatar
Geschlecht:
Herkunft: Donauwörth
Alter: 73
Beiträge: 270
Dabei seit: 11 / 2009
Betreff:

Re: SPI-Treiber SPI-Order MSB

 · 
Gepostet: 09.04.2016 - 09:35 Uhr  ·  #2
All,
meine gewünschte Ausgabe läßt jedenfalls mit dem SPI-Treiber doch lösen. Ich habe das nun so geschrieben und dann funktioniert mein Frequenzgenerator wieder wie gewünscht. In gleicher Art sind dann auch 24-Bit SpiOuts lösbar...

HL := $01400005; //InitMax2870ArrayFrac1[1];

excl (Max2870LE); // LE auf Low
SPIoutD(@HL+3,1);
SPIoutD(@HL+2,1);
SPIoutD(@HL+1,1);
SPIoutD(@HL,1);
incl (Max2870LE); // LE auf High

Anghängt hab ich mal 3 Bilder des Projekts, ein Frequenzgenerator, der mit dem MAX2870 bis 6,4 Ghz in 1 kHz Schritten einstellbar ist. Steuerbar über LAN mit dem einwandfrei funktionierendem Wiznet5200 Treiber oder auch über USB. Für das verwendete billige FR4-Material bin ich mit dem Frequenzgang zufrieden.

golf
Anhänge an diesem Beitrag
Spektrum bei 25 Mhz
Dateiname: Generator Spektrum bei 25 Mhz.PNG
Dateigröße: 14.8 KB
Titel: Spektrum bei 25 Mhz
Heruntergeladen: 304
Frequenzgang bis 3 Ghz gemessen
Dateiname: Frequenzgang des Gen …  Ghz.jpg
Dateigröße: 48.92 KB
Titel: Frequenzgang bis 3 Ghz gemessen
Heruntergeladen: 322
Generator mit 4 gleichen Ausgängen ,Teilansicht
Dateiname: Generator 4 Ausgänge …  Ghz.jpg
Dateigröße: 134.14 KB
Titel: Generator mit 4 gleichen Ausgängen ,Teilansicht
Information: billige FR4-Platinen
Heruntergeladen: 291
AVRfan
Benutzer
Avatar
Geschlecht: keine Angabe
Alter: 70
Beiträge: 16
Dabei seit: 11 / 2009
Betreff:

Re: SPI-Treiber SPI-Order MSB

 · 
Gepostet: 09.04.2016 - 14:18 Uhr  ·  #3
Hallo Golf,

tolles Projekt.
Zu SPI-order:
das betrifft nur das einzelne Byte beim Senden.
msBit zuerst oder lsBit zuerst.

Fan
miparo
Moderator
Avatar
Geschlecht:
Herkunft: Germany
Alter: 60
Beiträge: 1022
Dabei seit: 09 / 2007
Betreff:

Re: SPI-Treiber SPI-Order MSB

 · 
Gepostet: 09.04.2016 - 15:25 Uhr  ·  #4
Hallo Golf,
positives liest man ja selten :)

Zitat
einwandfrei funktionierendem Wiznet5200 Treiber
golf
Benutzer
Avatar
Geschlecht:
Herkunft: Donauwörth
Alter: 73
Beiträge: 270
Dabei seit: 11 / 2009
Betreff:

Re: SPI-Treiber SPI-Order MSB

 · 
Gepostet: 09.04.2016 - 16:17 Uhr  ·  #5
Hallo AVRFan,
ok, dann habe ich das doch falsch verstanden. Ich dachte, wenn da ein Longword gesendet wird, daß sich das MSB dann auf das Longword bezieht und nicht nur auf Einzelbytes. So werden die mir bekannten ICs auch programmiert. Aber was solls, ich hab eine funktionierende Lösung gefunden und die Hardware läuft wie geplant.

Hallo Miparo,
ja, als ich das gelesen hab mit der Unterstützung für den W5200, hab ich da gleich welche bestellt und in dem Projekt nun getestet. Der W5200 gefällt mir besser als der W5100. Ich verwende den Treiber ohne Processes, funktionierte hier auf Anhieb, danke.

golf
Nambela1987
 
Avatar
 
Betreff:

Re: SPI-Treiber SPI-Order MSB

 · 
Gepostet: 14.10.2016 - 15:16 Uhr  ·  #6
Zitat geschrieben von golf

All,
meine gewünschte Ausgabe läßt jedenfalls mit dem SPI-Treiber doch lösen. Ich habe das nun so geschrieben und dann funktioniert mein Frequenzgenerator wieder wie gewünscht. In gleicher Art sind dann auch 24-Bit SpiOuts lösbar...

HL := $01400005; //InitMax2870ArrayFrac1[1];

excl (Max2870LE); // LE auf Low
SPIoutD(@HL+3,1);
SPIoutD(@HL+2,1);
SPIoutD(@HL+1,1);
SPIoutD(@HL,1);
incl (Max2870LE); // LE auf High

Anghängt hab ich mal 3 Bilder des Projekts, ein Frequenzgenerator, der mit dem MAX2870 bis 6,4 Ghz in 1 kHz Schritten einstellbar ist. Steuerbar über LAN mit dem einwandfrei funktionierendem Wiznet5200 Treiber oder auch über USB. Für das verwendete billige FR4-Material bin ich mit dem Frequenzgang zufrieden.

golf


Hi golf, I'm Nambela, greeting from Indonesia, would you like to share the pcb layout and schematic?. Thank a alot.

Nambela
golf
Benutzer
Avatar
Geschlecht:
Herkunft: Donauwörth
Alter: 73
Beiträge: 270
Dabei seit: 11 / 2009
Betreff:

Re: SPI-Treiber SPI-Order MSB

 · 
Gepostet: 26.10.2016 - 06:47 Uhr  ·  #7
Hallo Nambela,
sorry, it´s no open source project. i designed it for a company.
but it´s a easy design. pcb 0.8 mm Fr4, rf-track 1.397 mm. at the output a 4x splitter and a AD8319 for power measurement. this all was for a BITE-system.

golf
Gewählte Zitate für Mehrfachzitierung:   0

Registrierte in diesem Thema

Aktuell kein registrierter in diesem Bereich

Die Statistik zeigt, wer in den letzten 5 Minuten online war. Erneuerung alle 90 Sekunden.