Open source programator

Jan Waclawek konfera@efton.sk
Čtvrtek Říjen 2 23:47:37 CEST 2008


Mno...

Takze prvy aspon ako-tak podporovany obvod je Am29F040. Co je hned na uvod prvy problem, lebo je to 512kB, takze bolo treba zaviest strankovanie (ten "intelhexoidny" protokol nepodporuje viac nez 64kB); ja viem, spravne to mal byt "LBA" zaznam 04, ale chcel som zachovat co sa len da, takze som pouzil zaznam 02 (to u tej Philipsovskej 'RD2 je nastavenie frekvencie oscilatora, co bol aj tak len prezitok z 'RD+). Ale zato nie su lockbity a fuses a viac oblasti pamate, takze zasa o to je to jednoduchsie.

Proste, aby som to skratil, dole nasleduje zoznam implementovanych prikazov. Nemal by byt problem vysomarit sa z toho, od tej 'RD2 sa to zase tak moc nelisi.

Bude aj schema, ale zatial som sa este nedostal k zbastleniu zdrojov (takze nie su ani implementovane citanie ID samotneho obvodu a stav security - to su tie zaznamy typu 05, data 01xx a 07xx - tie potrebuju 12V). Takze momentalne je to len klasicke zapojenie '51 na 22.1184MHz, s externou pamatou; najvyssie adresy A16-A18 su na P1.5-P1.7, /CE je na P1.0 a /OE a /WE su tam kde maju byt (/RD a /WR). Plus samozrejme MAX232 pre seriak, a pozor, teraz pride sok, obycajny 10uF kondik ako reset...  Ak si to niekto chce skusit tak ako to je, napiste mi sukromne, poslem ten nedovareny firmware.

Mno, tak, nadsenci, hura na ten Linuxovsky software! ;-)

wek

PS. Zacal som nacrtavat aj ten konfigurak ale uz je neskoro a treba ist spat...

---


;implemented intelhex-like records:
;00 :nnaaaa00dd....ddcc   - program data
;01 :xxxxxx01cc           - end of file, no operation
;02 :01xxxx02uucc         - upper address (bits 17-19)
;03 :02xxxx0301uucc       - erase block with upper address given by uu
;   :01xxxx0307cc         - chip erase
;04 :05xxxx04sssseeee00cc - display data from ss to ee - display starts after CR
;   :05xxxx04sssseeee01cc - blankcheck from ss to ee
;05 :02xxxx050000cc       - read programmer hardware signature, 01 is AfterBurner v1
;                           (note: this in fact is implemented in firmware, does not read from hardware)
;   :02xxxx050001cc       - read firmware signature 1, 01 is firmware for AMD chips
;   :02xxxx050002cc       - read firmware signature 2, A4 is firmware for Am29F040
;   :02xxxx050003cc       - read firmware revision
;   :02xxxx050100cc       - read manufacturer ID from device
;   :02xxxx050101cc       - read device ID from device
;   :02xxxx0507uucc       - read sector uu protection status
;                           note: sector protection/unprotection method is not public :-(
;
;Returns "." upon success, "X" upon communication error, "Y" upon parsing error, "R" upon programming error
;Note that commands are buffered (as long as continouos data (00 type records) are sent);
;  hence a programming error may be returned also later, upon sending a
;  non-continouos-address record (type 00), or a record of different number.
;  It is therefore important to send the end-record (type 01).
;
;Maximum hex data is 32 data bytes per record (i.e.record starts :20...).
;




Další informace o konferenci Hw-list