Hallo an alle!
Baue jetzt gerade den Laserprojektor wie in der September-06-Ausgabe von
Elektor beschrieben nach!
Der Aufbau ist eigentlich fertig, aber ich habe Probleme, mit dem AVR
über die serielle Schnittstelle und mittels eines Terminal-Programms zu
kommunizieren.
Im Artikel ist von einem Steuermenü die Rede, aber mit welchem Programm
lade ich das vorhandene Programm? Der AVR (Attiny 2313) ist bereits
programmiert!
Die für die Lasershow vorhandenen Dateien (siehe link) sind:
font8x8r INC-Datei
Lasershow TAR-Datei
lscan ASM-Datei
lscan.hex HEX-Datei
Meine Frage bzw. Bitte an euch: Mit welchem Programm (Terminal) muss ich
welche Datei laden, um mit dem Microcontroller kommunizieren zu können.
Für euch Profis wahrscheinlich ideotische Fragen, aber für mich als
Anfänger....
Original-Link:
http://sprite.student.utwente.nl/~jeroen/projects/laserdisp
Wäre euch sehr dankbar, wenn ihr mir einen Tipp geben könntet. Danke im
voraus für eure Bemühungen und mfg Günther
Ist der Controller ist vom Elektor schon fertig geladen geliefert
worden?
Wenn das so ist, mußt Du ihn mit "nichts mehr " laden. Ist das nicht so,
d.h. der Controller ist noch neu und "leer", dann muß die Datei
"Lscan.hex"
in ihn hinein geladen werden.
Ansonsten ersehe ich aus dem Quelltext, daß der Kollege auf 9600 Baud
eingestellt ist und so müßtest Du dann auch Dein Terminalprogramm
einstellen.
MfG Paul
Hallo Paul!
Danke einmal für deine Hilfe! Der Attiny 2313 ist bereits programmiert.
Das Problem liegt darin, mit diesem über ein Terminalprogramm zu
kommunizieren.
Wenn ich dies z.B. mit den Hyperterminal von Windows probiere, stehen
beim Öffnen einer Datei nur die Dateitypen
Sitzungsdateien (*.ht) und Terminaldateien (*.trm) zur Auswahl. Wie
bereits oben aufgelistet, steht aber keine dieser Dateitypen zur
Verfügung!?
Welche der obigen Dateien und wie lade ich nun mit einem
Terminalprogramm? Der programmierte AVR ist ja nur die
Grundvorraussetzung...
Wäre toll wenn mir jemand von euch die (dämlichen) Anfängerfragen
beantworten könnte!? Danke im voraus und mfg günther
Wichtig zu wissen wäre, für was die Dateiendungen stehen. Laut
Wikipedia:
.tar: Dateiarchiv
.inc: Include File, Assembler language, Active Server (Pages) oder PHP
Include Datei
oder: Include File, Pascal, Borland Delphi, C , C++ SourceCode z.
merfachen Wiederverwendung in SourceCodedateien
oder: NetInstall scriptfile
.asm: Assembler-Quellcode oder Pro/E assembly oder Solid Edge Assembly
.hex: Macintosh BinHex 2.0 Datei
zu finden unter:
http://de.wikipedia.org/wiki/Liste_der_Dateiendungen
Kannst Du die .tar-Datei irgendwie entpacken?
> Lasershow TAR-Datei
Das ist eine Archivdatei. Hast du die schon mal ausgepackt und
nachgesehen, was darin ist? Auspacken geht z.B. mit 7-ZIP von
www.7-zip.org
Die anderen Dateien sind zur Programmierung des Attiny und das brauchst
du ja nicht zu machen, wenn du einen bereits programmierten Attiny hast.
Hast du die Kommunikation zwischen Attiny und Hyperterminal bereits
aufgebaut (s.auch Hinweis auf Jeroens Seite), meldet sich der Attiny
schon wie vorgesehen?
Du musst bei Hyperterminal einfach einen beliebigen Namen angeben für
eine .ht-Datei. In dieser Datei werden anschliessend die
Schnittstellenparameter gespeichert, die Du einstellen musst. Versuchs
mal mit 9600, No parity, 8 Datenbits, 1 Stopbit.
Dann kannst Du mit dem AVR kommunizieren. Vielleicht den AVR mal
resetten.
Hast Du die Bemerkung des Autors beachtet betr. vertauschen der Pins?
Hallo Stefan und Severino!
Danke für eure Hilfe.
Ad Severino: Die beiden Pins habe ich bereits getauscht!
Ad Stefan: Werde die Datei mal entpacken!
Melde mich, wenn sich was neues ergibt! Danke nochmals und bis bald,
Günther
Ich habe den Artikel in der Elektor gelesen. Es sind keine weiteren
Dateien zu erwarten; alles soll allein durch manuelle Eingabe innerhalb
von Hyperterminal funktionieren. Der Attiny schickt eine Statusmeldung
und du kannst anfangen durch Eingabe von Kommandos den Hardwareaufbau
einzustellen. Anschliessend gibst du einen paar Zeichen langen Text ein
und der wird dann gross lesbar dargestellt (wenn alles klappt).
Hallo Stefan!
Danke für deine Mühe! Im Elektor-Artikel steht:
... stellen sie eine serielle Verbindung zu ihrem PC her und starten sie
einen Terminal-Elmulator (z.B. HyperTerminal).
Folgende Einstellungen müssen aktiv sein: 9600 baud, keine Parität, 8
Datenbits, 1 Stoppbit, kein Handshaking
Dies alles läßt sich beim Hyperterminal problemlos für eine neue
Verbindung bei Eigenschaften von COM1 einstellen. Dann habe ich einen
leeren Editor vor mir.
Weiter im Text: ... Nun wird das Laserdisplay eingeschaltet. Zunächst
muss der Motor seine Drehzahl erreichen.
Das passiert bei mir nicht viel: Der Laser leuchtet kurz auf und der
Motor läuft nur kurz an und stoppt dann wieder. Danach ist alles
"ruhig".
Elektor-Text: ...Nachdem der Motor seine max. Drehzahl erreicht hat,
wird wahrscheinlich die Fehlermeldung angezeigt, dass der Motor nicht
synchron läuft. Schreiben sie dann im Terminalprogramm ein "i", um den
Fehler zu ignorieren.
Drücken sie anschließend die Escape-Taste, um ins Hauptmenü zu gelangen
...
Anschließend ist noch mehrmals von Menüs (z.B. Menüoption showing times)
die Rede.
Bei mir öffnet sich aber rein gar nichts??!!
Meine Frage: Um in dieses Menü zu gelangen, brauche ich aber deinem
Kommentar zufolge kein Programm im Hyperterminal öffnen?
Werde mich noch ein wenig herumspielen, vielleicht liegt es ja auch am
AVR bzw. dessen Programmierung (hat mir ein Bekannter gemacht).
Danke einmal und wenn jemand noch einen Tipp für mich hätte, wäre ich
ihm sehr dankbar. Bis dann und mfg Günther
>> Meine Frage: Um in dieses Menü zu gelangen, brauche ich aber deinem>> Kommentar zufolge kein Programm im Hyperterminal öffnen?
Nein, brauchst du nicht.
Wenn denn schonmal irgendetwas passiert, scheint der µC ja zu laufen.
Somit kann es doch nur noch ein Fehler in Hardwareaufbau sein.
Günther Janger wrote:
> Das passiert bei mir nicht viel: Der Laser leuchtet kurz auf und der> Motor läuft nur kurz an und stoppt dann wieder. Danach ist alles> "ruhig".
Dann stimmt etwas an der Hardware nicht und Fehlersuche ist angesagt.
Hast du den Hinweis von Jeroen auf seiner Seite und im Elektor-Forum
bzgl. dem vertauschten TX/RX beachtet? Aber das ist hier Nebensache.
http://www.elektor.de/forum/foren-ubersicht/elektor-foren-der-treffpunkt-fur-elektroniker/laserprojektor-09-06.176126.lynkx
Der Motor wird hochgefahren bevor die UART Meldungen kommen (blöder
Programmentwurf ;-). Ich könnte mir vorstellen, dass die Timer nicht
richtig laufen und von denen hängt das Hochfahren (und die
UART-Kommunikation) entscheidend ab.
Frag deinen Bekannten, ob er ausser dem Brennen des HEX-Files auch die
Fuses auf den externen Quarz als Taktquelle gesetzt hat. Wenn der Attiny
noch mit dem lahmen internen RC-Oszillator arbeitet, sind die
Timer-Warteschleifen total ausser Kontrolle.