8051 + kompilator

Witam, staram sie uzywac sdcc jako kompilatora C dla uC 51 dokladnie

89s8252. Po wygenerowaniu pliku hex czyli kompilacji z uzyciem sdcc, na symulatorze wszystko dziala nastomiast gdy probuje to nagrac na procek programator staje przy adresie 2800 i pokazuje sie blad. Przy wykonaniu hex2bin rowniez polazuje sie blad:

C:\sdcc\bin>hex2bin licznik.ihx

HEX2BIN: Converts an Intel hexadecimal file to absolute binary. Written by G. Goodhue, Signetics Corp.

LICZNIK.IHX ---> LICZNIK.BIN

** Gap encountered at address 000B, filling with zeros ** Gap encountered at address 0013, filling with zeros ** Gap encountered at address 001B, filling with zeros ** Gap encountered at address 0023, filling with zeros ** Gap encountered at address 002B, filling with zeros ** Gap encountered at address 0E4E, filling with zeros ** Error : specified address 002C is too low, expected address 0EA5 ** ** Object file corrupted, aborting **

Ten sam program kompilowany pod RIDE raisonance przechodzi hex2bin bez problemu. Niestety RIDE mam wersje demo i tylko 2 kilo kodu moge skompilowac co jest stanowczo za malo, istnieje jakas alternatywa dla sdcc ? jak sobie poradzic ?

Pozdrawiam.

Reply to
angel
Loading thread data ...

Bylbym dzwieczny, jesli nie jest kosmicznie duzy (20MB) to najlepiej na snipped-for-privacy@WYTNIJszas.uk.to

Nie zauwazylem, przepraszam.

Pozdrawiam, Mariusz.

Reply to
angel

Wed, 21 Apr 2004 11:10:20 +0200 jednostka biologiczna o nazwie "angel" snipped-for-privacy@szas.z.pl> wyslala do portu 119 jednego z serwerow news nastepujace dane:

Kompilator generuje plik HEX, w ktorym dane sa nie po kolei i ma do tego prawo. Zmien program HEX2BIN na inny, bo ten jest g..niany i nie radzi sobie z ukladaniem takich plikow. Jak chcesz to podesle ten ktorego ja uzywam (z tym ze nie wiem czy on sobie z takimi radzi, bo nigdy nie probowalem). Temat byl zreszta na grupie niedawno.

Reply to
BLE_Maciek

Wed, 21 Apr 2004 11:50:28 +0200 jednostka biologiczna o nazwie "angel" snipped-for-privacy@szas.z.pl> wyslala do portu 119 jednego z serwerow news nastepujace dane:

No cos Ty. To nie jest Micro$oft Hex2bin 2004 ;-)

Poszlo

Nie obiecuje ze ten bedzie sobie radzil. Daj zreszta znac czy sie udalo. Jakby nie dzialal to wrzucasz na google "hex2bin" i wyskakuje pelno takich programikow.

Reply to
BLE_Maciek

Wed, 21 Apr 2004 11:10:20 +0200 jednostka biologiczna o nazwie "angel" snipped-for-privacy@szas.z.pl> wyslala do portu 119 jednego z serwerow news nastepujace dane:

Kopiujesz do programatora poleceniem COPY ? Musisz koniecznie dodac opcje /B (kopiowanie binarne). Ostatnio tez mialem taki przypadek. Program dzialal w symulatorze, a po zapisaniu do procka niezbyt :-) Przykladalem do programatora "serwisowa delte Diraca"* ;-), probowalem z innym egzemplarzem procka - nic :-/ W koncu przyszlo mi do glowy zeby podejrzec co sie dzieje na RSie. Podpialem laptopa (dobrze ze kumpel akurat zostawil do naprawy), odpalilem term95 i zobaczylem - system przerywal w pewnym momencie wysylanie pliku. Dalem /B i pomoglo jak reka odjal.

  • serwisowa delta Diraca - krotki impuls kinetyczny o duzej energii przykladany na obudowe naprawianego urzadzenia za pomoca piesci :-)
Reply to
BLE_Maciek

Hmm, okazalo sie jak to zawsze na poczatku ze wszystko bylo do dupy, od programatora po kompilator :). Skompilowalem swoj kod zrodlowy na Keilu C51 w wyniku czego plik binarny ma rozmiar

3kb zamiast poprzednio 28kb z uzyciem sdcc. Dodatkowo programowalem uC z uzyciem bascoma ktory to od razu pokazal ze kod za duzy i nie wejdzie na flasha, poprzedni przemilczal ten fakt i probowal na slepo wpisac ile sie da uC to 89S8252 Po odkryciu tego zmienilem kompilator, soft do programowania i udalo sie nagrac :)

PS. Programuje z uzyciem ISP

Pozdrawiam, Mariusz.

Reply to
angel

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.