Skocz do zawartości

[AVR, Bascom] Układ nie działa


l3cho

Pomocna odpowiedź

Witam

Zacząłem przygodę z mikroprocesorami, zakupiłem programator USB (ISP AVR - USB), mikroprocesor Attiny 2313, jednak mam problem z uruchomieniem układu (z kursu Bascoma, część 3). Poniżej prezentuje złożony układ na płytce:

.

Program wgrywam poprzez Bascoma oraz AVRDUDE sposobem przedstawionym poniżej:

.

Po wgraniu programu i odłączeniu programatora, układ nie działa :/

Proszę o pomoc.

Ps: jak w bascomie zrobić plik .HEX? aby go można ręcznie wgrać przez avrdude?

Link do komentarza
Share on other sites

Witam

Nie wgrywam programu przez bascoma, bo cały czas wybija mi komunikatem "USB PROGRAMER NOT FOUND", nie wiem jak to naprawić?

ps: Spróbowałem jeszcze raz przez bascoma, zapisałem do .BIN wgrałem przez AVRDUDE i teraz dioda cały czas się świeci 😃 i nic więcej. Gdzie popełniam błąd?

Pozdrawiam. Zworka w programatorze pozwalając na prograwmoanie <1,5mhz jest wsadzona.

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Witam

Diodę mam dobrze podłączoną bo świeci cały czas :/

Ps: nie dawałem opornika bo nie mam takowego 😃, może ktoś przejrzeć to dokładnie? bo ja nie widzę błędu 🙁

Link do komentarza
Share on other sites

nie dawałem opornika bo nie mam takowego

Istnieje duża szansa, że tym samym spaliłeś część uC. Nie należy obciążać wyjść na więcej niż 20mA.

Użyj innego pinu i sprawdź miernikiem czy po wgraniu programu pojawia się tam i znika napięcie.

Link do komentarza
Share on other sites

Stary jak świat błąd to też źle ustawiony wewnętrzny rezonator RC- może dioda bardzo szybko miga? (nie patrz, nie zobaczysz tego) Wrzuć dokładną kopię swojego programu, będzie prościej.

Co wypluwa avrdude po zakończeniu zgrywania wsadu?

Link do komentarza
Share on other sites

Witam

Złożyłem układ na nowo, jednak nadal to samo, a więc po kolei, fotka układu (zasilanie tj. bateria 9V dołączyłem po zrobieniu fotki):

.

Po podpięciu wszystkiego uruchamiam demo BASCOMA, wybieram File->New i wklejam poniższy kod:

                                      $regfile = "attiny2313.dat"                 'najpierw określamy typ proca
$crystal = 1000000                          'definiujemy z jakim taktowaniem będzie pracował


config portb=input                          'port b  jako wejścia
      portb=&B00000000                     'wszędzie stan spoczynkowy-0
config portd=output                         'pprt d jako wyjścia
      portd=&B0000000                      'wszędzie stan spoczynkowy-0


do                                         'pętla nieskończona

  if pinb.0=1 then                         'jeżeli przycisk 1 wciśnięty
  portd.0=1                                'zapal diode
  elseif pinb.1=1 then                     'jeżeli przycisk 2 wciśnięty
  portd.0=0                                'zgaś diodę
  endif                                    'koniec bloku warunkowego

loop                                       'koniec pętli

end                                         'koniec programu

Następnie wybieram opcję kompilacji programu (F7) i zapisuje plik pod nazwą "Dioda.bas", potwierdzam opcję "Leave the old CFG FILE", program się kompiluje. Wychodzę z BASCOMA. Następnie uruchamiam program AVRDUDE-GUI i ustawiam go jak na obrazku poniżej (wybieram plik dioda.hex)

Wciskam przycisk EXCUTE, lampka programatora zapala się na czerwono, po chwili program wystawia mi komunikat:

avrdude.exe: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.03s

avrdude.exe: Device signature = 0x1e910a
avrdude.exe: NOTE: FLASH memory has been specified, an erase cycle will be performed
            To disable this feature, specify the -D option.
avrdude.exe: erasing chip
avrdude.exe: reading input file "C:\Documents and Settings\Administrator\Pulpit\DIODA\dioda.hex"
avrdude.exe: input file C:\Documents and Settings\Administrator\Pulpit\DIODA\dioda.hex auto detected as Intel Hex
avrdude.exe: writing flash (174 bytes):

Writing | ################################################## | 100% 1.44s

avrdude.exe: 174 bytes of flash written
avrdude.exe: verifying flash memory against C:\Documents and Settings\Administrator\Pulpit\DIODA\dioda.hex:
avrdude.exe: load data flash data from input file C:\Documents and Settings\Administrator\Pulpit\DIODA\dioda.hex:
avrdude.exe: input file C:\Documents and Settings\Administrator\Pulpit\DIODA\dioda.hex auto detected as Intel Hex
avrdude.exe: input file C:\Documents and Settings\Administrator\Pulpit\DIODA\dioda.hex contains 174 bytes
avrdude.exe: reading on-chip flash data:

Reading | ################################################## | 100% 1.03s

avrdude.exe: verifying ...
avrdude.exe: 174 bytes of flash verified

avrdude.exe done.  Thank you.

Po zakończeniu programowania dioda się zapala, odłączam programator, a dioda cały czas się pali, nie reaguje na przyciski, nie działa tak jak powinien. Nie umiem tego naprawić.

Dodam, że mój programator to "PROGRAMATOR ISP AVR - USB RoHS ATMEL FV", wersja AVRDUDE to bodajże 5.4, wersja nakładki 0.2.0, wersja bascoma to BASCOM AVR 1.11.9.5 DEMO.

Proszę o pomoc.

Ps: jestem początkujący, wiem że powinienem zacząć od poznania zasady działania i budowy mikroprocesora, ale chciałem na szybko sprawdzić czy programator działa 🙂. Co do przycisków, to są dobrze zamontowane sprawdzałem miernikiem. Co do sprawdzenia innego pinu, jako że jestem początkujący nie za bardzo wiem jak to zrobić.

Pozdrawiam.

Link do komentarza
Share on other sites

Program wgrał się bezbłędnie, mówią to te linie:

Reading | ################################################## | 100% 1.03s

avrdude.exe: verifying ...

avrdude.exe: 174 bytes of flash verified

Link do komentarza
Share on other sites

Ja już widzę twój błąd ponieważ na płytce stykowej nie przewodzą te boczne ścieżki z sąciadami i dlatego nie dostarczasz zasilania do całego układu i też ten błąd dotyczy przycisków bo przyciski tego typu przewodzą po skosie.

Link do komentarza
Share on other sites

Ja już widzę twój błąd ponieważ na płytce stykowej nie przewodzą te boczne ścieżki z sąciadami i dlatego nie dostarczasz zasilania do całego układu i też ten błąd dotyczy przycisków bo przyciski tego typu przewodzą po skosie.

Witam

Jesteś w błędzie, boczne ścieżki przewodzą, sprawdzałem miernikiem. Sposób podłączenie przycisków również jest prawidłowy.

Pozdrawiam.

Link do komentarza
Share on other sites

Witam

Nie za bardzo wiem jak to zrobić 😃. Dziwne, że zrobiłem tak jak jest w kursie i nie działa, w kursie nie było mowy o dodatkowych rzeczach jakie trzeba zrobić, więc już nie wiem co jest nie tak :/

Pozdrawiam.

Edit:

Zakupiłem nowy taki sam procesor, podpiąłem z odpowiednym rezystorem jednak dalej działa jak działało, to jest dioda cały czas się świeci.

Proszę o pomoc.

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.