Wpis z mikrobloga

@Marathora: Cały sęk w tym, że ten kod (z niewielkimi zmianami typu MOS na PB3 a nie na PB0 itp) działał na attiny2313 - a to ma 128B SRAM - attiny45 ma 256B SRAM. Wykluczam zatem problemy ze stosem.
  • Odpowiedz
A jak dopiszesz linię migającą którymś wyjściem (lifebit) to miga? innymi słowy czy procek żyje:D?? Kiedyś uwaliłem nie wiem jak mege128 tak, że wykonywała tylko kilka pierwszych instrukcji ;]
  • Odpowiedz
@Marathora: co ? Ładnie? No nie sądzę.

@Analityk: zobacz jaki maksymalny argument przyjmuje funkcja waitus i błagam wrzuć to w pętlę, albo użyj delayms. Jeżeli nie ruszałeś fusebitów to nie ma szansy, żeby nie odczytać sygnatury.
  • Odpowiedz
@miszczo997: Ładnie to jest w edytorze, tam miało być.

int volatile ile - co na moje oko daje 0x7FFF czyli jakieś 32767.

Fusebity domyślnie są na zegar 1MHz i trzeba to było zmienić oraz wyłączyć /div8. I później uC śmigał z zegarem 11.059MHz bez ruszania fusów. Gdzieś na pewno coś jest źle bo nie działa ale jak pisałem. Na razie chodzi o sygnaturę. Masz jakiś
  • Odpowiedz
@Analityk: wywołaj procka z pod konsoli z avrdude. Jak nie znajdzie to coś ze sprzętem, albo źle ustawiłeś fusy. Piszesz, że portowałeś kod z atiny2313. Ustawiłeś te same fusy? I czego nie chce wrzucić delayów w pętle? Skompiluj z tym tak jak masz to teraz zrobione, a później stwórz funkcję w której dasz delaya w pętli i ją wywołaj. Zobaczysz ile miejsca oszędzisz.
  • Odpowiedz
@Analityk: w ogóle ten kod jest jakoś dziwnie napisany. Po co Ci zmienne volatile skoro nie używasz wektorów przerwań? Wystarczy zadeklarować je jako globalne. Strasznie ciężko mi się analizuje nie moje kody :/
  • Odpowiedz
@miszczo997: To nie była zmienna lokalna tylko argument dla funkcji. Jeśli kompilator uzna, że nic się z nią nie dzieje, uzna, że jest nieistotna. Dla kodu:

while(i){i--;};

jeśli i nie będzie volatile w ogóle tą funkcję ominie. I to zależy też od poziomu optymalizacji, bo dla poziomu -00 wszystko będzie działać a dla -0s już nie będzie. Z delayms też za bardzo nie widzi mi się korzystać, bo konfiguruje ona
  • Odpowiedz