Hallo NG, hab ein Flash Board mit 89S8252 (8051-er) und möchte erstmal ein printf("Hello World") zum laufen bringen...leider tut's nicht. ..(hat jemand ein kl. Hex-File zum testen?) .. -Hab das Progrämmchen mit KeiluVison2 (Demo) uebersetzt und lade das Hex-File zum Target. - Dann starte ich Hyperterm mit 9600,8,N,1, resette den uController und sollte doch nun den String auf dem PC sehen. An dem Hex-File ist seltsam, daß es nicht bei Adr. 0000 aufsteigend beginnt, sondern so: ..0C27..Codezeile1 ..0C1D..Codezeile2.. ..0000..usw.. ..0C11 ..0800 ..0810 hab ich da was falsch kompiliert? Bin für jeden Hinweis dankbar! Gruß Ulli
Hallo Ulli, die Demo Version des Keil Compilers linkt das Programm nicht nach 0x0000 sondern meines Wissens ab 0x800. "Programs start at offset 0x0800. Programs generated with the evaluation software may not be programmed into single-chip devices with less than 2K Bytes of on-chip ROM."(steht in der Keil Knowledgebase- hab gerade mal nachgesehen). Ich kann Dir aber momentan nicht sagen, wie man das Programm zum Laufen bringt. Schick mir doch mal deine Sourcen und das von der DEMO erzeugte Hexfile. Ich habe eine gekaufte Version des Keil C51. Werde das damit mal compilieren und vergleichen. Mal sehen ob ich Dir helfen kann. Gruß WAL
Hai WAL, bin jetzt weitergekommen.. Im c-File fehlten diese Zeilen: SCON=0x52; TMOD |=0x20; TH1=0xfd; TR1=1; TI=1; jetzt seh ich im HyperTerm auch die Ausgabe... Lese mich noch in die Keil-C51Doku ein, sind über 400 Seiten..stöhn Danke für Deine Hilfe! Gruß Ulli
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.