logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

zmiana z atmega64 na atmega128

thorin00 24 Wrz 2009 15:20 1350 3
  • #1 7052770
    thorin00
    Poziom 14  
    witam

    robiłem układ na m64 jednak okazało się, że program sie nie mieści więc pozstanowiłem go wymienić na m128 i tu pojawił się problem, wymieniłem tylko mikrokontroler w kodzie programu zmieniłem rodzaj mikrokontrolera skompilowalem i wgrałem, poustawiałem wszystkie fuse bits tak jak miałem w m64 tzn. taktowanie, wyłączony jtag, brak kompatybilności z m103, wyłączony watchdog itd. Mikrokontroler sie programuje jednak brak reakcji, wyswietlacz nie swieci przyciski nie działają diody nie świecą kompletna cisza.... z dokumentacji wynika że m128 rózni się od 64 tylko tym że ma dwa razy większa pamięć flash oraz eeprom, pozostałe funkcję oraz pinologia jest taka sama, czy napewno róznice pomiędzy w/w mikrokontoleram są takie jak wymieniłem czy może różnią się czymś jeszcze? a może coś jeszcze trzeba pozmieniać?

    dziekuje za odpowiedz
    pozdrawiam
  • #2 7053025
    arnoldziq
    VIP Zasłużony dla elektroda
    Zmienia się także struktura Boot Loadera.
    Cytat:
    The No-Read-While-Write section starts at word address 0xF000 instead of
    0x7000.
    Może to jest problem ?
  • #4 7053408
    thorin00
    Poziom 14  
    program pisze w bascomie (poniewaz narazie taki język znam, dopiero uczę sie C), w wersji prostej mial to byc zwykly sterownik do urzadzenia wentylacyjnego (pomiar cisnienia i sterowanie dmuchawą itd.), jednak z biegiem czasu zostały dodawane dodatkowe funkcje, a najwiecej miejsca zajmuje "historia modyfikacji" zapisywana do eepromu, ponieważ w bascomie nie mogę zapisać zmiennej do eepromu korzystająć z Writeeeprom His_r(poz) , His_r_e(poz) (bascom wywala mi błąd że "spodziewano sie cyfry a nie zmiennej (chodzi o zmienna poz) muszę podawać kolejne pozycje pod którymi ma zapisywać wartości w eepromie.
    układ składa sie z dwóch plytek na jedej jest mikrokontroler, układ zasilania złącze programatora oraz układy wejść i wyjść na drugiej natomiast wyświetlacz i przyciski. mam jedną płytkę z m64 oraz dwie plytki z m128 i na m64 wszstko ładnie działa natomiast na płytkach z m128 są objawy takie jak opisałem wyżej. plytki z wyświetlaczem przekładałem do m64 i działają poprawie. jeżeli chodzi o program to zmieniam tylko $regfile = "m64def.dat" na $regfile = "m128def.dat", wydaje mi się że kompilator powinien dopasować sobie rejestry do wybranego mikrokontrolera
REKLAMA