Hi ich hab folgendes Problem. Ich habe dieses Board vor mir http://www.stud.fh-hannover.de/~kuhs/537/mexs.htm Und hab mir ein Programm im Keil geschrieben. Das File wird als .a51 abgespeichert. Zusätzlich wird mir ein HEX - 80 File erzeugt. Will ich das File via Flip laden sagt mir Flip. Couldnot open File. Was mache ich falsch? Danke
Hab ich in den Release-Notes gefunden: KNOWN BUGS AND LIMITATIONS -------------------------- - batchisp HEX files pathnames should contain neither spaces, nor accentuated characters. Hast du vllt. Leerzeichen oder Umlaute im Pfad zum hex-file?
Hi. Ja die hatte ich. Jetzt hab ich das a51 File direkt auf C: gelegt und schon geht :) Vielen Dank. Daran hab ich nicht gedacht. Wo hast du den Bug-Report gefunden?
Ich hatte das gleiche Problem, aber jetzt gelöst. Vielen Dank!!! Aber........ Das Programm habe ich nun mit FLIP übertragen, aber kann es nicht ausführen. Ich habe das USB-Flashboard von "elektor". http://www.elektor.de/products/kits-modules/kits/070125-71-usb-flash-board.271292.lynkx Wie gesagt, das Programm habe ich übertragen, ohne Fehler. Ich halte mich dann genau an die Anweisungen. Nachdem ich RUN gedrückt habe wird das Programm übertragen. Jumper 2 wieder in die RUN-Stellung bringen und RESET drücken (S1). Das Programm sollte nun laufen. Es handelt sich um ein ganz einfaches Programm: Eine LED soll blinken. Es tut sich aber nix. Muss ich außer den angesprochenen Sachen noch irgendwas beachten? MfG Blacky27
Das kann tausend Ursachen haben, die wahrscheinlich nichts mit Flip zu tun haben. Zeig uns mal Dein Programm und auch die Projekt- und Linkereinstellungen. Läuft es im Simulator?
Das Programm sieht folgendermaßen aus. Ganz einfach, da wir noch am Anfang stehen. Es soll nur eine LED im sekundentakt blinken. Die HEX-Datei wird auch erzeugt (0 errors, 0 warnings). Da ich noch in den Kinderschuhen stecke..... Was soll ich denn für die Projekt- und Linkereinstellungen posten? Simulator???? Wir haben das Programm nur im Debugger-Modus laufen lassen. counter equ R7 LED equ P0.0 ;--------------------------- code_s segment code cseg at 0000h ljmp main org 000Bh ljmp Timer0 org 0100h rseg code_s ;---------------------------- main: mov TMOD,#1 ; 16 Bit Modus mov TH0,#0x3C mov TH0,#0xB0 setb ET0 ; Freigabe Timer0 setb EA ; Allg. Int Freigabe setb TR0 ; Timer starten mov counter,#20 ;--------------------------- Loop: nop nop sjmp loop ; Leerlaufprozess ;--------------------------- Timer0: clr TR0 mov TH0,#0x3C mov TL0,#0xB0 setb TR0 ; Timer starten djnz Counter,Fertig mov counter,#20 cpl LED ; blinken Fertig: reti ; fertig ;---------------------------- end
Siehe da.... einen Fehler habe ich schon gefunden. Zeile 16 muss heißen "mov TL0,#0xB0" Ich hab' das Programm mal im Debugger laufen lassen. Der Timer zählt hoch, aber bei Port 0.0 tut sich nix. Ich habe dazu mal bei KEIL die Fenster Timer0 und Port0 aufgerufen. Da kann man ja schön verfolgen wei der Timer zählt. Nach Ablauf der Zeit verzweigt das Programm auch nach Timer0, setzt den Timer wieder auf den Startwert und startet ihn erneut. Dann sollte aber auch noch die LED leuchten, bzw. nicht leuchten. Da tut sich nix und meine Kentnisse sind da auch am Ende. Ich hoffe mir kann da jemand helfen!!! MfG Blacky27
Ich habe mich jetzt etwas in das Programm eingearbeitet. Also wenn ich im Debugger-Modus auf RUN klicke funktioniert das Programm. Port0.0 blinkt, so wie es sein soll. Der Timer muss ja auch erst 20x durchlaufen werden. >> djnz Counter,Fertig << Je länger man mit dem Programm arbeitet, desto mehr kapiert man, gg. Trotzdem blinkt bei meinem Board noch nix. Irgendwas hängt dann bei der Übertragung auf mein Board, bzw. bei der Ausführung. Hoffentlich habe ich nix falsch eingelötet. Das wird sonst ne Riesenfehlersuche. Keine Lust!!! MfG Blacky27
> Also wenn ich im Debugger-Modus auf RUN klicke funktioniert das Programm. Mit Debugger meinst du den Keil Simulator, oder? Debugger und Simulator sind zwei völlig unterschiedliche Sachen, deswegen frag ich. > Port0.0 blinkt, so wie es sein soll. Okay. Setze bei CPL LED einen Breakpoint. Lass das Programm bis zum BP laufen. Dann notierst du die Zeit die vergangen ist (siehst du links im Fenster). Dann lässt du das Programm nochmal durchlaufen, notierst die Zeit wieder und errechnest die Differenz. Wenn dieser Wert dem Wunschwert entspricht, sollte es eigentlich auch auf dem Board laufen - es sei denn, man muss beim RB2 die Ports noch speziell konfigurieren. > Irgendwas hängt dann bei der Übertragung auf mein Board, bzw. bei der > Ausführung. Die Aussage ist zu wage. Du lädst mit FLIP runter? Hast du nach dem Download das Programm gestartet (RUN APPLICATION)? Prüf auch das BootloaderJump-Bit, ansonsten läuft der Controller evtl. wieder in den Bootloader. > Hoffentlich habe ich nix falsch eingelötet. Das wird sonst ne > Riesenfehlersuche. Quatsch, bei dem Pilleboard haste einen Lötfehler recht schnell gefunden, denke ich. Wenn FLIP den Controller akzeptiert, läuft der ja schonmal, dann bleibt ja so gesehen nicht mehr viel übrig. Ralf
Fehler gefunden. Hatte JP1 vergessen zu setzen, deshalb hatten meine LEDs auch keine Spannung. Einen großen Vorteil hat aber die Fehlersuche >>> man lernt das Programm zu verstehen. MfG Blacky27
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.