mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR durch anderen AVR programmieren


Autor: TheMason (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallöchen,

ich hätt da mal ne kurze Frage.
Ich hab vor längerer Zeit mich mal daran versucht einen AVR durch einen 
anderen AVR programmieren zu lassen. Hat auch soweit funktioniert.
Ich hab dabei das Hardware SPI benutzt. Keine größeren Probleme soweit.
Allerdings bekomme ich mit einem Software SPI keine Verbindung hin (also 
der AVR "antwortet" nicht).
Meine kurze Frage ist : Geht das überhaupt mit einem Software-SPI oder 
ist das vorgeschriebene Timing (vor allem der Duty-cycle der Clock) so 
eng das nur ein Hardware-SPI in Frage kommt ?!

Ich frage deshalb weil ich neben dem zu programmierenden AVR noch eine 
SD-Karte angeschlossen habe (liegt nahe oder ? *gg) und wenn ich beides 
nutze (natürlich nicht gleichzeitig :-)) habe ich das Problem das der 
AVR etliche Connect-Versuche benötigt um überhaupt wieder zu reagieren.

Ich hab auch nicht mehr alle Details im Kopf. Mir geht es mehr um die 
Frage ob jemand schonmal mit einer Software SPI einen anderen AVR 
programmiert hat, und ich einfach nur zu doof bin, oder ob es generell 
Probleme mit dieser Konstellation gibt.

Autor: Floh (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
solange du das Timing des HW-SPI mit dem Soft-SPI ungefähr nachbildest, 
muss es funktionieren.
Auch is das Timing bei SPI eigentlich nicht so kritisch.
Was ich mir vorstellen könnte, dass du vlt beim Soft-SPI die 
Taktfrequenz zu hoch gelegt hast. Beim ISP-Betrieb muss die Frequenz 
kleiner als 1/4 der Betriebsfrequenz des zu programmierenden uCs sein.
:-)

Autor: Vlad Tepesch (vlad_tepesch)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
TheMason schrieb:
> Ich frage deshalb weil ich neben dem zu programmierenden AVR noch eine
> SD-Karte angeschlossen habe (liegt nahe oder ? *gg) und wenn ich beides
> nutze (natürlich nicht gleichzeitig :-)) habe ich das Problem das der
> AVR etliche Connect-Versuche benötigt um überhaupt wieder zu reagieren.

wenn du sowieso nicht beides gleichzeitig brauchst, wieso benutzt du 
dann nicht für beides die Hardware-SPI?
Genau dafür gibt es doch die Slave-Select-Leitungen

Autor: TheMason (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@vlad

>wieso benutzt du dann nicht für beides die Hardware-SPI?

Hatte ich angedeutet :

Dann habe ich das Problem das der
AVR etliche Connect-Versuche benötigt um überhaupt wieder zu reagieren.

Wenn ich einen Sektor gelesen hab und danach einen Connect auf den AVR 
machen möchte dauert es mehrere Sekunden bzw versuche ehe der AVR sich 
Connecten lässt. Daher wollte ich SPI für SD und AVR getrennt machen. 
Und die wahl für den SW-SPI fiel dann auf den AVR da dieser ohnehin 
nicht mit Fullspeed programmierbar ist.

Autor: Vlad Tepesch (vlad_tepesch)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
TheMason schrieb:
> Wenn ich einen Sektor gelesen hab und danach einen Connect auf den AVR
> machen möchte dauert es mehrere Sekunden bzw versuche ehe der AVR sich
> Connecten lässt. Daher wollte ich SPI für SD und AVR getrennt machen.
> Und die wahl für den SW-SPI fiel dann auf den AVR da dieser ohnehin
> nicht mit Fullspeed programmierbar ist.

aso, ich dachte das "beides nutze" bezog sich auch SW- und HW-SPI

Autor: Rene B. (themason) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Floh

Die SW SPI kann mit zwei _delay_loop_1 (100) pro Bit denke ich nicht zu 
schnell sein :)), eher zu langsam wenns denn sowas gibt :-)
Meine Frage zielte daher halt so ein bissl darauf ab wie kritisch das 
Timing da ist, vorallem die Setup/Hold-Zeiten zw CLK und MOSI. Das SPI 
im Prinzip relativ unkritisch ist, ist mir schon klar.
Und man sieht es ja auch an den Parallelport-Programmern die unter 
Windows 95/XP/usw laufen :-)
Insofern müsste ich mir die Frage wohl selbst beantworten können. Sprich 
ich bin wohl doch zu blöd :-)


@Vlad
Ne. Hardware SPI war für beides (über mehrere Select Leitungen) 
angedacht. Schade das das so nicht funktioniert hat. Na ja. Werds wohl 
noch hinbekommen, denke ich :-)

Danke Vlad und Floh für die Hilfe.

Autor: Jobst M. (jobstens-de)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
TheMason schrieb:
> Ich hab auch nicht mehr alle Details im Kopf. Mir geht es mehr um die
> Frage ob jemand schonmal mit einer Software SPI einen anderen AVR
> programmiert hat, und ich einfach nur zu doof bin, oder ob es generell
> Probleme mit dieser Konstellation gibt.

Ich programmiere meine AVRs mit einem 8051.
Ein Programmer mit einem ATm48 ist in Planung, dafür fehlt mir 
allerdings im Moment die Zeit.

Das Timing ist absolut unkritisch, solange man nicht zu schnell wird.


Gruß

Jobst

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]
  • [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.