USB an Xmega

TheBeginner
Schreiberling
Avatar
Geschlecht: keine Angabe
Herkunft: Wunsiedel Bayern
Alter: 68
Beiträge: 776
Dabei seit: 06 / 2013
Betreff:

Re: USB an Xmega

 · 
Gepostet: 14.09.2015 - 21:02 Uhr  ·  #17
miparo, die Leitungen sehen sauber aus, ist kein Kurzschluss drauf.
Aber ich habe einige Schaltungen unter google gefunden, die haben 10uF
und noch einen 100nF am Card-Reader sitzen.

Ich habe meine Platine auch jetzt umgelötet auf HW SPI
aber bei FAT16 = SPI_C, PortC.4, iData; ist mir noch nicht so die Pin belegung klar.

In den Schaltungen die ich gefunden habe, haben die den CS Pin von einem anderen Port ?
zb.
PC5 Mosi
PC6 Miso
PC7 SCk
PF5 CS

Ich habe es so angeschlossen ( bei FAT16 = SPI_C, PortC.4, iData; )
PC4 SS -> SD-Pin1
PC5 MOSI ->SD-Pin2
PC6 MISO ->SD-Pin7
PC7 SCK ->SD-Pin5

Gruß Frank
Harry
Moderator
Avatar
Geschlecht:
Herkunft: zwischen Augsburg und Ulm
Alter: 60
Beiträge: 2155
Dabei seit: 03 / 2003
Betreff:

Re: USB an Xmega

 · 
Gepostet: 14.09.2015 - 21:11 Uhr  ·  #18
Hi Frank,

nach dem hab ich angeschlossen (siehe Bild).

Harry
Der an diesem Beitrag angefügte Anhang ist entweder nur im eingeloggten Zustand sichtbar oder die Berechtigung Deiner Benutzergruppe ist nicht ausreichend.
miparo
Schreiberling
Avatar
Geschlecht:
Herkunft: Germany
Alter: 59
Beiträge: 988
Dabei seit: 09 / 2007
Betreff:

Re: USB an Xmega

 · 
Gepostet: 14.09.2015 - 21:19 Uhr  ·  #19
Scau dir mal die VCC Spikes ganz unten an.

Info
TheBeginner
Schreiberling
Avatar
Geschlecht: keine Angabe
Herkunft: Wunsiedel Bayern
Alter: 68
Beiträge: 776
Dabei seit: 06 / 2013
Betreff:

Re: USB an Xmega

 · 
Gepostet: 15.09.2015 - 06:32 Uhr  ·  #20
Guten morgen,

@miparo, das ist eine sehr gute Seite, ich suche mal meine
besten Kondensatoren zusammen :-)


@Harry, so wie ich das aus Schaltpläne aus dem Internet gesehen habe, geht
PC5-MOSI an MOSI-Pin2-SDCard
PC6-MISO an MISO-Pin7-SDCard

Ist das nicht ein dreher ? Ich dachte immer MISO an MOSI u. MOSI an MISO .?

Gruß Frank
Der an diesem Beitrag angefügte Anhang ist entweder nur im eingeloggten Zustand sichtbar oder die Berechtigung Deiner Benutzergruppe ist nicht ausreichend.
Harry
Moderator
Avatar
Geschlecht:
Herkunft: zwischen Augsburg und Ulm
Alter: 60
Beiträge: 2155
Dabei seit: 03 / 2003
Betreff:

Re: USB an Xmega

 · 
Gepostet: 15.09.2015 - 09:10 Uhr  ·  #21
Zitat geschrieben von TheBeginner

Ist das nicht ein dreher ? Ich dachte immer MISO an MOSI u. MOSI an MISO .?

Moin Frank,

da meines Wissens MISO "Master In/Slave Out" und MOSI "Master Out/Slave In" bedeutet und dein Master nun mal Master ist und bleibt, wird das nicht gekreuzt.

Gruss
Harry
TheBeginner
Schreiberling
Avatar
Geschlecht: keine Angabe
Herkunft: Wunsiedel Bayern
Alter: 68
Beiträge: 776
Dabei seit: 06 / 2013
Betreff:

Re: USB an Xmega

 · 
Gepostet: 15.09.2015 - 09:36 Uhr  ·  #22
Moin Harry, unser miparo hatte recht..es fehlten die (Richtigen) Kondensatoren.
Zwei sehr gute 100uf und 10uf eingelöetet.
Und siehe da der USB Port Resetet sich nicht mehr neu.


Jetzt habe ich mir ein ganz kleines TestProgramm am PC gebaut um zu testen

1. F16_CheckDisk sagt immer ja ob was steckt oder nicht
2. F16_DiskInit sagt immer nein
3. F16_DiskReset sagt ja, erst nach F16_CheckDisk, nicht gesteckt sagt nein.
4. F16_DiskFormat sagt ja erst nach F16_DiskReset, nicht gesteckt sagt nein
Code

//##############################################################################
Procedure Check_MMC;
Begin
  bool:= false;
  bool := F16_CheckDisk;
  if bool then
     Write(SerOutCDC, 'ja  F16_CheckDisk');
  else
     Write(SerOutCDC, 'nein F16_CheckDisk ');
  endif;
end Check_MMC;
//##############################################################################
Procedure Disk_init_MMC;
Begin
  bool:= false;
  bool := F16_DiskInit;
  if bool then
     Write(SerOutCDC, 'ja F16_DiskInit');
  else
     Write(SerOutCDC, 'nein F16_DiskInit ');
  endif;
end Disk_init_MMC;
//##############################################################################
Procedure Disk_Reset_MMC;
Begin
  bool:= false;
  bool := F16_DiskReset;
  if bool then
     Write(SerOutCDC, 'ja F16_DiskReset');
  else
     Write(SerOutCDC, 'nein F16_DiskReset');
  endif;
end Disk_Reset_MMC;

//##############################################################################
Procedure Disk_Format_MMC;
Begin
  bool:= false;
  bool := F16_DiskFormat;
  if bool then
     Write(SerOutCDC, 'ja Format');
  else
     Write(SerOutCDC, 'nein Format');
  endif;
end Disk_Format_MMC;


Hätte nie gedacht das ich damit so viel Probleme habe. :-(




Gruß Frank
miparo
Schreiberling
Avatar
Geschlecht:
Herkunft: Germany
Alter: 59
Beiträge: 988
Dabei seit: 09 / 2007
Betreff:

Re: USB an Xmega

 · 
Gepostet: 15.09.2015 - 11:36 Uhr  ·  #23
Moin Frank,
sagte ich doch :)

Die normale Reihenfolge NUR zum initilalisieren der Karte ist:

F16_DiskInit;
F16_DiskReset;
F16_CheckDisk;

Danach darfst du diese Funktionen nicht wieder aufrufen.

Zum testen ob die Karte da ist bitte den "Card In " Kontakt benutzen.
Code

Var 
   CardPres[@PinA, 4] : bit; 
function CardMiss : boolean; 
begin
  return(CardPres); 
end;


und dann nur CardMiss abfragen.
TheBeginner
Schreiberling
Avatar
Geschlecht: keine Angabe
Herkunft: Wunsiedel Bayern
Alter: 68
Beiträge: 776
Dabei seit: 06 / 2013
Betreff:

Re: USB an Xmega

 · 
Gepostet: 15.09.2015 - 11:55 Uhr  ·  #24
Moin miparo, du kennst ja meinen Code, wie gesagt ich habe mir ein kleines TestProgramm am Computer gebaut und sende halt einen Char zum uC und dann gehts in die init Procedure.
Aber dabei bekomme ich immer false zurück ???

Code

Procedure Disk_init_MMC;
Begin
  bool:= false;
  bool := F16_DiskInit;
  if bool then
     Write(SerOutCDC, 'ja F16_DiskInit');
  else
     Write(SerOutCDC, 'nein F16_DiskInit ');
  endif;
   mDelay(300);
end Disk_init_MMC;


Und genau das verstehe ich nicht.?
ABER wenn ich nach F16_DiskInit mache, bekomme ich auf F16_DiskReset true und F16_DiskFormat true, was sonst nur false liefert.

selbst nach

F16_DiskInit; <-- immer false
F16_DiskReset;
F16_CheckDisk;
bekomme ich nach F16_GetDiskSize; einen wert von 500736 zurück.

Ich verstehe nur noch bahnhof ??

Gruß Frank
Gewählte Zitate für Mehrfachzitierung:   0

Registrierte in diesem Topic

Aktuell kein registrierter in diesem Bereich

Die Statistik zeigt, wer in den letzten 5 Minuten online war. Erneuerung alle 90 Sekunden.
MySQL Queries: 15 · Cache Hits: 14   139   153 · Page-Gen-Time: 0.043065s · Speichernutzung: 2 MB · GZIP: ein · Viewport: SMXL-HiDPI