Archiv verlassen und diese Seite im Standarddesign anzeigen : Reset des Boards nach Programmierung mit Flip
Julian84
09.11.2006, 20:04
Hallo.
Bin ein Mikrocontroller Neuling und bin bei den ersten Schritten mit dem Board.
Habe folgendes Problem:
Ich schreibe ein einfaches Programm mit dem printf Befehl und möchte den Text über das Hyperterminal angezeigt haben.
Das Problem ist, dass das Board nach dem Programmieren durch die Flip-Software selbstständig gestartet wird, bevor ich mich mit dem Hyper-Terminal verbinden kann, und dann das Board über die RESET Taste starten kann.
Ich habe schon stundenlang im Internet nach einer Lösung gesucht doch keine gefunden.
Hoffentlich kann mir hier jemand weiterhelfen.
Gruß
Julian
Hallo,
Hyperterminal starten und dann Reset drücken, dann sollte der String doch nochmal
gesendet werden und im Hyperterminal angezeigt werden und du hast nur die erste
Sendung verpasst.
guidob
Julian84
10.11.2006, 13:02
Das habe ich auch gedacht.
Funktioniert aber leider nicht.
Wenn ich den Befehl while (1) zum abschluss des programmes weglasse
wird mir der text wie üblich vortlaufen und wiederholend angezeigt.
Nur leider nicht mit while (1) ... oder er gibt den text zumindest bei erneutem reset nicht neu aus.
Dann überprüfe erstmal die Resetschaltung, kommt mir sonst sehr komisch vor.
Mein Verdacht: wenn du die Endlosschleife (while(1)) wegläßt macht der Kontroller
Unsinn (im nicht programmierten Speicher), bis er wieder beim Reset-Vektor anlangt,
worauf alles von vorne losgeht. Das sollte doch mit dem Resettaster auch gehen?
guidob
Julian84
10.11.2006, 14:46
Das dachte ich eigentlich auch.
Der reset scheint jedoch i.o. zu sein, sonst könnte ich ja garnicht in den Boot-Modus gehen.
Werde mal ein bischen ausprobieren...
Erstmal vielen Dank für die schnellen Antworten!
Julian84
10.11.2006, 17:06
Wenn ich ohne "while (1)" schleife das Board laufen lasse wird der text über das terminal fortlaufen angezeigt, wie üblich!
Wenn ich jetzt aber den reset Knopf drücke (5V an RST pin 44 gemessen)
bleibt der Mikrocontroller stehen und fängt nicht von vorne an. (Zumindest bleibt das Bild im Terminal stehen)
Das Programm mit while Schleife sieht so aus:
#include<stdio.h>
void main (void)
{
/* Ausgabe eines Textes */
printf("Test"); // Ausgabetext: Test#
while (1); // Endlosschleife#
}
ich verstehe nicht so ganz, wo das Problem liegen könnte.
Noch ein paar Ideen:
- Ist beim Reset PSEN freigegeben, sonst startet der Bootloader
- Wie sieht es aus beim Aus- und Einschalten? Geht der Poweronreset?
- Gibt es mit Flip eine Möglichkeit den Chip in seinen Auslieferungszustand
zurückzuversetzen, das würde ich mal probieren.
guidob
Julian84
14.11.2006, 22:04
Ich habe vergessen zu erwähnen, dass ich mit einem USB nach RS232 Converter arbeite, da mein Notebook kein RS232 Port hat.
Gibt es da noch besonderheiten zu beachten?
Habe auf der Seite von Atmel gesehen, dass Flip nur ein paar converter unterstützt. aber das Programmieren ohne while schleife funktioniert ja auch mit meinem.
zu deinen Ideen.
- Ist beim Reset PSEN freigegeben, sonst startet der Bootloader
----Bootloader startet nicht
- Wie sieht es aus beim Aus- und Einschalten? Geht der Poweronreset?
----Auch nach dem Aus/Einschalten startet er nicht neu
- Gibt es mit Flip eine Möglichkeit den Chip in seinen Auslieferungszustand
zurückzuversetzen, das würde ich mal probieren.
----Nein, zumindest habe ich diese nicht gefunden.
Werde mal bei gelegenheit einen rechner mit RS232 Schnittstelle aufsuchen und dort mein Glück versuchen.
Falls das nicht hilft könnte ich mir nur einen Fehler im Mikroprocessor vorstellen.
Gruß Julian
Powered by vBulletin® Version 4.1.7 Copyright ©2012 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.