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.
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. :-)
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
@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.
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
@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.
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
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.