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

ATmega128 - program wgrywa się, ale nie działa, nawet miganie diody

dj_rav_ 17 Kwi 2005 15:54 1511 7
REKLAMA
  • #1 1413450
    dj_rav_
    Poziom 11  
    Posty: 5
    Witam
    Mam duży problem. Do tej pory używałem Procesorów 90s2313, ATmega8, ATmega8535, ATmega85115 i wszystko było ok. Problem wystapil gdy uzylem ATmegi128. Program napisany pod niego wczytuje sie poprawnie ale nie działą!!! nawet najprostszy program tj. miganie diody na ktorymkolwiek wyjsciu nie dziala. Prosze o pomoc bo nie mam zielonego pojecia co jest nie tak. Jesli ktos mial podobny problem i wie jak go rozwiazac to bardzo prosze o pilna odpoiwiedz
    pozdrawiam
    Rafał
  • REKLAMA
  • #2 1413576
    mag32
    Poziom 19  
    Posty: 450
    Pomógł: 4
    Ocena: 17
    Trochę mało napisałeś, ja od początku - a nie trwa to zbyt długo używam AT128 i nie mam z nim problemu. Więc może pokaż kod który wczytałeś, może coś pomyliłeś, albo podpiołeś nie tam gdzie trzeba ??

    Chętnie pomogę z moimi skromnymi możliwościami.
  • REKLAMA
  • #3 1413913
    dj_rav_
    Poziom 11  
    Posty: 5
    pisze zwykle w BASCOMIE a programuje pod pony prog i nie pomaga nawet wpisanie czegos takiego:

    $crystal=8000000
    config portd=output

    do
    waitms 100
    toggle portd.5
    loop

    a prosciej to chyba sie nie da zrobic
  • REKLAMA
  • #4 1413963
    Robot_
    Poziom 18  
    Posty: 277
    Pomógł: 22
    Witam,
    Uzywasz procka w wersji 5 Voltowej czy 128L na 3,3 V
    Przy uruchamianiu procka nie zauważyłem, że był przestawiony jeden fuse bitów i procek tez się programował ale nie program nie chodził.
    Po zamianie śmiaga bez kłopotów.
    Pozdrawiam
  • #5 1414115
    dj_rav_
    Poziom 11  
    Posty: 5
    Uzywam zwyklej 5V ATmegi 128 bity mam ustawione w ten sposob:
    Załączniki:
    • ATmega128 - program wgrywa się, ale nie działa, nawet miganie diody bity.JPG (31.14 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #6 1414719
    LordBlick
    VIP Zasłużony dla elektroda
    Posty: 5438
    Pomógł: 549
    Ocena: 69
    1. Odznacz CKSEL1-3 - wtedy bedzie śmigać na kwarcu.
    2. Spróbuj zamiast
    config portd=output

    tak :

    3. Sprawdź czy przylutowałeś diodę w dobrym kierunku.
    4. Zgaś światło w pomieszczeniu, w tórym pracuje układ... ;)
    Pozdrawiam, Light'I
  • REKLAMA
  • #7 1414883
    dj_rav_
    Poziom 11  
    Posty: 5
    bity CKSEL sa dla mnie malo wazne mi chodzi o odpalanie tego procka bo wedug mnie poinien bez problemu chulac (nawet przy takim ustawieniu tych bitow czyli przy mniejszej czestotliwosci) a tak nie jest. i mimo iz zaprojektowalem wiele ukladow na innych prockach tej rodziny z takim czyms sie jeszcze nie spotkalem. a co do CONFIG PORTD=OUTPUT to przecież jest to ustawienie wszystkich DDRD.x na 1 czyli zamiana tu na DDRD.5=1 nic przecież nie da. I co to diody to ja kiepskim elektronikiem nie jestem;) .
    Ja naprawde nie mam pojecia co jest z moim prockiem bo to dla mnie naprawde dziwna sprawa zeby porty wogole sie nie odzywaly a sam procesor zglaszal ze program zostal poprawnie wgrany
  • #8 1414902
    LordBlick
    VIP Zasłużony dla elektroda
    Posty: 5438
    Pomógł: 549
    Ocena: 69
    Inna możliwość - Linia $$\overline{RESET}$$ w powietrzu w obliczu zakłóceń może być antenką i resetować procesor, albo jest zwarta do masy. Rezystor podciągający 10kΩ ?
    Jeśli chodzi o różnice Config «» DDRX, uważam, że tylko używane piny powinny być konfigurowane jako wyjścia dla zachowania pewnego porządku, bywały takie przypadki, że to pomagało, więc podsunąłem taki pomysł. Ja nie oceniam stanu znajomości zagadniania, nie zostałem z nim zaznajomiony, a różne przypadki chodzą na tym forum i zdarzają się nawet najlepszym (niewypoczętym)... ;)
    Pozdrawiam, Light'I

Podsumowanie tematu

✨ Problem dotyczy programowania mikrokontrolera ATmega128, który pomimo poprawnego wgrania programu, nie wykonuje nawet najprostszego zadania, jak miganie diodą LED. Użytkownik stosuje BASCOM i programator PonyProg, a kod zawiera konfigurację portu i pętlę migania diodą przy taktowaniu 8 MHz. Dyskusja wskazuje na możliwe przyczyny problemu: nieprawidłowe ustawienia fuse bitów, szczególnie CKSEL, które mogą powodować nieprawidłowe taktowanie i brak działania programu; różnice w napięciu zasilania (wersja 5 V vs 3,3 V); konieczność poprawnego ustawienia kierunku portów (DDR); poprawne podłączenie diody; obecność rezystora podciągającego na linii resetu, aby uniknąć niezamierzonych resetów spowodowanych zakłóceniami. Zalecane jest odznaczenie bitów CKSEL1-3 dla pracy na kwarcu oraz sprawdzenie fizycznego połączenia i konfiguracji sprzętowej. Użytkownik podkreśla, że zna podstawy elektroniki i problem jest nietypowy, gdyż inne mikrokontrolery z rodziny AVR działają poprawnie z podobnym podejściem.
Wygenerowane przez model językowy.
REKLAMA