Wpis z mikrobloga

Mireczki mam pytanie co do mikrokontrolerów. Mam Atmegę8 i chciałbym w nią wrzucić prosty program, który powoduje zaświecenie diody. Jednak dioda zamiast świecić ciągle to mruga. Mogę ją włączyć i wyłączyć, jednak jak jest włączona to i tak mruga. Ma ktoś pomysł dlaczego tak się dzieje?

Kod: https://ntpd.eu/dJJjD/
Połączenie układu takie jak w książkach. Filtrowanie zasilania przez kondensator ceramiczny i elektrolit. Rezystor pod reset i przy diodzie. Dioda mruga niezależnie od rodzaju zasilania - czy jest to zasilanie z programatora czy zasilanie zewnętrzne.

#mikrokontrolery #avr #atmega #elektronika
  • 19
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Loperamid: Wydaje mi się, że z hexem jest wszystko w porządku - bo gdy zmieniam na zero na wyjściu to gaśnie. Gdy daje jeden to mruga.

Próbowałem też robić program do mrugania. Jednak na delay mikrokontroler też mi nie reagował. Niezależnie jak ustawiłem czas nie było żadnej różnicy. Dałęm windows.h, żeby spróbować funkcję sleep i jakoś zapomniałem tego usunąć.
  • Odpowiedz
@Loperamid: Plus dziwne jest to, że nie działa funkcja delay. Bo ogólnie przy załadowywaniu programu mogę włączyć i wyłączyć wyjście. To gdy w programie robię włącz - czekaj - wyłącz - czekaj to też wszystko mruga. Nie mogę włączyć wyjścia a po jakimś czasie go wyłączyć.
  • Odpowiedz
@Meissner: Jak potrzebujesz jakiegoś podstawowego projektu z Makefile to weź ode mnie z githuba ten:
https://github.com/QB4-dev/AVR-misc/tree/master/avr-xprintf-asm

Następnie w Makefile zmień MCU na atmega8 i F_CPU na takie jak masz u siebie.
Następnie wydaj w katalogu z Makefile polecenie "make" i powinno Ci zbudować działający program o ile masz zainstalowany avr-toolchain i masz linuksa.
W przypadku windowsa trzeba doinstalować mingw albo Linux subsystem for windows
  • Odpowiedz