http://obrazki.elektroda.net/35_12264129... Witam, Chciałbym przedstawić dzisiaj wprawdzie prosty ale ciekawy projekt, jest to jeden z pierwszych "klocków" pewnego większego projektu, który za jakiś czas jeszcze - mam nadzieję także tu zaprezentować. Poniższy pilot oparty jest na procesorku ATtiny2313 jak widać na fotkach. Obsługuje on w tej...
;) piszesz, że zrobiłeś już układ "detekcji poczty" w skrzynce na listy, że dopracowałeś już program detekcji .... skoro więc jest jakaś detekcja to znaczy, że musisz wykrywać zmianę stanu jakiegoś czujnika czy nie wiem tam czego. Zamiast więc podchodzić do tematu (jeśli chodzi o usypianie procka) jakby troszkę "od tyłu" - podejdź może "od przodu" czyli...
Tutaj masz instrukcje http://www.elektroda.pl/rtvforum/topic33... Jak "wyskoczą" Ci takie znaki " tutaj kod Dodano po 1 Widziałem już kilka razy tę dziwną konstrukcję programu bo wielu ją powtarza jak włączanie przerwań w przerwaniu by odebrać kod RC5. Wracając do tematu kiedy usypiasz procesor to on dosłownie zatrzymuje się na linii kodu "Powerdown"....
Witam wszystkich. Mam problem z wybudzeniem procka z power-down. Dioda miga 3 razy poczym uC przechodzi do trybu uśpienia. Podanie stanu niskiego na INT0 (PB1) powinno mignąć 1x szybko, 3x wolniej i znów uśpić ale nic się nie dzieje. [syntax=c] #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> #include <avr/sleep.h>...
Mam pytanie odnośnie kodu. Dlaczego ustawiasz bity ISC00, ISC01 i aktywujesz przerwanie INT0, skoro do wysyłania impulsów używasz przerwania PinChange? Czy to jest wymagane do wybudzenia uP ze stanu uśpienia? Pytam, bo dziś za nic nie mogłem zmusić mojego ATTiny13 do wybudzenia się za pomocą przerwania PCINT.
Witam Próbuję zrobić tak, aby po naciśnięciu 1 z 4 switchy zapalała się dioda led, i w zależności który wciśniemy, zaświeciła się dioda określoną ilość razy. Kod: #define F_CPU 1000000UL #include <avr/io.h> #include <util/delay.h> #include <avr/signal.h> #define SET_OUT_LED DDRB |= (1<<PB3) //inicjacja #define SET_LED...
Witam, zrealizowałem program do pilota RC_5, który ma posłużyć do sterowania końcówką mocy (5 przycisków, vol+, vol-, wybór potencjometru L/R/oba na raz, ON/OFF i przycisk mute). Programik śmiga aż miło, nie ma w nim błędów, problem leży w poborze mocy. Pobór prądu ~9 mA przy napięciu 3,15 a pin change interrupt can wake up the MCU. Na moje jedyną sensowną...
Kolego Janusz_kk wydaje mi sie ze znaczne zmniejszenie poboru bedzie mozliwe tylko wtedy jesli procesor bedzie usypiany. I pracowac ebdzie tylko np. timer ktory co ilec cykli wybudzi procesor.
Niekoniecznie musi to byc watchdog lecz wystarczy uzyc przerwani od timera i w funkcji przerwania będzie wybudzenie procesora. A taki wybudzenie można zastosować np do pojedynczego pomiary np napięcia i przekazania na uart i znowu uśpienia.
Ale i tak musi je napisać ze zrozumieniem i uruchomić ten, kto fizycznie dysponuje urządzeniem. Oczekiwanie, że gotowiec z netu załatwi sprawę i to od strzału, było przejawem hurra-optymizmu Dobra, może ograniczę bicie tej piany, bo klepiemy wszystko wokół, kiedy można by to potraktować konkretnie. Załóżmy, że zapominamy o urządzeniu, interesuje nas...
jak wyglada sprawa programowania ATTiny13 w przypadku gdy w docelowym ukladzie bede wykorzystywal pin PB5 jako wyjscie czy trzeba cos przelaczac zeby pin PB5 przestawic z funkcji RESET na zwykly pin ?? i co to jest za opcja dW na tym pinie ?? mamjeszcze pytanie do stanu uspienia czy procesor moge wybudzic za pomoca dowolnego przerwania np PCINT2 ??
Kod miał być tak prosty jak opisywałeś w pierwszym poście i mu odpowiada. Jeśli chcesz mogę dodać Powerdown z którego wybudzi uC przerwanie od PCINT1. Watchdog to już chyba przerost formy nad treścią ahahahaha :D
Attiny13 ze względu na oszczędność energii to bardzo dobry wybór. Układ w uśpieniu (Power-Down) pobiera prąd rzędu 10-20uA. Wystarczy układ wybudzić watchdogiem co 8s, sprawdzić czy jest ciemno - tutaj nawet sama dioda LED może robić za taki czujnik i ewentualnie zaświecić ją na chwilę.
Witam. Ze względu na to, że buduję układ zasilany bateryjnie (oparty na ATTiny13) chcę zminimalizować pobór prądu przez mikrokontroler. Wystarczy mi, żeby układ wybudził się co kilka minut, dokonał pomiaru, i następnie znów zasnął. Pomyślałem, że najkorzystniejsze będzie połączenie powerdown z watchdogiem, ale z tego co widzę w taki sposób najdłuższe...
Pomysł dobry, ale nie prościej rezystor podłączyć bezpośrednio do pinu IO i sterować jego poziomem (wysoki - pomiar, niski, przełączenie na wejście brak). Upływność pinu jest marginalna. Stan wysoki pinu AVR-a ma niską wydajność prądowo napięciową. W czasie chwilowego wybudzenia dokonywane są dwa pomiary i ewentualnie jedna akcja. 1. Pomiar oświetlenia...
Jakim sygnałem wywołujesz przerwanie, zboczem czy poziomem? Nie masz skonfigurowanego przerwania więc jest default'owo wywoływane niskim poziomem. To dobrze, bo tylko taki poziom wybudzi Ci µC z powerdown . Nie pakuj wszystkich obliczeń w przerwania, raczej ustawiaj flagę, która powoduje wykonanie obliczeń w głównej pętli, przed uśpieniem µC....
Witam Do tej pory nie tworzyłem układów mikroprocesorowych zasilanych bateryjnie, dlatego postanowiłem zapytać. Układ jest dosyć prosty. Mikrokontroler np. Attiny13 ma odliczać czas (przerwania) i np. co 10 minut wykonać pomiar na kanale ADC. Układ ma działać na baterii (maksymalnie długo) a w przypadku przekroczenia pożądanej wartości ADC ma nadać...
2. Och te upały - oczywiście ustawia, a nie zapamiętuje :) 1. W teście powyżej INT0 nie ma włączonej obsługi przerwań (fragment jest zakomentowany), ale dla testów funkcję obsługi przerwania zostawiłem. Oba przerwania mają na swoich pinach włączone pull-up więc operowanie nimi odbywa się przez podanie stanu niskiego na pin, czyli przez zwarcie do masy....
Witam. Próbuję powoli nauczyć się pisania w ASM prostych programów na ATTINY13. Mam jednak problem z obsługą przerwań. Nie wiem, czy przyczyną jest błąd w programie, czy też nie umiem zasymulować przerwać w tym symulatorze. Otóż w pewnym miejscu programu usypiam uP rozkazem SLEEP (wprowadzam uP w Power Down). Chcę go wybudzić przerwaniem od INT0, (czyli...
... ja też sobie jak pierwszy raz programowałem AVRka zmieniłem fuse bity nichcąco na wartość 0000 czyli zewn zegar i straciłem z nim kontakt (śpiączka) .... ale dość łatwo go wybudzić z takiej śpiączki ;) - wystarczy podłączyć sobie do odpowiedniego wejścia XTAL zwykły generatorek zrobiony na kilku bramkach TTL i po sprawie - układ już jest widziany...
Witam, Napisałem procedury usypiania, wybudzania przy pomocy INT0. Generalnie wszystko działa poprawnie. Zaniepokoiła mnie tylko reakcja na stan na porcie przy wybudzeniu. W ustawieniach przerwania jest oczywiście reakcja na stan niski. W efekcie po podaniu na pin INT0 stanu niskiego, wybudzenie następuje dopiero na zboczu narastającym. Tak powinno...
Polecam zamiast algorytmów sekwencyjnych (tablice) użyć do sterowania "płomieniem" generatora pseudolosowego. Można go prosto zrobić na rejestrze, który jest przesuwany w lewo, a na najniższy bit (po przesunięciu zerowy) podawać exor z kilku wybranych bitów tego rejestru. Przy nieparzystej liczbie exorowanych bitów generator wystartuje sam z sekwencji...
(at)niveasoft dzięki za pomysły, linki... Normalnie mnie oświeciłeś tym: po czym idzie spać do POWERDOWN Mój ESP8266 działa jak najbardziej OK, ale po prostu kocha prąd z baterii :( A gdyby tak między kontaktron a ESP dać np. ATtiny13? uC miałby za zadanie: -nie ma żadnych impulsów więc przechodzi do POWERDOWN i rozłącza zasilanie dla ESP -jest impuls...
Właściwie to kostkę zrobiłem będąc w 2 gimnazjum czyli już jakieś 6 lat temu. Teraz użyłem po prostu attiny13. 6 portów wy akurat pasuje. Co do dekodera to tu właśnie taki jest na diodach cyfra 1 jest bez diody. 2 jest wykorzystywana do 2, 3, 4, 5, 6. 3 to 2+1. 4 to 2 i dodatkowo druga para. Piątka to 4+1 no i 6 to 4 i ostatnia para. Pokaż ten projekt....
http://obrazki.elektroda.pl/9195353900_1... Witam. Niegdyś dostępne były do kupienia zestawy gniazdek zdalnie sterowanych firmy CLARUS w marketach sieci "robaczek z kropkami" w cenie 30zł za 3 gniazdka + pilot :sm7: Niestety moje lenistwo mnie pokonało i wymusiło na mnie stworzenie dodatkowego pilota do tego zestawu. Oryginalny pilot...
Hmm powiem tak - mogę pomyśleć nad udostępnieniem kodu (albo chociaż wsadu), ale najpierw chciałbym żeby przynajmniej zwróciły mi się koszty wdrożenia projektu :). Najmniejsze zamówienie w płytkarni było na 1dm^2, więc mam jeszcze trochę nadmiarowych płytek. Jeśli więc ktoś ma ochotę wspomóc młodego pasjonata, to może zakupić ode mnie Dręczyciela i...
Narazie odpuszczam tryb powerdown aż nie zrozumiem dokładnie o co chodzi z flagami. ] Teraz diody migają ale całkiem inaczej niż przewiduje program i dzieje się to niezależnie od stanu przerwania int0. Czy jeszcze gdzieś jest błąd? Program jest dość krótki, niemniej jednak jest w nim kilka pdstawowych błędów. Zwróć uwagę na: Int0 masz na wejściu PB1,...
Witam, Buduję prosty układ, który ma zapalić diodę led na 100ms (krótki błysk) po czym przejść w tryb niskiego poboru prądu. Następnie po ok 1s procesor powinien się obudzić i znowu: błysnąć diodą i zasnąć. I tak w kółko. Jednak program nie działa jak powinien, tj: Procek startuje, błyska diodą, zasypia, po 1s budzi się i... nic nie robi, pozostaje...
DeepSleep nie usypia konwertera USB, stabilizatorów i led (chyba że nie masz power led). To bardzo prosto możesz sprawdzić, bierzesz rezystor 1%, 1R;10R;100R (żeby łatwo przeliczać na ampery) i przez nie po kolei zasilasz NODEMCU podczas normalnej pracy i w trybie power down (deep sleep). Spadek napięcia na rezystorach możesz mierzyć nawet miernikiem,...
Osobiście gdybym musiał wykonać taki projekt Attiny2313, i wybudzać go za pomocą zewnętrznego przerwania, to zamiast 555 dałbym Attiny13A. Przykładowo możesz go uśpić na 8 sekund, wybudzenie watchdogiem żeby zwiększył stan zmiennej i znów poszedł spać, w przypadku odpowiedniej jej wartości wygenerował przerwanie.
http://obrazki.elektroda.pl/7805368800_1... http://obrazki.elektroda.pl/4555306000_1... Tiny Gad A- żegnajcie nudne wyświetlacze ;) Prawie luxomierz na ATTINY13 Nie da się ukryć, że z pewnych kontrowersyjnych ;) powodów szczególną sympatią darzę najmniejsze z procesorów atmela. Przedstawiona konstrukcja kolejny raz opiera...
Cześć! W swoim projekcie zasilanym bateryjnie (3V) użyłem Atmegi8A. Zazwyczaj do podobnych zadań dawałem Attiny13A który muszę przyznać ma bardzo rozbudowane tryby uśpienia. Nie mniej potrzebowałem licznych pinów ósemki stąd wybór ;) Aktualnie zrobiłem Idle mode z wybudzeniem przez Timer2 Overflow. Wyłączyłem też AC (komparatora) bo go nie potrzebuję....
Się wgłębię, żeby nie było wątpliwości. Kod: CONFIG WATCHDOG = czas gdzie: czas czas w milisekundach po jakim układ WATCHDOG uaktywni sygnał reset procesora. Możliwe są wartości: 16 , 32, 64 , 128 , 256 , 512 , 1024 oraz 2048. Więc rzeczywiście mamy 2s. Jak teraz oszukamy procka i ustawimy wolniejszy kwarc to owszem, może i rzadziej się wybudzi, ale...
https://obrazki.elektroda.pl/3956937900_... Przedstawiam mój kolejny metronom ze "stukaniowym" nabijaniem tempa. Dawno temu opisywałem na elektrodzie pierwszą wersję z programem pisanym jeszcze w Bascomie. Różnica jest taka, że ten jest dużo mniejszy i poręczniejszy (waży 28g), ale z kolei nie wydaje żadnego dźwięku. https://obrazki.elektroda.pl/9785729100_...
Ja testowałem taką funkcję w attiny13 (zmien sobie pin INT0)i działało OK Działało tylko przypadkiem. Chociaż nie, inaczej: u Ciebie mogło działać ale u autora wątku na pewno to nie zadziała. Nie widać reszty kodu, więc można się tylko domyślać ale u Ciebie prawdopodobnie, być może, nie było konieczne zachowanie atomowości usypiania natomiast u autora...
Jeżeli chcesz wykorzystać Watchdog jako rodzaj timera, to w rejestrze WDTCR powinno się ustawić bit WDTIE. Ponadto za pomocą bitów WDP3...WDP0 należy ustawić prescaler Watchdog'a. Z tego wynika co jaki czas będzie przerwanie. Jeżeli np. potrzeba 8 s, to ustawić należy WDP3 i WDP0, czyli powinno być: https://obrazki.elektroda.pl/1370064900_...
Wybudzaj przerwaniem watchdoga nie resetem. Ja bym to zrobił tak (w C, w bascomie pewnie też tak się da): W głównej pętli: - konfiguracja watchdoga z przerwaniem na jak najdłuższy czas- - wejście w power down - pętla nieskończona z ciągłym przechodzeniem do idle. W przerwaniu watchdoga: - wyzerowanie watchdoga - inkrementacja zmiennej odliczającej od...
Się tu kolega (at)jacekcz chyba zapędził. Ten uC ma 64B SRAM i 1KB FLASH. To co tu się "próbuje dziać" to to, że Pomiary ADC są robione w przerwaniu co czas okreslony Watchdogiem, ale to rozwiązanie od razu wybudza też uC z głębokiego snu POWERDOWN (jeśli w nim był) i tylko Watchdog, PCINT albo LOW_LEVEL może uC z tego wybudzić uC. Tak więc po co dokładać...
http://obrazki.elektroda.pl/2475395200_1... Cześć! Pewnie część czytelników jest już znużona ilością tematów o zegarach nixie, ale nic nie poradzę na to, że ja także poddałem się magii tych cudownych wyświetlaczy minionej epoki. ;) Mogę tylko uspokoić, że jest to moja autorska konstrukcja, a nie kalka istniejącego projektu. Zdaję sobie...
Witam Trzeba ustawić reakcję na low level czyli ISC00 na 0 i ISC01 na 0 rejestru MCUCR. Wchodzi w tryb Power Down, ale gdy drzwi są zamknięte to kontaktron też jest "zamknięty" i procek cały czas jest wybudzany, bo przecież wtedy cały czas INT0 ma załączoną masę. Wiecie jak to rozwiązać? Pozdrawiam
Nie rozumiem dlaczego autor nie zastosował trybu power down, prąd pobierany w tym trybie jest znikomy, na dodatek procesor można wybudzać z przerwania INT0, przez co układ można uprościć o ten fragment na tranzystorach. Stabilizator tez można usunąć i zasilić układ z dwóch lub trzech paluszków AAA. Pozdrawiam
Cześć, też kiedyś robiłem kostkę na malutkim uC, ale na ATtiny13. Kostka była bez bajerów typu wizualizacja itp. Żeby zminimalizować zużycie energii wprowadzałem procesor w uśpienie zaraz po wyświetleniu wyniku, a wybudzał go tylko zewnętrzny reset. Program tylko wyświetlał wylosowaną liczbę i szedł spać. Losowanie było najprostsze: wynik z pływającego...
Przykładowy program. Nie robi nic ciekawego tylko wybudza procesor z power-down przez int0 i miga diodami. $regfile = "attiny13.dat" $crystal = 9600000 Config Portb = &B011000 Portb = &B000010 $hwstack = 24 $swstack = 8 $framesize = 24 Dim X As Bit Dim Y As Byte Config Int0 = Low Level Enable Interrupts On Int0 Go Nosave Set X Do If X = 1...
Witam Weź procesor który ma przerwania od każdej nóżki, wybierz jego wersję P lub V i po kłopocie :) Z drugiej strony przyglądnij się procesorom dedykowanym do pilotów, o ile mnie pamięć nie myli to Attiny43 pobiera w uśpieniu poniżej 150nA i wybudza się niskim stanem na wejściu, na dodatek da się to zasilić z jednego paluszka bo pracuje od 0,7V. Piotr
Kiedyś zrobiłem układ zasilany z paluszka 1.5V dalej była przetwornica 0.9V-1.7V na 3.3V (TPS60312) zasilała procek MSP430. Całość w trybie uśpienia pobierała z baterii 1.2uA, procek wybudzał się od przerwania generowanego jednym z przycisków. Co się tyczy kwarcu to masz do wyboru dwa schematy: 1. Jeżeli obliczeń jest dużo i sterowanie jest bez żadnych...
Rozpatrz opis działania polecenia SLEEP: "Rozkaz ten wprowadza procesor w jeden z trybów obniżonego poboru energii, określony przez nastawę specjalnego rejestru. Układ może wyjść ze stanu uśpienia tylko w skutek wystąpnienia przerwania lub zdarzenia zerowania. Jeśli do wybudzenia procesora wykorzystane mają być przerwania, należy pamiętać by wcześniej...
Mi już zapał trochę ostygł do tego LPC812. Nie widzę powodu, dlaczego miałbym jego akurat użyć zamiast 8-bit AVR. Brak sprzętowego PWM, jeden licznik, brak ADC... niestety plasuje go w mojej ocenie nawet poniżej Attiny13. Jak myślisz po co SCT ma 4 wyjścia? 4 kanałowy Multi-Rate Timer (MRT) który w większości przypadków ogarnie wszystkie precyzyjne...
Nawet bez patrzenia w DS wystarczy od 255 odjąć Twoja wartość i masz odwrotnie Proste i genialne. Wielkie dzięki. To jest poprawne, czy nie jest - zdecyduj się Dioda LED została podłączona katodą do PIN1, anoda przez rezystor do plusa zasilania. Na samym pin'ie jest poprawnie, czyli np. wartość 255 oznacza pełne wypełnienie fali prostokątnej. Czyli...
Widze, ze ide w dobrym kierunku, na 100% jestem zdecydowany na komunikacje przez rfm73. Pozostaje sprawa nie tak trywialna oprogramowania sieci podzielonej na n-grup po 5-6 nadajnikow i kwestia uzycia tanich i dobrych pod wzgledem wytrzymalosciowym przekaznikow 230v do oswietlenia i paru gniazdek, tak na wszelki wypadek jakby ktos zostawil wlaczone...
http://obrazki.elektroda.pl/9303655200_1... Witam, Tu: http://www.elektroda.pl/rtvforum/topic33... znajduje się opis powielacza czasu automatu schodowego. Obiecałem tam, że na bazie tamtego układu opracuję „inteligentny” automat schodowy, i oto jest :). Jego „inteligentność” jest zawarta w założeniach...
Witam, Ostatnio bawiłem się RC5 + przerwanie INT0 + Attiny13. Dekowanie RC5 zrealizowane nie używając timera, a jedynie "delaya" i INT0, uruchamiane stanem niskim. Dekodowanie i rozpoznanie kodu przyciska z pilota działa poprawnie. Następnie postanowiłem dodatkowo wprowadzić tryb power mode down. Wszytko fajnie działa tzn uC usypia się i wybudza, ale...
cykliczne wybudzenie wybudzenie baterii wybudzenie uśpienia
ariston elektroda zapłonu sharan skrzynka zmiana cyfra
czarne plamy płycie głównej komputera czarne plamy płycie głównej
Pilarka Stihl, Husqvarna traci moc na wysokich obrotach – przyczyny, diagnostyka, naprawa Radio 418 Diory/Eltry – prąd dochodzi, nie działa, diagnoza zasilania, wymiana kondensatorów