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

Attiny2313 i BASCOM AVR - układ działa na zestawie, ale nie po złożeniu ręcznym

siewnik 20 Maj 2006 13:34 2805 21
REKLAMA
  • #1 2644934
    siewnik
    Poziom 15  
    Posty: 206
    Ocena: 122
    Witam wszystkich!!
    Mam problem, ucze sie programowac w srodowisku BASCOM AVR, kupilem sobie zestaw uruchomieniowy ZL11AVR programator itp... jezeli napisze program w BASCOMIE i go wgram do Attiny2313 i testuje program na tym zestawie uruchomieniowym wszystko dziala bez zarzutu, ale jak zloze uklad fizycznie sam no nie da rady zeby ruszylo.

    Zrobilem taka oto plytke i zlozylem uklad wedlug tego schematu wpisalem program taki jak jest obok schematu no i nie dziala, polaczenia sprawdzalem ze 100 razy i niech mnie waz pierzasty wchlonie... na poczatku wlaczylem bez rezonatora zewnetrzengo ale nie ustawialem fuse bitow bo nie wiem jak sie to robi a potem z zewnetrzym rezonatorem i nic nic sie nie pali zero krasnoludkow zaswiecajacych te diody... prosze powiedzcie jezeli wiecie co jest nie tak z gory dziekuje :-)
    Załączniki:
    • Attiny2313 i BASCOM AVR - układ działa na zestawie, ale nie po złożeniu ręcznym plytka2.JPG (28.13 KB) Musisz być zalogowany, aby pobrać ten załącznik.
    • Attiny2313 i BASCOM AVR - układ działa na zestawie, ale nie po złożeniu ręcznym plytka.JPG (44.01 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • REKLAMA
  • #2 2644949
    zerpo
    Poziom 22  
    Posty: 463
    Pomógł: 50
    Ocena: 134
    Spróbój podciągnąj RESET (nózka nr 1) do zasialnia, przez jakiś rezystor np. 4,7k...10k
  • Pomocny post
    #3 2645089
    Tomasz.W
    Poziom 35  
    Posty: 2315
    Pomógł: 263
    Ocena: 161
    Wejścia Pd.0 i Pd.1 podciągnij do plusa zasilania za pomocą rezystorów np. 100k . Diodę led wepnij odwrotnie to znaczy , katoda do masy , a anodę przez rezystor do PB.0 . No i oczywiście zmień troszkę program .
  • REKLAMA
  • #4 2645138
    siewnik
    Poziom 15  
    Posty: 206
    Ocena: 122
    jezeli chodzi o podlaczenie RESETA do VCC to nic nie dalo to .... a co do podlczenia wejsc Pd.0 i Pd.1 to zaro sprawdze ale reakcja na mase tez powinna być :-]
  • #5 2645179
    M. S.
    Poziom 34  
    Posty: 2107
    Pomógł: 259
    Ocena: 680
    Schemat jest dobry. Program też. Zrób sobie godzinkę przerwy na powietrzu, przeprogramuj procesor, sprawdź połączenia - koniecznie przy użyciu lupy. Przedrap na płytce miejsca gdzie ścieżki są blisko. Podłącz zasilanie i musi zadziałać.

    Jeszcze jedno. Czy na pewno programujesz programem dla ATTINY2313? Sprawdż ustawienia opcji Bascoma i wybierz odpowiedni uC!
    Uzupelnij wartość binarną przy Config i Port tak aby miały po 8 cyfr.
  • #6 2645180
    siewnik
    Poziom 15  
    Posty: 206
    Ocena: 122
    a jezeli chcialbym przelaczyc sie na wewnetrzny oscylator to co mam ustawic w bascomie zeby z niego korzystal?

    Dodano po 45 [sekundy]:

    hehe dobra chyba se zrobie przerwe :-)
  • Pomocny post
    #7 2645341
    Tomasz.W
    Poziom 35  
    Posty: 2315
    Pomógł: 263
    Ocena: 161
    siewnik napisał:
    ....a co do podlczenia wejsc Pd.0 i Pd.1 to zaro sprawdze ale reakcja na mase tez powinna być :-]
    Tak , ale chodzi o to że te wewnętrzne rezystory podciągające jakoś nie zawsze funkcjonują tak jak powinny . I dla tego dla pewności stosuje się zewnętrzne . Bez rezystorów cały czas będzie "0" na wejściu . Sprawdzone w praktyce na kilkuset procesorach . A w przypadku podłączenia LED'a chodzi o to że do portu procesora można wprowadzić bardzo małą ilość prądu . Jeżeli źle dobrałeś rezystor to wpompujesz do portu ilość prądu która go uszkodzi .
  • Pomocny post
    #8 2645528
    M. S.
    Poziom 34  
    Posty: 2107
    Pomógł: 259
    Ocena: 680
    TomaszW słusznie zauważył, że porty mają ograniczoną wydajność prądową. Dla AVR'ów wynosi ona poniżej 20mA. Teraz dopiero popatrzyłem na wartosć rezystorów. 100Ohm to trochę za mało (5V - 1,6V = 3,4V; 3,4V/100ohm=34mA!). Zwiększ rezystorki do 220 lub 330Ohm i podłącz diodę do innej końcówki uC, gdyż ta mogła już odejść do krainy wiecznych łowów (ale nie musiała).
  • #9 2646151
    siewnik
    Poziom 15  
    Posty: 206
    Ocena: 122
    1. napewno programuje dla attiny2313
    2. jezeli chodzi o wejscia to jak je programowo podciagne do plusa to dzialaja fizycznie wiec wejscia sa ok dzialaja jak trzeba
    3. tylko na wyjsciu gdzie ma wplywac prad z diody zawsze jest te kolo 5 wolt i nie chce sie zmienic tak jak by wejscia wogole nie byly powiazane z wejsciem
    4.port jest ok nie spalil sie
    5. moze uC wogole nie wykonuje petli tak to wyglada jak by stal w miejscu, moze kwarc jest walniety?
  • #10 2646518
    M. S.
    Poziom 34  
    Posty: 2107
    Pomógł: 259
    Ocena: 680
    Bez generatora nie zaprogramujesz. Tiny najprawdopodobniej chodzi na generatorze wewnętrznym 8MHz z preskalerem /8 jeśli nic w fusach nie grzebałeś. Spróbuj jeszcze odczytać program z uC by sprawdzić czy jest w pamięci - na forum opisywano już cuda ze znikaniem programu.
    Zaprogramuj mu miganie diodą. Coś w rodzaju:

    Do
    Toggle Port ...
    Waitms 500
    Loop
  • #11 2646640
    siewnik
    Poziom 15  
    Posty: 206
    Ocena: 122
    mam jeszcze jedno pytanko, jezeli uC jest zaprogramowany z kwarcem 4MHz to bedzie dzialal on sam na wewnetrznym kwarcu 8MHz? z gory dziekuje
  • REKLAMA
  • #12 2647241
    M. S.
    Poziom 34  
    Posty: 2107
    Pomógł: 259
    Ocena: 680
    Podłączenie kwarcu nie wymusza na uC korzystanie z niego. Jeżeli nie zostały ustawione fusebity to nawet 1000 kwarców nie pomoże.
  • #13 2647488
    kamyczek
    Poziom 38  
    Posty: 3994
    Pomógł: 394
    Ocena: 571
    Nawet jeśli działa na wewnętrznym kwarcu to przy takim programie i tak bedzie działał wolniej bo wolniej ale powinien zó fotkę płytki od strony druku i screeny z programatora podczas programowania i veryfikacji attiny 2313 działa zazwyczaj bez zarzutu i nie ma z nim kłopotów z zerowaniem przy starcie
    poza tym podeślij program bo w tym kawałku co jest nie widzę żeby były skonfigurowane porty jako wyjścia ! i sprawdź czy przypaskiem nie zostawiłeś na początku programu dyrektywy $sim bo wtedy program działa tylko w symulacji ..
  • REKLAMA
  • #14 2647767
    siewnik
    Poziom 15  
    Posty: 206
    Ocena: 122
    to jest ten program ma zaswiecac i gasic jak widac a nie robi tego

    Config Portb = &B10111111
    Portb = &B11111111
    Config Portd = &B1111100
    Portd = &B1100111
    Do
    Toggle Portb.1
    Waitms 1000
    Toggle Portb.3
    Loop
    End

    zalaczam jeszcze menu z ustawieniami fuse...moze tam jest cos nie tak, ale najbardziej mnie to zastanawia ze na zestawie uruchomieniowym dziala cacysnie a na plytce nie, niestety aparat wyszedl i nie moge zrobic fotki
    Załączniki:
    • Attiny2313 i BASCOM AVR - układ działa na zestawie, ale nie po złożeniu ręcznym machen2.JPG (38.61 KB) Musisz być zalogowany, aby pobrać ten załącznik.
    • Attiny2313 i BASCOM AVR - układ działa na zestawie, ale nie po złożeniu ręcznym machen.JPG (17.04 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #15 2647775
    siewnik
    Poziom 15  
    Posty: 206
    Ocena: 122
    to juz druga plytka ktora zrobilem sprawdzlem polaczenia e sto razy pod lupa tez, polaczenia sa proste... moze kwarc jest za daleko, po prostu jest tak ze jezeli skonfiguruje porty to sa tak jak ustawilem i to jest dobrze wiec znak ze jakas reakcja jest jest ale sama petla z programem nie dziala

    Dodano po 2 [minuty]:

    moze ktos we co ocnaczaja te opisy w tablei z fusami?
  • #16 2648265
    kamyczek
    Poziom 38  
    Posty: 3994
    Pomógł: 394
    Ocena: 571
    Prosze podesłać skompilowany plik (hex lub bin )
  • #17 2648380
    siewnik
    Poziom 15  
    Posty: 206
    Ocena: 122
    zalaczam plik z tym programem *.*hex
    Załączniki:
    • hexu.rar (316 Bajtów) Musisz być zalogowany, aby pobrać ten załącznik.
  • Pomocny post
    #19 2649323
    kamyczek
    Poziom 38  
    Posty: 3994
    Pomógł: 394
    Ocena: 571
    Proszę sprawdzić ten plik wgrac i zobaczyć czy pójdzie ? jeśli chodzi o reset to można podpiąć kondensator 470n do masy i rezystor10k do +5V
    ale najpierw prosze sprawdzic ten plik czy na nim działa potem dopierozałożyć do resetu R i C
    Załączniki:
    • test.rar (337 Bajtów) Musisz być zalogowany, aby pobrać ten załącznik.

Podsumowanie tematu

✨ Problem dotyczy programowania mikrokontrolera Attiny2313 w środowisku BASCOM AVR. Program działa poprawnie na zestawie uruchomieniowym ZL11AVR, lecz po ręcznym złożeniu układu nie uruchamia się. Sprawdzono wielokrotnie połączenia, zastosowano zewnętrzny rezonator kwarcowy, jednak brak reakcji układu. Dyskusja wskazuje na konieczność podciągnięcia linii RESET do zasilania przez rezystor (4,7k–10kΩ) oraz podciągnięcia wejść Pd.0 i Pd.1 do plusa zasilania rezystorami około 100kΩ, gdyż wewnętrzne rezystory podciągające mogą działać niestabilnie. Zwrócono uwagę na prawidłowe podłączenie diody LED (katoda do masy, anoda przez rezystor do portu) oraz dobór rezystorów ograniczających prąd (zalecane 220–330Ω zamiast 100Ω). Podkreślono, że bez odpowiedniego ustawienia fuse bitów mikrokontroler nie będzie korzystał z zewnętrznego rezonatora, a domyślnie pracuje na wewnętrznym oscylatorze 8 MHz z preskalerem. Sugerowano sprawdzenie, czy program jest faktycznie wgrany do pamięci, oraz czy porty są poprawnie skonfigurowane jako wyjścia. Wskazano również na możliwość pozostawienia dyrektywy $sim, która powoduje działanie programu tylko w symulacji. Autor potwierdził, że program jest poprawny i wgrany do Attiny2313, ale układ fizyczny nie reaguje, co może wskazywać na problem z kwarcem lub fuse bitami. Ostatecznie problem został rozwiązany, jednak szczegóły rozwiązania nie zostały podane.
REKLAMA