Weź pod uwagę takie problemy: 1. zminimalizuj drgania styków przycisków (tzw. debouncing) programowo lub sprzętowo używając kondensatorów 2. przerwanie od enkodera wywołuj stanem FALLING lub RISING (Ty masz LOW co jest bardziej podatne na drgania przycisku zwieranego do masy) 3. zmienna globalna "time" użyta w przerwaniu powinna być typu volatile (Ty...
No i co z tym automatem? Jestem pewien, że można wyeliminować wpływ drgań styków przed odpowiedni projekt automatu. Np: state Initial { entry/set_led(orange); button_yellow and button_blue -> RandomWait; } state RandomWait { entry/set_led(red); entry/set_timer(500ms + random()); exit/clear_timer();...
Odpowiedzią na twoje kłopoty jest instrukcja DEBOUNCE, gdyż: 1. Potrafi wywoływać podprogramy przy dowolnym stanie linii portu, 2. Przycisk raz naciśnięty i puszczony wywołuje podprogram tylko jednorazowo, 3. Filtruje drgania styków przycisków które potrafią narobić niełego bigosu początkującym, 4. Jest elegancka, pewna i uszyta "na miarę". PS. Atmega...
Witajcie, W oparciu o Atmegę8 zrobiłem sobie prosty sterownik. Odczytuję temp. z dwóch czujników ds18b20 i na jej podstawie steruje elektrozaworem. Chciałbym dodatkowo wprowadzić obsługę 3 przycisków. Problem w tym, że sam odczyt temp. z czujek powoduje pewne opóźnienia np. czas konwersji jest dosyć spory bo 750ms w związku z tym reakcja na przyciśnięcie...
Może zrób tak: If Pind.2 = 0 Then 'i jest wciśnięty przycisk PIND.2 Incr Opoznienie_odczytu 'no bo przycisk ma drgania dłużej niż 237us- niech zwiększy 'to sprawdzanie powtórne do 17ms If Opoznienie_odczytu >= 70 Then 'dajmy mu na wygaszenie drgań 17ms If Temp0 = 0 Then ' i jest zezwolenie na zmianę stanu Gosub Ustawianie Temp0 = 1 ' zablokuj zezwolenie...
Użyj przerwania timera (CTC) ustawionego na 5, 10 ms. W przerwaniu próbkuj przyciski n-razy. Np. 20x co 10 ms. Jeżeli stan przycisku w tych próbkach się nie zmieni - masz stan stabilny. To pozwoli wyeliminować drgania styków.
1. To stary wektor przerwań, a nowa funkcja ISR(). Musisz zastosować nowy wektor do tej funkcji. Znajdziesz go w tabelce szukając starego: http://www.nongnu.org/avr-libc/user-manu... 2. Drgania trwają od kilku do kilkudziesięciu milisekund. Możesz na przykład wykorzystać jakiś timer do odliczania tego czasu począwszy od pierwszego...
Witam, jestem początkującym programistom mikrokontrolerów AVR. Mam bardzo ambitny projekt w głowie. Nie przejmuj się, to z czasem przechodzi ;) Chcę podłączyć kilka przycisków do mikrokontrolera i zaprogramować je tak aby przypisać mu klawisze z klawiatury numerycznej. To musisz się zdecydować czy chcesz programować uC czy klawisze. Jeszcze nie słyszałem...
Programowaniem bawię się co prawda od niedawna, ale tak sobie myślę, że nie bez powodu w konsolach 8 bitowych były 4 przyciski i krzyżak. Dzięki temu w 1 przesłanym bajcie od razu przesyłasz stan wszystkich przycisków. No a jak jest pilot "master" to w 2 - jest jeszcze start/menu. Oczywiście w Arduino podłączasz 8 przycisków do różnych pinów - najprościej....
Mi chodziło o sytuację że dopiero po wciśnięciu dowolnego przycisku zostaje uruchomione opóźnienie. Ciągle w programie go nie ma, tylko przy odczycie klawiszy. Nie musi być duże, ale coś tam powinno być ze względu na drgania styków i nierówność wciśnięcia dwóch przycisków naraz. Trzeba zrobić parę prób co do jego długości. Ważne jest jak mówiłem sprawdzanie...
Można też wlutować pomiędzy styki przycisku kondensator. Ja stosowałem 100nF, ale możliwe, że trzeba będzie poeksperymentować z wartością.
Przerwanie od zbocza jest kompletnie niepotrzebne do niczego - wystarczy TYLKO przerwanie od timera, w którym również można zrobić wykrywanie zbocza i filtrowanie - wystarczy kilka zmiennych pomocniczych (poprzedni stan, jakieś liczniki). Jest to skrajnie proste i działa idealnie. Angażowanie dwóch przerwań do czegoś co można zrobić w jednym jest kompletnym...
A nie widzę nigdzie innego użycia przerwań niż tylko przy wciśnięciu klawisza klawiaturki. Przerwania zewnętrzne mają wyjątkowo ograniczone zastosowania. Nadają się np. do tego, żeby obsługiwać sygnały od innych układów scalonych, świadczące o tym że dany układ ma coś ciekawego do powiedzenia. Do przycisków nadają się wyjątkowo słabo, bo żeby to działało,...
ano widzisz - teraz lepiej, po pierwsze mała uwaga - po co te kondensatory C8 i C9 na wejściach INT0 i INT1 ?????? odłącz je rozumiem, że kwarc oraz kondensatorki 33pF dałeś maksymalnie blisko nóżek procka - teoretycznie ścieżki do nóżek kwarca nie powinny być dłuższe niż 3cm i mam nadzieję, że dałeś już teraz kondensator 100n oraz ze 47uF przy samych...
Niestety klawiatura matrycowa wymaga nieco zachodu z jej obsługą, za to wymaga mniejszej ilości pinów - coś za coś :) Nie wiem jakie dodatkowe funkcje będzie miał program, ale z reguły skanowanie klawiatury robi się w oparciu o jakiś timer, bo dodatkowo należy eliminować drgania styków. Strona ... korzystaj do woli, a w razie problemów pisz na forum...
http://obrazki.elektroda.pl/5016503100_1... Układ nadążny za słońcem- inaczej układ śledzący, jest rodzajem układu sterowania, który umożliwia automatyczne lub półautomatyczne wodzenie za Słońcem. Układy tego typu wykorzystuje się najczęściej w celu znacznego podniesienia wydajności baterii fotowoltaicznych lub kolektorów słonecznych....
https://obrazki.elektroda.pl/9337556500_... Pewna wyjątkowa osoba zasługiwała na równie wyjątkowy prezent, a że nie jestem fanem kupowania niespodzianek, postanowiłem "zrobić" coś własnym rękami. 1. Wstęp, motywacja 2. Zarys konstrukcji 3. Płytka z diodami - projekt (łączenie diod) 4. Płytka z diodami - projekt (zatrzaski) 5. Eagle...
https://obrazki.elektroda.pl/3666007400_... Dziś na tapecie znajdzie się dzwonek do drzwi o nazwie kodowej MIK64, który nabyłem dawno, dawno temu, nie wiedząc do końca nawet, co to jest. Niedawno osoba, od której go wtedy kupiłem odezwała się do mnie z prośba o zbadanie go z uwagi na całkowity brak informacji w sieci, więc postanowiłem...
http://obrazki.elektroda.pl/1678023200_1... Witam. Dziś postaram się krótko opisać modyfikację firmowego radioodtwarzacza z Fiata Bravo, Brava, Marea - Grundiga AM182M. Modyfikacja polega na wstawieniu do radia modułu odtwarzającego pliki MP3. Wyświetlacz oraz wejście karty/pendrive'a znajduje się w miejscu, gdzie kiedyś wkładało się...
Robak ma racje. I działa bez problemu
1HZ to troche za wolno, nawet dla flegmatyka :). Podziel te swoje 12MHz tak bys dostal okres okolo 10ms. Tyle mniej wiecej wynosi okres drgania kiepskich zestykow. Typowo wejsie styku robi sie tak, ze w stanie nieaktywnym na wejsciu masz logiczna '1'. Gdy przycisniesz przycisk, wejscie to zwierane jest do poziomu '0'. zatem by wykryc ze przez okres...
https://obrazki.elektroda.pl/1605811200_... Multimetr Elektronik bez multimetru jest jak zakonnica bez habitu. Jest to bowiem podstawowe narzędzie pomiarowo-diagnostyczne i jego posiadanie jest po prostu niezbędne. Ale o ile zakonnica wie, co będzie nosić, to początkujący elektronik może się zgubić w gąszczu dostępnych typów, marek...
https://obrazki.elektroda.pl/1761046600_... Pokażę tu jak uruchomić z Arduino czterocyfrowy wyświetlacz 7-segmentowy sterowany poprzez rejestr przesuwny 74HCT164 i cztery tranzystory BC546. Płytka z wyświetlaczem znów będzie odzyskana z elektrośmieci. Będzie to już kolejny temat, w którym uruchamiam wyświetlacz, gdyż omawiałem już...
[syntax=c] #define Button (1<<PB0) #define Button_PORT PORTB #define Button_PIN PINB #define Button_DDR DDRB volatile _Bool Key_Pressed = 0; // flaga wciśniętego przycisku [/syntax] [syntax=c] Button_DDR &= ~(Button); //port - wejście Button_PORT |= (Button); //włącz pull up [/syntax] [syntax=c] ISR(TIMER0_OVF_vect)//przerwanie wywoływane...
Pomiędzy układ który podałem, a licznik włącz bramki Schmitta. Przykładowo dwie szeregowo połączone z układu 4093 (ze zwartymi wejściami), albo dwa inwertery z 40106.
https://obrazki.elektroda.pl/2872521200_... Witajcie moi drodzy. Najpierw pokażę tutaj wnętrze dość starego, budżetowego odtwarzacza DVD, a potem zaprezentuję jak można praktycznie wykorzystać odzyskane całkowicie za darmo komponenty ze środka. W temacie wystąpi też Arduino. Spróbuję uruchomić panel przycisków (dość dziwnie zorganizowany),...
https://obrazki.elektroda.pl/3711757000_... Witajcie, dzisiaj przedstawię uruchomienie układu AS1115 z Arduino w oparciu o gotową bibliotekę. AS1115 to kontroler wyświetlacza 7-segmentowego (do 8 cyfr) oraz klawiatury (do 16 klawiszy) z interfejsem I2C, oferującym dodatkową linię-przerwanie dla zdarzeń pochodzących od klawiatury. Temat ten...
napisz program dla poprzeniego ukladu powodujący wyświetalnie się na konsoli cyfry odpowiadającemu liczbie kliknięć guzika, to znaczy kliknięcie raz spowoduje wyświetlenie się cyfry 1, ponownie wciśnięcie wyświetli cyfrę 2, itd. Wstępna ocena dostępnych informacji Analiza podanych przez użytkownika danych: - Płytka Arduino: Duemilanove. - Poprzedni...
Przekaz zakręcony, że niewiele z niego wynika. Tradycyjne w amoku naprawa zaczęta od najmniej awaryjnej części jaką jest LA1235. To ostatnia część jaką bym wymieniał. Co znaczy zawieszenie w trybie auto? Zamrożenie przelatujących cyfr na wyświetlaczu częstotliwości i brak reakcji na jakikolwiek przycisk? Zwiecha następuje już tylko po jednym, pierwszym...
http://obrazki.elektroda.pl/5385398300_1... Zaprezentować dziś chcę projekt lampki RGB który wykonałem na pracę zaliczeniową z systemów wbudowanych. Moim zdaniem osiągnięty efekt jest zadowalający więc może ktoś będzie zainteresowany wykonaniem urządzenia według mojego projektu. Jako, że jest to pierwszy zrealizowany przeze mnie projekt...
Poprawiłem podłączenie wyświetlacza, dodałem jeszcze na wyjściu filtr dolnoprzepustowy w razie gdyby wzmacniacz miał się znowu wzbudzić i miałaby się znowu pojawić częstotliwość >100kHz. Szerokość ścieżek zaplanowałem na 1mm, zabieram się do trawienia. https://obrazki.elektroda.pl/1020156300_... https://obrazki.elektroda.pl/1494670300_...
Chyba się nie zrozumieliśmy. STM32 to ja mam w swoim urządzeniu, a nie wiem jak zrealizowane jest sterowanie podświetleniem i przyciskami w samej myjni. PWM tam akurat nie występuje, sprawdzałem analizatorem stanów żeby ustalić czy sterowanie jest mechaniczne (i czy występują drgania styków) czy nie. Ogólnie do tych przycisków "lecą" po 4 przewody;...
Bardzo zgrabna płytka i całkiem czytelny kod źródłowy. Ja bym jeszcze dodał obsługę portu szeregowego bo byłoby to krokiem w kierunku np. sterowania poprzez internet ( chyba, że taki bajer uważasz za całkiem zbędny ). Nakład pracy minimalny 1 max232 + 4 kondensatory i temat gotowy. Po załączonym kodzie widzę, że oprogramowanie RS232 raczej koledze nie...
https://obrazki.elektroda.pl/4136220100_... Witam. Chciałbym przedstawić mój system sterowania roletami i oświetleniem w domu jednorodzinnym. System powstawał stosunkowo długo. Ewoluował wraz z budową domu. Niestety nie mogę poświęcić mu tyle czasu ile bym chciał dlatego nadal nad nim pracuje. Część komponentów doczekała się kolejnych...
Zadziałało, wszystko zapisało się w pamięci głównej. Dlaczego sposób się nie sprawdzi? Dodałem do niego jeszcze opóźnienie 20ms eliminujące drgania fizyczne przycisku i wszystko działa jak należy.
Radykalną metodą jest eliminacja drgań przez zastosowanie bramki Schmidta z obwodem RC eliminującym drgania.Dołączenie C równolegle do styków też może rozwiązać problem,ale skuteczność bardzo zależy od oporności źródła i obciążenia. Można też stosować uniwibratory,rejestry przesuwne itd. W dołączonym pliku wartości RC są przykładowe. Przyjmuje się że...
Jeszcze potrzebuję przycisku '=' żeby obliczyć Oczywiście, przycisk '=' jest istotny w kalkulatorze, aby móc zatwierdzić wprowadzone liczby i żądaną operację, a następnie wykonać obliczenie i wyświetlić wynik. Oto przykładowa modyfikacja kodu uwzględniająca przycisk '=': [syntax=cpp] const int buttonPin0 = 2; // Przypisz pin do przycisku dla cyfry...
Drgania przycisków załączających uzwojenie nie mają wpływu na dzialanie przekażnika, gdyż bezwładność kotwicy jest bardzo duża w porównaniu z drganiami styków załączających uzwojenie przekażnika.
Napisz co te warunki mają robić (słownie) to Ci napiszę nowe. Zdajesz sobie sprawę, że ten warunek if( !++key_lock ) będzie spełniony tylko wtedy, gdy key_lock przed inkrementacją ma wartość 255? R Dodano po 2 Może coś krzaczy się podczas zaniku napięcia, próbowałeś ustawić BOD level w fuse bitach? Jeśli podczas zaniku napięcia nie używa przycisków...
Każde wduszenie przycisku wygeneruje kilka/naście/dziesiąt odbić i tyle samo wywołań procedury obsługi przerwania. Warto by je doliczyć do rachunku. Ale nawet bez ich uwględnienia: Owszem ale tylko w przypadku ,kiedy nie zablokujesz przerwania pcint na czas drgania styków . Tak samo stanie się w przypadku odpytywania też musisz wykonać procedurę związaną...
Witam, W tym DIY Konstrukcje chciałbym zaprezentować urządzenie do gry w Monski Pong. Cały projekt składa się z dwóch programów, modułu Arduino Uno i płytki PCB. Do zbudowania tego urządzenia zachęcam wszystkich początkujących jako dobry wstęp do podstaw komunikacji Arduino z komputerem z pomocą portu szeregowego. https://obrazki.elektroda.pl/1057744800_...
{ LCD_clear(); LCD_putstr_P(PSTR("TTTTTT1&... LCD_xy(3,1); LCD_putstr_P(PSTR("1"&... } void menu2(void) { LCD_clear(); LCD_putstr_P(PSTR("TTTTTT2&... LCD_xy(1,1); LCD_putstr_P(PSTR("2"&... }...
Tak dla upewnienia się: Drgania styków przycisków masz rozwiązane?
Z góry przepraszam za nieskładność, ale problem polega mniej więcej na tym, ze przy odczycie stanu przycisku z mikrokontrolera pojawia się problem tanich przycisków, mianowicie, w momencie w którym powinno nastąpić mechaniczne zwarcie tak aby sygnał przez przycisk zaczął płynąć, przez kilka ułamków sekundy sygnał jest niestabilny, "migocze", im tańsze...
Witaj 1. stosuj tabulator bo kod jest mało czytelny. 2. nie pokazałeś funkcji przerwań stąd zapytam: Drgania styków przycisków eliminujesz?: http://mikrokontrolery.blogspot.com/2011... 3. ode mnie masz 25 pkt za stosowanie C - boś biedny (2.88pkt), a mogą Ci się przydać :)
Chyba umknął Ci pewien drobiazg drgania styków.
Męczę się żeby wykonać jak najprostszą obsługę z eliminacją drgań zestyków 5 przycisków. Robię to w ten sposób: 1. Do każdego przycisku mam przydzielone 3 flagi i 1 zmienną(załóżmy że przycisk nazywa się "UP": - F_UP_POM - flaga pomocnicza do eliminacji drgań - F_UP - flaga właściwa przycisku (gdy F_UP=1 to przycisk wciśnięty) - F_UP_HOLD - gdy=1 to...
No bez oscyloskopu to może być trudne. Chociaż- to są małe częstotliwości. Jakiś program do karty dźwiękowej- jako oscyloskop. Nie mierzy składowej stałej- ale to w tym przypadku niepotrzebne. Gubienie impulsów może nastąpić tylko wtedy gdy ich amplituda z silnika jest zbyt mała. W impulsatorze mechanicznym mogą być drgania przycisków wewnętrznych....
AFTER 10MS jest chyba nie syntezowalne. Lepiej urzyj przycisków bez drgań. Ew możesz spróbować dodać zegar którego zbocze będzie generowało odczyt stanu przycisków i przekazywanie stanu na przerzutniki żeby uniknąć autopowtarzania, jednak to się wiąże ze znaczą rozbudowa układu wewnętrznego.
Czyli to jest kwestia drgania styków? Tak, dodałem rezystor pociągający do masy (100KOhm) , zawsze go dodaję do kontaktronów , przycisków itp. Dodano po 27 A jak można problem drgania styków rozwiązać w tym przypadku, że by to działało?
przy prubie wyskoczyła taka informacja W takim razie serdecznie zwracam honor w kwestii zdublowanego posta. A gniewem obarczam w zamian silnik (i ustawienia) elektrody ;) jesli masz zamiar dalej się wywyższac zamiast pomuc (...) pomuc (...) nakierowaqc (...) po 3 tygodniowej walce Tak, mam zamiar dalej "się wywyższać" i wytykać błędy, bo czy nie przez...
kalibracja przycisków żarówki przycisków skanowanie przycisków
podłączyć falownik silnik schemat zrobić projektor laserowy ustawić rejestrator
karta graficzna solidworks jakie tanie dobre narzędzia
Pralko-suszarka Amica AWDG7512CL - instrukcja i specyfikacja Dekoder AllVision - konfiguracja i funkcje