Forum: Mikrocontroller und Digitale Elektronik AVR Rom über USB auslesen


von j.bocht (Gast)


Lesenswert?

Hallo Leute,

ich habe vor in den Rom meines Controllers per Programmierkabel einige 
Messwerte fest abzulegen.
Jetzt komm ich nicht weiter beim Auslesen der Daten über USART. Wie 
stelle ich das am besten an, das ich die Werte mit Visual Basic abrufen 
kann?

von ich (Gast)


Lesenswert?

Wo genau kommst du nicht weiter oder willst du wie viele gleich eine 
Komplettlösung haben??

von j.bocht (Gast)


Lesenswert?

nee, komplettlösung is quatsch. will die lösung entwickeln.

ich schnall die funktion noch nicht ganz.

ich kann ja per usb nur seriell übertragen. die messwerte sind als 
integer im rom hinterlegt.
aber wie greife ich jetzt diese variable vom pc wieder auf. hatte 
gedacht, das ich mit visual basic (vb wegen dem einfachen erstellen von 
forms) per button den wert einlese und einem label zuweise. mit dem 
usart habe ich ja nen virtuellen com port(port 3). aber wie greife ich 
nun an die speicherzelle des wertes auf dem µc zu?

von Otto (Gast)


Lesenswert?

1. Du schreibst im Betreff: USB und später UART - was den nun ?
2. die Meßwerte stehen vermutlich im RAM
3. Lies dazu: http://www.mikrocontroller.net/articles/AVR-Tutorial:_SRAM
4. Du liest in einer Schleife die Inhalte des Speichers
5. und sendest diese dann z. B. über die UART

Otto

von j.bocht (Gast)


Angehängte Dateien:

Lesenswert?

hallo otto, erstmal danke für deine antwort.

die werte habe ich vor, im rom abzulegen unter angabe der 
speicherbereiches, damit auch nach einem neustart die informationen im 
speicher enthalten sind.
ich habe nen avr 2560 gleich mit platine. hab gedacht das usb verbindung 
auf uart basiert (-->siehe bild)??? sorry, weiß noch nicht wie das 
richtig läuft...

von Otto (Gast)


Lesenswert?

Hallo j.bocht,

der USB-Adapter erschein auf Deinem Rechner als COM-Port, so dass Du 
diesen auf dem PC für die Datenübertragung nutzen kannst - z. B. über 
"Hyperterminal".

> damit auch nach einem neustart die informationen im
> speicher enthalten sind.

Wenn Du Werte im ROM bzw. speicherst, werden es immer die selben sein.
Ein AVR hat auch kein ROM, sondern ein Flash. Hier liegt aber 
üblicherweise das Programm. Prinzipiell ist es zwar möglich, dieses zur 
Laufzeit zu ändern, ist aber eher etwas für Fortgeschrittene.

Meßwerte kannst Du aber im EEPROM des Controllers ablegen - da sind 
diese auch nach dem Neustart noch vorhanden.

Gruss Otto

von j.bocht (Gast)


Lesenswert?

hallo otto,

ja genau, den eeprom hab ich eigendlich auch gemeint. dort habe ich 4k 
zur verfügung. kannst du mir noch den übertragungsmechanismus erklären 
wie das genau läuft. habe keine ahnung wie ich das implementieren soll.

gruß j.bocht

von verwirrter (Gast)


Lesenswert?

Trollalarm?

Falls doch nicht,
> kannst du mir noch den übertragungsmechanismus erklären
> wie das genau läuft. habe keine ahnung wie ich das implementieren soll.
In welcher Programmiersprache darf's denn sein?
Für C empfehle ich mal beispielhaft folgendes: 
http://www.nongnu.org/avr-libc/user-manual/group__avr__eeprom.html
Wie Du das ganze per UART loswirst, kannst Du z.B. hier im Wiki 
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#Der_UART 
nachlesen.
Oder habe ich was falsch verstanden?

mfg

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.