Pisząc klawiatura PC masz na myśli typową klawiaturę PC AT, PS/2? Jeśli tak, to protokół nie pasuje do SPI. Najprostsze rozwiązania czytają/piszą pojedyncze bity w przerwaniu każdego cyklu zegara: [url=http://www.atmel.com/Images/doc1235... Interfacing the PC AT Keyboard.
http://obrazki.elektroda.pl/9745806300_1... Witam. Sesja się zbliża, więc tradycyjnie zacząłem już prokrastynować :D . Ostatnio zacząłem pisać bibliotekę do obsługi klawiatury PS/2 w C dla AVR i postanowiłem na szybko w godzinkę lub dwie stworzyć jakiś praktyczny projekt w celu jej przetestowania. Początkowo nie planowałem tego publikować,...
jak CP/M to uruchomienie CP/M i pokazanie na wyświetlaczu - CPM MODE... i wówczas do resetu już sterowanie po RS-232, ale te klawiaturkę też można dodać... jako numeryczną... Tak prosto nie będzie. Wyświetlacz i klawiatura w CA80 działają w przerwaniu NMI, więc część monitora musi zostać na swoim miejscu. Poza tym monitor używa rozkazów RST zamiast...
Witam, sam wspomniałeś, że działało przed czyszczeniem, więc spory wkład ma tu błąd użytkownika. Wszystko się zgadza, klawiatura działała także pewnym jest że wina leży po mojej stronie. Niestety nie potrafie przywołać żadnego zdarzenia które mogłoby spowodować zaistniały problem. Na pewno walczyłem z wtyczkami aby je wypiąć i wstępnie podejrzewałem...
Prowadzący może też docenić Twoje eksperymenty, których efektem jest opinia o całkowitej nieprzydatności tego mechanizmu w projekcie. Możliwość podłączenia przerwania masz w zasadzie wszędzie. Sens, przynajmniej w projekcie który przedstawiłeś, niestety nigdzie wg mnie...
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),...
Druga możliwość, to wykorzystanie przerwania od timera. Ustawiasz sobie przerwanie co np. 10ms i w przerwaniu badasz stan klawiatury i zapamiętujesz. Jeżeli ten nowy stan jest inny, niż zapamiętany poprzednio, to np. wpisujesz sobie wartość opóźnienia (do eliminacji drgań styków) do zmiennej. Jeżeli stan się nie zmienił, to zmniejszasz zmienną i jeżeli...
https://obrazki.elektroda.pl/6692889600_... Od jakiegoś czasu czułem potrzebę sterowania komputerem za pomocą niestandardowej klawiatury. W wielu przypadkach, takich, jak emulatory starych komputerów i sterowanie urządzeniami za pomocą klawiatury, można przypisać funkcję programu do klawisza na klawiaturze. Na przykład komputer ZX...
Nie no to jakas sieczka jest delay ms(20) w przerwaniu? ta obsługa to chyba długa praca typu aby działało. Obsługę takiej klawiatury najlepiej zrobić w przerwaniu jakiego timera, np co 50ms. 2 kolejne równe odczyty równoznaczne z wciśniętym klawiszem. Zadem problem dorobić opcje dla długiego przytrzymania klawisza. n kolejnych równych odczytów. A reszta...
3) czy połączenie z linii wejściowej (do uP) diod i złączenie ich katod i podłączenie do INT0 wystarczy aby wywołać przerwanie. Czy może jest inny sposób na wywołanie przerwania wciśnięcia klawisza Pozdrawiam Propa Klawiatura z definicji nie jest szybkim urządzeniem a więc nie musie pracować na przerwaniach. A poza tym konstrukcja matrycowa za bardzo...
Witam. Mam drobny problem i nie wiem jak go ugryźć. Atmega32 kwarc 16mhz W przerwaniu odczytuję klawiaturę ps2 i w między czasie robię wyświetlanie na matrycy w Timerze z preskalerem 64. I jeszcze mam uruchomione PWM. Jesli wyświetlanie zrobie w pętli głównej i wyłaczę timer to klawiatura czyta się prawidłowo ale jeśli uruchomię timer to wówczas czyta...
Siemanko. Mam problem otóż dzisiaj zauważyłem, że klawiatura przerywa pisanie gdy jest wpięta we frontowy panel komputera. Wygląda to tak, że piszę coś i nagle jest przerwa i gubię znaki lub litery po chwili można pisać dalej. Czasami po takim przerwaniu lubi zwielokrotnić liczbę liter lub znaków. Na tylnym panelu klaiwatura działa bez problemu. Dodatkowo...
Witam ponownie. Przeprowadziłem wczoraj kilka prób i doszedłem do wniosku że problem z działaniem klawiatury nie wynika z błednego oprogramowania. Co zauważyłem: w czasie gdy żaden przycisk nie jest wciśnięty napięcie pomiędzy wejściami a wyjściami jest około +5V Gdy wgram program który ma za zadanie jedynie wykryć przerwanie i wyświetlić na wyświetlaczu...
ok,dzięki za wszelkie posty.Już sobie poradziłem.zrobilem na przerwaniu od timer'a.Dzieki!Pozdrawiam!
Witam wszystkich. Zaprojektowałem i uruchomiłem zegarek z wyświetlaczami LED(SA10-21GWA) i układem PCF8583 współpracującym z mikroprocesorem Atmega8 oraz układami PCF8574AP na szynie TWI(i2c). http://obrazki.elektroda.net/21_12497604... http://obrazki.elektroda.net/58_12497606... http://obrazki.elektroda.net/95_12497605...
Zrezygnowałem z "obsługi klawiatury" w przerwaniu i robię to w głównej pętli programu ale do eliminacji drgań styku korzystam jeszcze z HAL_Delay(20), to chyba tutaj jest miejsce na wykorzystanie timera?? Bo nie wiem jak inaczej można byłoby zastosować timer do obsługi odczytu klawiatury? Co do karty SD, skorzystałem z interfejsu SDIO i middleware FatFs,...
Magiczne hasło brzmi PULL-UP. Sprawdź w datasheet i tysiącach publikacji w sieci.
Witam. Mam układ gdzie na porcie D mam podłączenie klawiatury(7 knefli) oraz lcd(zapis 8 bitowy). Programując klawiaturę w przerwaniu okazało się ze LCD wymusza mi na porcie D rożne stany. Chciałem się zapytać czy jest możliwość obejścia tego?czy tylko sprzętowo? czy np wysłanie komendy lcd off do wyświetlacza zwolni mi te piny i klawiatura będzie mogła...
RTFM, pdf nt. ATMega32, strona 19: Bit 3 – EERIE: EEPROM Ready Interrupt Enable Writing EERIE to one enables the EEPROM Ready Interrupt if the I bit in SREG is set. Writing EERIE to zero disables the interrupt. The EEPROM Ready interrupt generates a constant interrupt when EEWE is cleared. Gdyby się nie dało zrobić jak pisałem tobym Ci głowy głupotami...
1) dowolny, w przerwaniu bedziesz sprawdzac stan tego pinu 2)clk podpinasz pod zewneczne przerwanie i w jego przerwaniu sprawdzasz stan pinu data
OK, to urządzenie MUSI być niezawodne, wiec myślę ze najlepiej będzie jeśli jednak zrobię tą komunikację od nowa na przerwaniach. Rozgryzam powoli implementację Atmela ( http://www.atmel.com/images/doc2564.pdf ). Przykład przeanalizowałem i rozumiem jak działa. Problem pojawia się kiedy chcę odczytać od konkretnego adresu w slave, chyba trzeba by dorobić...
Znajdź w necie opis protokołu PS/2. Generalnie jest tak, że klawiatura wysyła zarówno dane jak i zegar. Zegar podłączasz do wejścia INT procka i na przerwaniu próbkujesz daną. Klawiatura wysyła znak wciśnięty i znak końca (patrz opis protokołu).
Komentarze są do starego projektu ale przerwanie używane do zegara generuje impuls o okresie 1s. Jeżeli klawiatura bedzie obsługiwana na przerwaniu INT0 to jej obsługa będzie działała prawidłowo (czyli wykryte będzie każde naciśnięcie a nie tak jak teraz dopiero po przytrzymaniu na 1s)?
>Logi Nie przesadzaj z tym gubieniem krótkich naciśnięć. Faktycznie, matrycę mikrokontroler musi przemiatać w kółko (najlepiej standardowo w przerwaniu timera). Ale zauwaz, ze zgubienie impulsu ponizej 10ms jest pozytywne (anty-drganie-styków), a po drugie, przy zegarze i2c 400kHz, i np. 200 bitach transmisji wymaganej do zasterowania expandera, masz...
Obsłuż ją w przerwaniu :P Znaczy podłącz linię danych klawiatury do np. INT0, i potem jak naciśniesz klawisz to zostanie wywołane przerwanie INT0. Klawiatura działa na tyle wolno że zdążysz bez problemu odczytać jaki klawisz naciśnięto.
Informację o wciśnięciu generujesz po wykryciu wciśnięcia - inaczej wkurzysz użytkownika. Potem zanim wykryjesz następne wciśnięcie czekasz, aż klawisze zostaną zwolnione. Mi.in. dlatego należy to robić w przerwaniu timera. Jeden timer na ogół wystarczy do wszystkiego.
Coś podobnego mam zrobione. W przerwaniu mierzony jest prąd, napiecie i klawiatura analogowa. w nastepnym przerwaniu mierzony jest czas rzeczywisty i dwa liczniki zegarowe (pomiar mocy i czasów działania/niedzialania) W jeszcze jednym przerwaniu ma programowy PWM 9 bit do sterowania tyrystorem. W kolejnym przerwaniu właczony jest głosnik do sygnalizacji...
F10 i Delete tak End i inne też. Pause/break nie działa a na loading screenie biosu jest tylko logo asusa. Pare kompów złożyłem, w oc się bawiłem i laikiem nie jestem, ale tu mi po prostu ręce opadają. Zaczynam się zastanawiać czy może klawiatura nie przestała działać?
Witam - pamiętam Twój problem z innego wątku. Sytuacja nietypowa skoro po podmianie tylu komponentów problem nie ustał. Procesor? Hmm... wydaje się, że również w innych sytuacjach też byś zauważył jego wadliwe działanie. Proponuję przyjrzeć się jeszcze 2 elementom - monitorowi i klawiaturze/myszy. Jeśli dobrze pamiętam, to masz monitor CRT (zresztą...
Tak, ale klawiatura jest częściej skanowana i trzeba odczekać jakiś czas aby DS przekonwertował temp. a to przerwanie które używam jest od PCF8583
Witam. https://obrazki.elektroda.pl/7083285900_... Piny odczytujące klawiaturę ustawiamy jako wejście, włączamy 'podciąg' dodatkowe rezystory w procesorze. W przerwaniu obsługującym wyświetlacz LED dajemy coś takiego [syntax=c] void readKey(void) { uint8_t a = 0; key = 255; >>>>> wysylanie danych do LED DP3A _delay_us(1); // czas na...
col<<=1 o to mu zapewne chodzi. nop wystarczy a większe opóźnienie jak już daj w innym miejscu. Ja te klawiatury obsługuje w przerwaniu, więc to inna historia
Kod skopany dokumentnie. 1 - silnikami należy sterować w przerwaniu od timera, tylko taki sposób zapewni dokładne, równe sterowanie silnikiem 2 - klawiatura powinna reagować na zmianę stanu a nie na konkretny poziom, dzięki temu klawisze nie sa od siebie zależne i nieblokuja pętli głównej programu Ten program może być wzorem, jak nie pisać programów....
Okazuje się, że przyczyną są opady śniegu - płatki śniegu blokują wiązki podczerwieni uruchamiając dzwonienie. (at)Ircys Mamy specjalne oprogramowanie przygotowane na tę okazję, które ma zmodyfikowaną stałą czasową aktywacji po przerwaniu wiązki i ponoć mocno ogranicza to występowanie problemu (rzecz jasna, w 100% go nie eliminuje, ale pewna redukcja...
wyjaśnij o co chodzi ci z tym przerwaniem ? jesli chcesz by klawisze były sprawdzane w przerwaniu zastosuj ten schemat : #include <avr/io.h> #include <avr/interrupt.h> #define F_CPU 1000000UL // flagi klawiszy np. key1 => PD0, .... volatile int key1=0, key2=0, key3=0, key4=0, key5=0; //przerwanie odczytuje jaki klawisz zostal wcisniety...
Witam, Piszę ponieważ nie bardzo wiem jak zabrać się do tematu. Kilka dni temu włączyła mi się aktualizacja win10 podczas wyłączania komputera. Niestety na swoje nieszczęście śpieszyłem się i wyłączyłem komputer podczas owej aktualizacji. Dzisiaj włączam komputer pojawia się ekran logowania niestety nie mogę nic zrobić ponieważ ani myszka ani klawiatura...
W ramach oszczędności linii mikrokontrolera ATMega8 podłączyłem LCD do koncówek PortuD : E = Portc.6 , Rs = Portd.4 Db4 = Portd.3 , Db5 = Portd.2 Db6 = Portd.1 , Db7 = Portd.0 Końcówek tego samego portu używa klawiatura 4 x 4 z wykorzystaniem funkcji Getkbd (). Czy oprócz tego mogę wykorzystać końcówkę PD2 lub PD3 by odbierać sygnał w podczerwieni,...
Może rejestr SIPO jakiś może (ls164 czy jakie tam są popularne) i multiplex na 4 segmenty? Do tego klawiatura 4x4 albo 3x3 chodzącą w tym samym przerwaniu co wyświetlacz i używającą tych samych pinów to sterowania multuiplexem co zmniejszy ilość pinów o 4 tylko trzeba diody dodać ? Pinów starczy ale pamięci w baskomie to raczej wątpię choć kto wie ja...
Witam, na zajęciach otrzymaliśmy projekt "kalkulator z wykorzystaniem klawiatury 4x4" ma to być najnormalniejszy w świecie kalkulator a klawiatura ma odpowiadać za klawiaturę numeryczna + wybór działania(czyli np 2+2 =) powiem szczerze że już nie mam pojęcia, doszedłem do punktu wrzenia. Proszę o pomoc, jak na razie mam tyle :/ #include <avr\io.h>...
Cóż.. mało wiem o całym urządzeniu, ale proponuję następujące rozwiązanie (rozumiem, że klawiatura przesyła przez RS kod znaku ASCII). ljmp 100h ;skok do poczatku programu org 23h ;wektor odpowiadajacy przerwaniu UART ajmp odbior ;skok do obslugi przerwania org 100h ;poczatek glownego programu mov SCON,#050h ;zaladowanie ustawien do odpowiednich mov...
Jakiś fizyczny sposób załączenia przerwania timera przerwaniem od INT0 . Szukam i nie mogę znaleźć żadnych przykładów ani bardziej szczegółowego opisu jak to ugryźć , we wcześniejszych odpowiedziach nikt nie napisał dlaczego nie można używać delay w przerwaniu a w prostej wersji programu nie wpływało to na działanie. Teraz mam bardziej rozwinięta wersje...
DEX - no cóż dlatego, bo taki układ już jest i nic nie da się teraz zrobić. Kolumny i wiersze są podpięte bezpośredni pod wymienione porty.. Więc bezpośrednie wykorzystanie zewnętrznego przerwania nie wchodzi w rachubę. mariuszlorenc - no wlasnie może o to mi chodzi, ale jak to się robi, bo to moje naprawdę pierwsze doświadczenie z Timerami, flagami...
Theur : jak już coś wyjaśniasz to pisz jak jest a nie jak ci się wydaje. Klawiatura niczego nie buforuje tylko wysyła informacje o wciśnięciu lub puszczeniu klawisza. Kontroler klawiatury (na płycie głównej) po przyjęciu pełnej informacji (szeregowo) generuje przerwanie INT9. Procedury BIOS'a umieszczeją zdekodowaną informację w obszarze zmiennych 40:1cH...
Dzięki za chęć pomocy. Procka mam attiny 2313, podłączenia są następujące: wyprowadzenie nr.12-tranzystor setek,13-tranzystor dziesiątek,14-tranzystor jedności.74ls164 podłączony jest: clr-do +5V,clk-11 wyprowadzenie procka,AB(zwarte)-9 wyprowadzenie procka. Nie chcę absorbować czasu na całość, popróbuję resztę programu sklekocić sam (ma być tam jeszcze...
Strasznie przekombinowałeś. Do obsługi klawiszy nie powinno używać się przerwań. To nie jest operacja wymagająca natychmiastowej reakcji. Jesteś pewien, że zmienna State nie jest zerowana przy każdym wejściu do funkcji? W wyznaczaniu State operacja 'OR 0xE000' jest zbędna, oczywiście wówczas późniejszy warunek byłby: "State == 0x1000". Moim zdaniem...
Chciałbym zrobić symulację naciśnięć klawiszy na klawiaturze PS/2 wykorzystując ATMega328 z rezonatorem kwarcowym 16MHz i interfejs PS/2 na USB. Posiłkowałem się tym opisem PS/2. https://www.avrfreaks.net/sites/default/... Z opisu wynika, że urządzenie PS/2 (wspomniana klawiatura) musi być w każdej chwili przygotowane do odbioru...
Więc tak, Dziękuje wszystkim za opinie. Pierwsze pytanie to czy jeżeli zerwie się klawiaturę lub otworzy to czy jest możliwość złamania kodu. Nie ma, ponieważ w samej klawiaturze są tylko przewody, głośniczek i diody LED. To centralka steruje wszystkim, a ona znajduje się w środku. Dodatkowo klawiatura posiada zabezpieczenie sabotażowe więc przy otwarciu...
U mnie diody raz działały raz nie :(. Zrobiłem sobie tak :) Po obsłudze przerwania wystawiam 0 na wiersze i sobie czekam aż przyjdzie kolejne przerwanie :)
Witam. Podłączyłem klawiaturę do uc, naciśniecie przycisku powoduje zmianę stanu wejścia PD2 przez co uc wskakuje w przerwanie. W nim sprawdza po kolei który dokładnie przycisk jest wciśnięty poprzez podłączenie wyjść switchy do GND co ma spowodować spadek napięcia na PD2 czyli logiczne 0. W przerwanie dobrze wykrywa który przycisk jest wciśnięty, sygnalizuje...
Przerabiałem przez 5 lat różne systemy sterowniki wszystkie sloty PCI zawsze USB było na jednym przerwaniu z TV, choć było kilka wolnych win98 czasem świrował program pixelview wykonał niedozwoloną itp., linux nie sprawiał problemu, winXP jak nie kopiuje plików a najlepiej nic nie robię podczas oglądania telewizji na PC to działa Myślę, że jednak ten...
opóźnienie przerwaniu rs232 przerwaniu enkoder przerwaniu
powerbank lifepo4 odbiornik radiowy kanałowy wymiana kondensatorów zasilacz
zmywarka whirpool mruga start makita migają diody
Głośność radia Ford Focus MK3 ustawiona na 0 - brak możliwości zmiany Instrukcja zasilacza BFP 12/5 - gdzie znaleźć?