PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Asuro beim Flashen: Was ist eine page?



traceman9000
11.10.2005, 00:31
Hallo

Ich bin fast Neuling und habe ein paar Fragen zum Flashen
von meinem Asuro:
Liege ich richtig das eine Page ein Byte ist?
Also ganz nach rs232: erst das StartBit dann 1 Byte Daten und dann noch das Stoppbit?
Ich habe mir den USB Sender verniffen weil ich keinen Vorteil darin gesehen habe (ich habe noch gott sei dank noch eine serielle Schnittstelle an meinem Laptop). Ist da die Datenübertragung anders (vielleicht schneller)? Wie läufts da dann ab? Auch 181?

Vielleicht hat ja jemand mal Lust mir die Fragen zu beantworten.

Gruss
Sebastian

m.a.r.v.i.n
11.10.2005, 13:56
Hallo Sebastian,

Beim Flashen wird das Asuro Programm in kleine Häppchen unterteilt, den sogenannten Pages. Eine Page besteht aus 64 Bytes.

Der interne Flash des Asuro ist 8kByte groß, wovon 1kByte für den Bootloader reserviert sind. Ein Asuro Programm kann demnach 7kByte groß sein (das entspricht 112 Pages).

Jede Page wird mit einer Checksumme (CRC16) versehen. Im Fehlerfall wird die entsprechende Page einfach nochmal gesendet (erkennbar an den ccc's beim Flashen)

Die IR/RS232 Schnittstelle wird mit 2400 Baud betrieben, das entspricht einer maximalen Transferrate von 240 Bytes pro Sekunde (2400/(1+8+1))
Auch der USB Transceiver wird mit 2400 Baud betrieben und ist damit theoretisch auch nicht schneller als der IR Transceiver. Allerdings treten wesentlich weniger Übertragungsfehler auf, und damit wird das Programm doch schneller geflasht.
Die Daten werden sowohl beim IR- alsauch beim USB Transceiver immer wie bei RS232 gesendet, 1 Start-, 8-Daten- 1 Stop- Bit.

Alle Klarheiten beseitigt? :wink:

Gruß
Peter

traceman9000
11.10.2005, 19:06
Sehr interresant danke für deine Antwort!
Der Asuro Speicher ist also gar nicht so groß.
Wenn man bedenkt das die asuro.h in der Standard Version schon
4750 Byte hat dann kommt man da wohl schnell an die Grenzen des
Speichers.
Ich habe den IR Empfänger auf ein hochgestelltes Buch gelegt und bekomme
nur anfangs immer(!) zwei CRC Fehler. Danach läuft die Übertragung fehlerfrei.
Vielleicht liegts ja an dem Poti am IR Sender? Mich würde interressieren was man
eigentlich damit eigentlich einstellt.

Gruss
Sebastian

Archi
11.10.2005, 20:40
Hallo Sebastian,

die zwei CRC-Fehler am Anfang sind normal. Manchmal ist's auch nur einer. Auch der Software-Entwickler konnte mir nicht genau sagen, woher die kommen...
Das Poti ist für die Modulationsfrequenz zuständig, Also wie beim Radio die Einstellung der Sendefrequenz.

DIe asuro.h (und die asuro.c) liegt in menschenlesbarem C-source vor. In Maschinensprache übersetzt wird's erheblich kleiner.

CU, Robin

Vogon
11.10.2005, 22:14
Ich habe auch den USB Transceiver.
Bei mir ist, anders als bei @m.a.r.v.i.n die normale Serielle-IR besser als die USB.
Ich habe meistens beide in betrieb. Die normale an COM1, da besser, zum flashen, die andere als COM15 mit HyperTerminal. Deshalb brauche ich das Terminal nicht zu schließen wenn ich flashen möchte. Beim flashen sehe ich "müll" im Monitor aber das stört weder den Programmiervorgang und mich auch nicht.