xpatrykxtm napisał: Chodzi o fakt, że na nowym za długo borykam się z problemem samego zainstalowania Bascoma, gdyż usunięcie jednego błędu powoduje generowanie drugiego, więc pomyślałem, że skoro mam gotowy program może uda mi się znaleźć kogoś kto mi go skompiluje, a wgram go już innym programem na ATTiny13
Chociaż Bascom jest relatywnie łatwy w użytkowaniu, to jednak pewne wymagania są stawiane w jego konfiguracji.
Pewne ustawienia użytego processora wpisujesz w listingu programu, lecz nie sa to jedyne potrzebne/wymagane dla kompilatora. Te brakujace w programie parametry kompilator bierze z ustawień konfiguracyjnych zwanych defaultowych, lub ostatnio ustawionych.
Z pewnościa Bascom zwraca listę błedów/powodów dla których odmawia kompilacji, o których nawet nie wspominasz. Chcesz uzyskac pomoc czy ‘ściągawkę’? Pokaż błędy o jakie dopomina się Bascom to znajdzie się ktoś , kto naprowadzi cię jak z tego wybrnąc. Inaczej, jutro znów będziesz ‘skamlał’ i oferował całowanie kogoś w ‘D’ za skompilowanie z pewnością krótkiego i prostego programu. Bo jak bardzo ‘wielki’ program może mieścic sie w 1k flash Attiny13?
Najprawdopodobniej problemem nie jest tu pojemnośc pamięci ‘flash’, a raczej bardzo mała zawartośc SRAM (Static RAM), w której musi byc miejsce na wszystkie zmienne globalne oraz na ‘stack’.
Szersze omówienie tej części pamięci znajdziesz w każdej literaturze dotyczącej programowania mikrokontrollerów niezależnie od platformy programowania. Stack nie jest wymysłem kompilatora Bascom, a raczej logiczną konsekwencją funkcjalności uProcessora.
Także plik pomocy/manual Bascom ten aspekt dośc szczgółowo omawia.
Poniżej jest tego tylko fragment ze str.231. Mam nadzieję że zapoznasz się z całościa zagadnienia.
Abyś zaczął coś robic w tym kierunku najpierw wybierz z menu zakładkę:
Options > Compiler > Chip ... otrzymasz podobny dialog jak niżej:
W okienku ‘chip’ byc może będzie inny niż twój mikrokontroller; z rozwijanej listy, wybierz plik konfiguracyjny: (attiny13.dat) ten sam który masz w programie. Reszta jest opisana na załączonym obrazku.
W efekcie możesz otrzymac taką informację, która powinna naprowadzc cię na właściwy tok i ustawic odpowiednio te trzy wartości, które mogą figurowac tu w tym dialogu i staną się defaultowe, albo umieścic je jako niezależne bezpośrednio w listingu programu .
Opsany wyżej proces nie jest konieczny dla kompilacji, ale bardzo pomocny dla zrozumienia procesu konfiguracji.
Zupełnie analogicznie wyglądałaby częśc konfiguracji jeżeli stosujesz LCD display.
Jeże ktoś zechce skompilowac ci twój kod, to i tak będzie musiał wprowadzic odpowiednie jego zmiany tych parametrów.
Jeżeli jednak już otrzymasz gotowy skomplowany plik: 'nowy_prog.hex' to nie musisz szukac innego programu do wpisania go do processora. Bascom umożliwia w bardzo prosty sposób wpisywanie plikow 'hex' skompilowanych obcymi programami, nie koniecznie własne kompilacje.
Opisywanie tego procesu z pewnościa wybiega poza zakres poruszanego pytania.
e marcus