Forum: Mikrocontroller und Digitale Elektronik Fehler in der Schaltung für SPI


von Heinz (Gast)


Angehängte Dateien:

Lesenswert?

Guten Abend,
ich habe mir für meine Schüler überlet ein interessantes Projekt für 
Informatik einfallen zu lassen und würde Sie gerne eine MMC Karte 
mittels ATMega32 beschreiben lassen. Diese Ausarbeitung soll im nächsten 
Schuljahr angeboten werden, für den Info-LK zum Aufbau der 
Grundkenntnisse über Dateisysteme und Mikrocontroller-Architektur.

Dafür habe ich mir die MMC/SD Anbindung von Herrn Radig abgekupfert, von
http://www.ulrichradig.de/home/index.php/avr/mmc-sd

Dabei geht es um die Grafik im Anhang, ich habe die Schaltung
genau nach den Vorgaben aufgebaut. Ausgabe auf einem LCD Display läuft 
bereits, leider komme ich nicht in den Programmiermodus, d.h. ich kann 
den Prozessor (Mega32) nicht per PonyProg ansprechen. Das Ponyprog ist 
richtig eingestellt, denn in einer anderen Schaltung läßt sich der 
Mega32 ansprechen (z.b. Fuses lesen).
So jetzt geht meine Vermutung dahin, dass es irgendwo in der Schaltung 
von Herrn Radig nicht möglich ist, den µC anzusprechen...?! Kann es dort 
zu einem Kurzschluss über die Transistoren kommen, wenn eine 
ISP-Programmierung eingeleitet wird ?

In beiden Schaltungen ist ein 16MHz Quarz eingebaut und angeschlossen.

Ich hoffe jemand von Ihnen weiß Rat und kann mir weiterhelfen..

von Hubert.G (Gast)


Lesenswert?

Verwendet das SPI auch die gleichen Pin wie das ISP? In dem Fall kann 
man die SPI-Pin frei wählen.

von Johannes M. (johnny-m)


Lesenswert?

Überleg mal, was mit T8 in dem Schaltplan passiert, wenn programmiert 
wird. Wenn der aufgesteuert ist, dann ist der Pin auf GND und es geht 
gar nichts.

von Heinz (Gast)


Lesenswert?

Guten morgen Hubert,

ja die ISP sitz am gleichen wie der ISP,
also MOSI, MISO, SCK und SS für CS.

Wenn ich R15 raus nehme, dann kann ich mit PonyProg auf den Mega32 
zugreifen (also z.B. Fuses lesen). Ist dieser aber eingebaut, so kommt 
es zu einer Fehlermeldung: Device missing or unknown device(-24)

kann es sein, das dieser R15 zu klein dimensioniert ist und dadurch der 
T8 direkt durchschaltet, sobald die Spannung VCC anliegt? Also das 
Verbindung zwischen VCC über R14 und T8 zu GND kommt und da der R14 nur 
1K groß ist, das Netz SPI_DI (siehe Dateianhang erster Post) ständig auf 
GND liegt und somit es zu dieser Fehlermeldung kommt ??

von Heinz (Gast)


Lesenswert?

Guten morgen auch dir  Johannes M.
war grade diesen Beitrag am schreiben, und jetzt sehe ich Deinen Post.
Ja da hast du recht, das ist mir ja grade auch aufgefallen... gestern 
Abend war es schon sehr spät, da war ich wohl nicht mehr ganz bei der 
Sache...

Also habe ich jetzt die Möglichkeiten:
01) R15 mittels Schalter zu- bzw. wegschalten (bzw. Jumpern)
02) Einen Schalter/Jumper zwischen T8 und GND
03) Software SPI wählen und andere Pins belegen

So am besten gefällt mir natürlich Lösung 03), aber das werde ich erst 
in
der endgültigen Boardschaltung vornehmen, jetzt für die Testschaltung 
entscheide ich mich für Lösung 01), da ich so am einfachsten den R15 
entfernen kann und über einen Schalter (in den vorhandenen Bohrungen) 
zu- bzw. wegschalten kann !

Habt vielen Dank für eure Hilfe,
ich werde weiter über das Projekt/ Fach informieren, sofern dies 
gewünscht ist. Es mag ja sein, das der eine oder andere Schüler eine 
sehr gute Programmierung vorgibt!

von Matthias L. (Gast)


Lesenswert?

>Software SPI

Was???

Das beste ist doch, die SPI-SChnittstelle so zu verschalten, dass BEIDES 
geht:
-ISP Programmierung
UND
-HARDWARE SPI
...

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Also ich hab da bei mir nen TristateBuffer zwischengeklemmt, und den mit 
Reset zusammengeschaltet (HC126/125 einer von beiden glaub ich) das geht 
einwandfrei :)

von Andreas K. (a-k)


Lesenswert?

Pullup (5V) an den Controller-Pin für /CS. Sonst mischt ISP das MMC auf. 
Summe Pullup und R4 <= 47K.

Pullup (3V) 47K an die Basis von T7. Dann stört T8 bei der 
Programmierung nicht. R14 auf 10K erhöhen, die 1K könnten dem ISP zu 
viel abverlangen.

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
Noch kein Account? Hier anmelden.