Forum: Mikrocontroller und Digitale Elektronik AVR ISP zur PC <-> Controller Kommunikation


von Stefan V. (vollmars)


Lesenswert?

Hallo alle,

ich habe folgenden Standardaufbau:

PC <-> AVR-ISP-Stick <-> Controller-Bord mit ATmegaxx

oft habe ich zusätzlich die Notwendigkeit Daten zwischen PC und dem 
Controllerboard auszutauschen, wie üblich über die Serielle.
Der Aufbau sieht dann folgendermaßen aus:

PC <->   AVR-ISP-Stick   <-> Controller-Bord mit ATmegaxx
   <-> USB-RS232-Adapter <->

Meine Überlegung ist jetzt, ich nehme die ISP/SPI Schnittstelle als 
Kommunikationsport und spare mir die zusätzliche Serielle?
Gibts da schon was in die Richtung?
Wenn ich das richtig sehe, sollte das ohne zusätzliche Hardware in 
Software machbar sein?

Gruß Stefan

von Christian U. (z0m3ie)


Lesenswert?

Nein, das geht nicht. ISp ist keine Kommunikationsschnittstelle, darüber 
kann man wirklich "nur" flashen.
Das USB Avr Lab (www.ullihome.de) hat auf dem 10-poligen ISP Stecker 
eine RS232 herausgeführt wenn du die auf deinen Layouts gleich so mit 
hineinbaust kannst du direkt über den Adapter debugnarichten o.ä. 
austauschen.

lg
Christian

von Stefan V. (vollmars)


Lesenswert?

Hallo Christian,

die ISP_Schnittstelle verwendet die gleichen PINs wie die SPI 
Schnittstelle.
Wenn der AVR läuft lassen sich dadurch selbstverständlich Daten 
austauschen, im einfachsten Fall ist das AVR-SPI im Slavemode und SS_ 
ist dauerhaft auf Masse genagelt.
Geht das so oder hab ich einen Denkfehler?

Gruß Stefan

von pi (Gast)


Lesenswert?

Stefan V. schrieb:
> Geht das so oder hab ich einen Denkfehler?

Das geht an sich so. Du brauchst dann aber noch einen Konverter auf SPI, 
den Du an den PC anschliessen kannst.
Aber Du wolltest doch was sparen.

Dann schreibst Du noch:

Stefan V. schrieb:
> wie üblich über die Serielle.

Das ist widersprüchlich.

von Stefan V. (vollmars)


Lesenswert?

pi schrieb:
> Das geht an sich so. Du brauchst dann aber noch einen Konverter auf SPI,
> den Du an den PC anschliessen kannst.
> Aber Du wolltest doch was sparen.
>
Der ISP-Programmer ist der SPI-Konverter.
> Dann schreibst Du noch:
>
> Stefan V. schrieb:
>> wie üblich über die Serielle.
>
> Das ist widersprüchlich.
Zur Zeit mache ich sowas mit der Seriellen, diese möchte ich durch SPI 
ersetzen.

Gruß Stefan

von Christian U. (z0m3ie)


Lesenswert?

Ja das geht so, müsste man noch in die Firmwares einpflegen aber wär 
teoretisch kein Problem, Richtung PC könnts dann wie ne Serielle 
Schnittstelle aussehn.

von pi (Gast)


Lesenswert?

Stefan V. schrieb:
>> Das geht an sich so. Du brauchst dann aber noch einen Konverter auf SPI,
>> den Du an den PC anschliessen kannst.
>> Aber Du wolltest doch was sparen.
>>
> Der ISP-Programmer ist der SPI-Konverter.

Welchen AVR-ISP-Stick hast Du denn. Möglicherweise kann man die Firmware 
ändern. Aber ISP ist nicht das selbe wie SPI.

Stefan V. schrieb:
>> Dann schreibst Du noch:
>>
>> Stefan V. schrieb:
>>> wie üblich über die Serielle.
>>
>> Das ist widersprüchlich.
> Zur Zeit mache ich sowas mit der Seriellen, diese möchte ich durch SPI
> ersetzen.

Was nichts daran ändert das Du Dir selbst widersprichst. Denn erstens 
dadurch sparst Du nichts. Du kannst zwar die serielle Schaltung auf dem 
Target weglassen, brauchst aber einen seriell auf SPI konverter. Und 
zweitens ist SPI nicht gleich seriell.

von Stefan V. (vollmars)


Lesenswert?

pi schrieb:
> Welchen AVR-ISP-Stick hast Du denn. Möglicherweise kann man die Firmware
> ändern. Aber ISP ist nicht das selbe wie SPI.

ISP verwendet das SPI-Protokoll, wenn ich die Atmel Doku richtig lese.

> Was nichts daran ändert das Du Dir selbst widersprichst. Denn erstens
> dadurch sparst Du nichts.

Ich spare mir die zusätzliche Anbindung zwischen Controller und PC über 
die Serielle.

> Du kannst zwar die serielle Schaltung auf dem
> Target weglassen, brauchst aber einen seriell auf SPI konverter.

Wozu?

Und
> zweitens ist SPI nicht gleich seriell.

Ach so.

Gruß Stefan

von Christian U. (z0m3ie)


Lesenswert?

naja ich hab darauf das ISP die SPI Schnittstelle verwendet noch nie 
einen Hinweis gefunden, und einige Controller benutzen auch nicht die 
selben Pins wie die SPI zum ISP programmieren, von daher bin ich mir da 
auch nicht ganz sicher. Bei vielen Controllern würde das aber schon 
funktionieren.

von Stefan V. (vollmars)


Lesenswert?

Die Kleinen bis zum 40/44-poligen Gehäuse benutzen, soweit ich gesehen 
habe die gleichen Pins wie das SPI.
Die Lösung mit der Seriellen auf dem ISP-Stecker hab ich auch schon 
benutzt, hat den Nachteil, dass zwei weitere Pins verbraucht werden.
@Christian: Die Schaltbilder auf deiner Homepage sind kaum zu lesen, da 
das Grau so blass ist.

Gruß Stefan

von Christian U. (z0m3ie)


Lesenswert?

Macht bei mir keine Probleme, vllt stellt dein PDF Reader das etwas 
falsch dar oder dein Farbprofil vom Monitor ist nicht so dolle, hör auch 
zum ersten mal diese Beschwerde.

lg
Christian

von Stefan V. (vollmars)


Lesenswert?

Ich hab mir den Schaltplan jetzt mal mit dem acroreader angesehen, auch 
auf einem anderen PC. In optimaler Blickrichtung ist es gerade noch ok, 
aber ich finde es auf jeden Fall anstrengend, gerade ein Schaltplan 
sollte doch optimal lesbar sein.

Gruß Stefan

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.