Hallo Leute, folgende Konstellation: - A96021000b-Board (also eines der ersten Atmel-Billigdingens) - avra bzw. tavrasm unter Linux - Flashen via uisp Letzteres scheint irgendwie nicht sauber zu lauefn. Ich flashe so: [naumannu@meiner Ledtest]$ uisp -dprog=avr910 -dpart=auto -dserial=/dev/ttyS0 -dspeed=19200 --upload if=Ledtest.hex -v=3 --hash=32 Programmer Information: Software Version: 7.1, Hardware Version: 0.0 Address Auto Increment Optimization Enabled Trying with: AT90S1200 rev. C Vendor Code: 0x1e Part Family: 0x90 Part Number: 0x01 Atmel AVR AT90S1200 is found. Page Write Disabled FLASH Write Delay (t_wd_flash): 11111 us EEPROM Write Delay (t_wd_eeprom): 11111 us Retrying with better match: AT90S1200 Vendor Code: 0x1e Part Family: 0x90 Part Number: 0x01 Atmel AVR AT90S1200 is found. Page Write Disabled FLASH Write Delay (t_wd_flash): 11111 us EEPROM Write Delay (t_wd_eeprom): 11111 us Uploading: flash # (total 18 bytes transferred in 0.23 s (79 bytes/s) [naumannu@meiner Ledtest]$ Beim Verify kommt dann folgendes: [naumannu@meiner Ledtest]$ uisp -dprog=avr910 -dpart=auto -dserial=/dev/ttyS0 -dspeed=19200 --verify if=Ledtest.hex -v=3 --hash=32 Programmer Information: Software Version: 7.1, Hardware Version: 0.0 Address Auto Increment Optimization Enabled Trying with: AT90S1200 rev. C Vendor Code: 0x1e Part Family: 0x90 Part Number: 0x01 Atmel AVR AT90S1200 is found. Page Write Disabled FLASH Write Delay (t_wd_flash): 11111 us EEPROM Write Delay (t_wd_eeprom): 11111 us Retrying with better match: AT90S1200 Vendor Code: 0x1e Part Family: 0x90 Part Number: 0x01 Atmel AVR AT90S1200 is found. Page Write Disabled FLASH Write Delay (t_wd_flash): 11111 us EEPROM Write Delay (t_wd_eeprom): 11111 us Verifying: flash #flash error at address 0x0: file=0x0f, mem=0x00 flash error at address 0x1: file=0xef, mem=0x81 flash error at address 0x2: file=0x07, mem=0x00 flash error at address 0x3: file=0xbb, mem=0x81 flash error at address 0x4: file=0x08, mem=0x00 flash error at address 0x5: file=0xbb, mem=0x81 flash error at address 0x6: file=0x0a, mem=0x00 flash error at address 0x7: file=0x95, mem=0x81 flash error at address 0x8: file=0x1a, mem=0x00 flash error at address 0x9: file=0x95, mem=0x81 flash error at address 0xa: file=0xf1, mem=0x00 flash error at address 0xb: file=0xf7, mem=0x81 flash error at address 0xc: file=0x2a, mem=0x00 flash error at address 0xd: file=0x95, mem=0x81 flash error at address 0xe: file=0xe1, mem=0x00 flash error at address 0xf: file=0xf7, mem=0x81 flash error at address 0x10: file=0xf9, mem=0x00 flash error at address 0x11: file=0xcf, mem=0x81 (total 18 bytes transferred in 0.44 s (41 bytes/s) [naumannu@meiner Ledtest]$ Und die Programme laufen dann auch nicht. Wo liegt mein Denkfehler? Ich hatte hier noch einen Controller mit dem Testprogrämmelchen rumliegen, der lief sofort auf dem Board. Verify ging da aber genauso schief.
Probier mal vorher das Flash zu löschen, dann nochmal programmieren. Ich kann bei mir auch das Löschen beim Brennen abschalten, dann stimmt das Verify nicht mehr (weil man eben nur Nullen programmieren kann, keine Einsen).
Alternativ mal avrdude probieren. Ich kann mich an Zeiten erinnern, da der AT90S1200 von uisp gar nicht bedienbar war (dieser AVR hat ein paar besondere Macken im ISP-Protokoll im Vergleich zu allen neueren AVRs).
Hm, danke erst mal. Löschen vorher hatte ich schon versucht. avrdude funzt auch nicht, da hängt sich der Programmer weg beim Flashen direkt bevor der Code geschrieben wird (also bei 0%). Ich denke mal die Hardware hat einen Treffer und werde jetzt mal einen Mini-Programmer für den Parallelport zusammenlöten. Gruß Uwe
Ich werde noch irre hier. Also, ich habe heute mal (wenn auch widerwillig) das vorhandene Windows2K gebootet, mir AVRStudio 3.56 installiert und eine der mit avra erzeugten Hexfiles via AVRProg auf das Atmel-Billigboard samt AT90S1200 losgelassen. Und siehe da es läuft auf Anhieb, mit allen 4 getesteten Controllern. Unter Linux scheint das Löschen sowohl mit uisp als auch mit avrdude zu klappen, selbst via avrdude im Terminalmode kann ich auf das Board zugreifen und es meldet sich auch korrekt.Auch verschiedene Controllertypen (1200/2313) werden von beiden Tools korrekt erkannt. Nur Flashen geht bei beiden Programmen in die Hose: - uisp läuft ohne Fehler durch, der Controller läuft aber hinterher nicht. Beim Verify kommen auch Fehler, sieht so aus als wäre nicht geflasht worden. uisp -dprog=avr910 -dpart=auto -dserial=/dev/ttyS1 -dspeed=19200 --upload if=Ledtest.hex - avrdude semmelt mit folgender Meldung ab: [naumannu@meiner Ledtest]$ avrdude -p 1200 -c avr910 -P /dev/ttyS1 -D -V -U flash:w:Ledtest.s Found programmer: Id = "AVR DEV"; type = S Software Version = 7.1; Hardware Version = 0.0 Programmer supports the following devices: Device code: 0x12 = (unknown) Device code: 0x13 = AT90S1200 Device code: 0x86 = (unknown) Device code: 0x38 = AT90S8515 avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.01s avrdude: Device signature = 0x01901e avrdude: reading input file "Ledtest.s" avrdude: input file Ledtest.s auto detected as Motorola S-Record avrdude: writing flash (18 bytes): Writing | | 0% 0.00savrdude: serial_recv(): programmer is not responding [naumannu@meiner Ledtest]$ Ist für das A96021000b-Board evtl. avr910 die falsche Einstellung?
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.