Nie, podajesz na jedno wyjście wiersza stan niski i sprawdzasz stan wejść kolumn podciągniętych wwnętrznei do plusa. Robisz to zwsze w przerwaniu timera. To samo przerwanie może służyć np. do wyświetlanai LED, o ile masz w systemie wyświetlacz multipleksowany.
deklarujesz skok do przerwania pod jakims tam adresem: .org INT0addr rjmp klawiatura teraz deklarujesz skok do resetu .ORG $000 rjmp reset reset: i dalej jakis kod... tyle ze ten kod zaczyna sie zaraz za rjmp RESET jednoczesnie zamazujac skok do Twojego przerwania INT0. Zakrecone no nie?;]
Proponuję zastanowić się czy mikrokontroler będzie tylko i wyłącznie czekał na przyciśnięcie przycisku czy robił coś jeszcze poza tym. Jeżeli tylko i wyłącznie będzie oczekiwał na przycisk to porty ustawiasz jako wejścia i sczytujesz stany. Natomiast jeżeli zajmiesz go czymś to proponuje wykorzystać przerwania. Nowsze mikrokontrolery (potomki Atmega8...
Dziękuje koledze perlon i dondu za zainteresowanie, ja dopiero zaczynam zabawę z prockami Atmela i Bascomem więc wolałem zapytać. Drabinka z rezystorami fajna sprawa ale wolę proste rozwiązania. Więc skoro mogę użyć wejścia programujące to rozwiązuje mój problem, zrobię klawiaturę matrycową z wykorzystaniem przerwania.
Z tego co wyczaiłem to mega popędzana jest kwarcem 14,7456 MHz (kwarc do USART)... Timery ustawione są tak, że przerwanie wywoływane jest co 0,05s stąd podstawowa zmienna zliczająca do sekundy zwiększana jest co drugie wywołanie przerwania (odpowiadają za to variable i variable1)... Spróbuj przeanalizować ten kod i skonfrontować go z dokumentacją do...
Żeby zrobić menu - potrzebujesz dodać kolejne funkcje obsługi odczytu i wyświetlania temperatury. Obsługę wyświetlania i poruszania się po menu itd. Ponadto istniejącą procedure obsługi PCF musisz rozszerzyć o procedury odczytu i zapisu daty oraz obsługę budzika. Kolejna sprawa to wprowadzenie przerwań. Tzn. Ustawiasz w PCF odpoowiednią datę budzika...
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.
Idea jest zawsze taka sama, bez wzgledu na procesor. Jezeli Verengard nie uzywa zadnego OSa to moze zrobic to na przerwaniu od timera.
Oj przeczuwam kłopoty, piszesz że przesiadasz się z małego AtMega na AtMega128, a tam niektóe rejestry mają zmienione nazwy lub wręcz niektóre bity są w innych/nowych rejestrach. dla AtMega8..32 działa coś takiego #define GLOBAL_INT_ENA()asm("se... #define GLOBAL_INT_DIS()asm("cl... #define INT0_ENA()...
Witam. Jako iż wakacje i mam dużo czasu postanowiłem zabrać się za zbudowanie odświeżonej kopii IBM PC. Procesorem układu byłaby ATmegax128/ATmega128 która odpowiadała by za emulację 8086, jako RAM służyło by 1MB 16bitowej równoległej pamięci SRAM. Program w atmedze odpowiadał by za pobieranie programu z ramu i jego interpretowanie, emulował by również...
Ale po co się męczyć, skoro Atmel napisał [url=http://www.atmel.com/dyn/resources/... aplikacyjną na ten temat, gdzie jest matrycowa klawiatura, działanie na przerwaniach i niski pobór prądu.
Kolega niech raczy zauważyć że kontraktron ma coś takiego jak drżenie styków. Może być tak że przerwanie jedno twoje załaczenie potraktuje jak wiele zboczy je wzywalających i cały pomiar weźmie w łeb bo się wykona po prostu wielokrotnie. Musisz użyć więc kolejnego sprawdzania stanu styku juz po wykonaniu przerwania tak aby się upewnić ze jest to "trzymanie"...
Buduję prosty sterownik na atmedze 8, chcę obsługiwać klawiaturę w przerwaniach od timera0 ale atmega nie widzi procedury obsługi przerwania i resetuje się. Jeżeli zatrzymam timer albo wyłączę przerwanie timera, albo wyłączę globalnie przerwania to nie resetuje się. Kod procedury obsługi przerwania (funkcje do LCD są w pełni sprawne, nawet gdy ISR jest...
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ć,...
I jak ciekawie się wątek rozwinął :) ... A pytanie zadawałem bo mi tak luźno przyszło do głowy robienie klawiatury na PCINT albo fototranzystora podłączenie i wykrywanie 0/1. Dopóki autor nie wróci to możemy offtopować :P .
Witam. Robię sobię własną klawiaturę (planckkeyboard.com) i jako kontroler do tej klawiatury używam modułu na atmega32u4, chcę do tego połączyć moduł bluetooth i akumulator li-ion. Jaki moduł będzie dobry do ładowania akumulatorka z usb, który jednocześnie przy braku zasilania będzie podawał napięcie do modułu bluetooth i mikrokontrolera. Zasilanie...
Witam, napisałem taki prosty programik do obsługi przerwania INT1 i coś nie chce działać. Pierwszy raz pisałem program z obsługą tego przerwanie i prosłbym o pomoc w znalezieniu błędu. Kod programu: #include <avr/io.h> #include <avr/interrupt.h> #include <avr/delay.h> int main(void){ DDRD &= ~(1<<PD2);...
Nie używaj do odczytu przerwania, tylko zrób skanowanie jak w normalnej klawiaturze. Stan portu odczytujesz ciągle co np. 5ms (wykorzystaj przerwanie timera). Jeżeli 3 odczyty (lub więcej, dobierzesz eksperymentalnie) pod rząd są takie same to oznacza, że odczytałeś jego stan.
Czy ja dobrze widzę że używasz dwóch RTC? Ogólnie taki objaw jak opisujesz to czekanie na jakiś warunek który nie następuje lub zbyt długie przerwania. Ponieważ zauważyłeś że problem jest i z klawiaturą i z czasem, musisz któreś z tych wykomentować i skupić się na uruchomieniu drugiego. Tu już nie mam gotowej odpowiedzi, bo dużo się "dzieje" w tych...
Projektuje uklad w ktorym potrzebuje osiem nizaleznych generatorow ktorych czestotliwosc bedzie zmieniana z klawiatury ( 8 klawiszy + i 8 klawiszy - ). klawiatura obslugiwana jest w przerwaniu. Chcialbym aby podczas obslugi klawiatury nie bylo zadnych zaklocen przebiegu i dodam ze przytrzymanie kalwiatury skutkuje zwiekszaniem lub zmiejszaniem czestotliwosci...
Problem typowy dla układów zasilanych bateryjnie - może ktos przerabiał lub spotkał sie z problemem (oraz jego rozwiązaniem). Opis sytuacji: Układ elektroniczny (mikrokontroler np AtMega8 lub 89c2051 + klawiatura matrycowa 16 klawiszy - 4x4 i niewiele ponad to) Rozwiązanie 1: zasilanie takiego układu cały czas w oczekiwaniu na nacisnięcie klawisza -...
Atmega 32, program obsługujący klawiaturę - 4 przyciski, odczytywane co 20 ms ( co któreś przerwanie timera 1), przyciski podpięte pod PC), PC0,PC1,PC2,PC3. jeżeli w programie wykorzystuję PC0 i PC1 to jest ok , ale jeśli w pętli obsługi przerwania odczytującego klawiaturę sprawdzam stan przycisków PC2 i PC3 to zgłoszenia przerwania są w każdym odczycie...
Tylko, że kolega chce sprawdzać stan wyjścia które sterowane jest sprzętowo przez licznik. Poza tym zdarzyć się może ze stan któregoś piny zmieniany jest np. w przerwaniu a ty chcesz w pętli głównej sprawdzić jego stan. Sam to stosuje dość często. Np. sterując buzzer, który włączany jest podczas przyciskania klawisza klawiatury 4x4 i innych akcjach,...
W UART_Transmit nie ma nic takiego co mogłoby powodować gubienie tych znaków a wygląda tak: Dodano po 10 Właśnie zmniejszyłem częstotliwość przerwania do obsługi klawiatury do ok 30 razy na sekundę i zwiększyłem predkość transmisji do 19200 bps i jest dobrze cały string jest przesyłany w komplecie :) Dzięki bartosz.tarnowski
http://obrazki.elektroda.pl/5579748400_1... Dendy Keyboard Transformer - podłącz klawiaturę i magnetofon do Pegasusa! Artykuł powstał jako opis zmagań z próbą zrobienia reprodukcji kardridża Keyboard Transformer - rosyjskiego wynalazku, który umożliwia pisanie programów w BASICU. Kardridż udostępnia gniazdo klawiatury i magnetofonu...
Ja ogólnie etap migania diodami mam już za sobą zrobiłem parę projektów prostych wykorzystujących TIMERY, Przerwania zewnętrzne, obsługę klawiatury bądź LCD i teraz zamierzam się właśnie dokształcić w interfejsach a doświadczenia w tym temacie nie mam, dlatego też pytam się was. A co sądzicie aby ten problem spróbować zrobić na interfejsie SPI? Z tego...
Dzień dobry, Mam problem z klawiszami. Zedytowałem do własnych potrzeb fragment kodu znaleziony na http://mikrokontrolery.blogspot.com/ [syntax=cpp]ISR(TIMER0_OVF_vect) { sei(); static uint8_t stan_przyciskow_najstarszy , stan_przyciskow_stary , stan_przyciskow_nowy; stan_przyciskow_najstarszy = stan_przyciskow_stary; stan_przyciskow_stary = stan_przyciskow_nowy;...
Powoli składam sobie zegarek na tym lcd + atmega 16 i mam kolejna koncepcje, z którą musze sie Wami podzielić by ktoś mógł ocenić czy to realne. Konkretnie, mam w układzie wolne jedno przerwanie (pin int1) i chciałbym obsłużyć na nim kilka przycisków;] Jak? Mam sobie np PORTB (piny PD4-7). Pin INT1 ustawiam na wejscie, stan logiczny 0, piny 4-7, również...
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...
To nie jest dobry schemat, bo: 1. Skanowanie klawiatury wymaga wyłączenie wyświetlaczy. 2. Masz multipleksowanie w 8 fazach, a to wymaga sporego prądu segmentów - ATmega ma za małą wydajność prądową - wypada mieć min. 30 mA na segment, prawdopodobnie więcej. Pomyśl o wzmacniaczu segmentów, np. tranzystory NMOS (BSS138?). 3. Niepotrzebnie dajesz po dwa...
IRQ tester https://obrazki.elektroda.pl/3243423400_... IRQ Tester to proste narzędzie, głównie do testowania czasu odpowiedzi na impulsy, lub czasów międzyzboczowych dostarczonego sygnału. Program został napsiany na ukontroler AVR Atmega168, a jego głównym zadaniem jest funkcja multiwibratora monostabilnego, którego działanie polega...
Atmega odpada. Koszt porównywalny z VNCL2. Programowe rozwiązanie moge użyć tam, gdzie nie mam krytycznych przerwań a w niektórych konstrukcjach takiem mam. Warto jednak wiedzieć, że takie rozwiązanie istnieje. VNLC1 jest droższy od VNCL2 więc skupiam sie na 2. W każdym razie skoro 1 obsługuje HID to 2 tez powinien. Przewagą VNC, poza ceną jest fakt...
Nie wywołuje cli (nie wiem co to jest). Dostałem kiedyś radę radę żeby dodać sei w main i tak też zrobiłem. Mój program działa tak mam pętle while(1) w której sprawdzam klawiaturę czy nie została wciśnięta i jeżeli tak to tylko ustawia odpowiednie pola to samo dzieje się w przerwaniach. Gdy odbieram jakiś znak to dodaje go do tablicy i ustawiam odpowiednią...
Witaj :D Według mnie tablica jest niezbedna poniewaz to w niej sa zapisane wlasciwe znaki , i wydaje mi sie ze nauczuciel sie myli bo samo polecenie getatkeyb() zwrocilo by numer wcisnietego klawisza a nie konkretna literke , liczbe czy znak . Przykladem moze byc fragment polskiego helpa do bascom-a w ktorym jest opisane dzialanie tego polecenia Funkcja...
Pomysł i projekt tego oto prostego zestawu z procesorem 8051 powstał podczas fascynujących zajęć na uczelni. Podczas ćwiczeń na legendarnym zestawie DSM-51 nie nadążałem za tym asemblerem. W tamtych czasach zajmowałem się jedynie AVRami. Jako, że nauka lepiej mi szła w domowym zaciszu zacząłem szukać jakiegoś fajnego i łatwo programowalnego mikrokontrolera...
Chcę zaimplementowac RTC w mojej Atmedze. Mają to być przerwania od asynchronicznego Timera2. Coś nie działa, mam kilka pytań : 1. czy piny w porcie C (PC7 i PC6 które służa jako TOSC1 i TOSC2) trzeba ustawić jako we/wy ? czy wystarczy ustawienie bitu AS2 w ASSR ? 2. jakie powinno być napięcie na nich ( u mnie na obu pinach rezonatora jest 0.4 V). 3....
Cóż okaże się - w konfrontacji z oryginalną dokumentacją, może pomoże. Dodano po 12 Hmm, specjalnych rewelacji tam nie ma, to akurat jestem w stanie sam wyczytać, natomiast myślę ze było by to dużym ułatwieniem dla początkujących. Szczególnie dobrze opisane porty, timery, przerwania. Najwięcej pytań dotyczy tych podstaw. Regulamin p.15 Proszę zwracać...
Zarezerwuj sobie na godziny i minuty po rejestrze w procesorze. Zrób obsługę klawiatury. Ja bum dał 3 przyciski. 1 - jak przytrzymasz dłużej to wchodzi w trym ustawiania. Jak potem na krótko to przechodzi po kolejnych rejestrach i ustawiasz 2 pozostałymi wartość godziny minuty, dnia, miesiąca, roku. 2. zmienia wartość w górę 3. zmienia wartość w dół...
http://obrazki.elektroda.net/41_12588515... Zamieszczam projekt sterownika do wymiennika ciepła i pompy wymuszającej obieg wody w centralnym ogrzewaniu. To moje pierwsze użyteczne urządzonko zainspirowane zostało wymianą zbiornika do ciepłej wody. Całość składa się z: wyświetlacza alfanumerycznego bardzo znanego i łatwo dostępnego: WC1602A...
Hmm, przygotowałem taki schemat pcb pod klawiaturę matrycową o rozmiarze 4x5. http://obrazki.elektroda.pl/8909660200_1... Zastanawiam się jeszcze nad jedną rzeczą. Mianowicie microswitch ma 4 piny. Moje logiczne myślenie podpowiada mi że są one parami, czyli że dwa pierwsze są połączone i w momencie wciśnięcia zwiera je z dwoma pozostałymi....
Kolego samuraj - pierwsze zdanie w moim poście - "...wyświetlacza graficznego monochromatycznego 128x64 punktów (z wbudowanym generatorem znaków na T6963c)." MONO <-> B&W T6963c - sterownik z generatorem znaków. Dodatkowy procesor chcę zastosować ponieważ LCD potrzebuje 8 linii danych oraz 7 sterujących (licząc z podświetleniem). Nawet stosująć...
Witam Klawiatura zbudowana jest za pomocą sześciu przycisków monostabilnych, podłączonych do portu PF0-PF5. Równolegle z każdym przyciskiem jest włączony kondensator elektrolityczny o pojemności 1µF w celu eliminacji wpływu drgań styków. Aby nie odczytywać stanu linii cały czas, zdecydowałem się na wykorzystanie przerwania zewnętrznego !INT7. Jest...
Witam. Zbudowałem sobie klawiaturę matrycową 4x4 do mikrokontrolera Atmega 128. Klawiatura jest podłączona do 8 wyjść portu D. Obsługę klawiatury chce realizować poprzez przerwania wykorzystując przerwania zewnętrzne INT0...INT3 Poniżej przedstawiam kody: DEFINICJE: #define KLAD DDRD // PORT LINII STERUJACYCH #define KLAP PORTD //#define WE1 0 // LINIA...
Witam wszystkich! Nurtuje mnie pewien problem z moją ATmegą. Mianowicie, wykonuje projekcik z ATmegą128 w roli głównej na płytce stykowej. Ze względu na dużą ilość Pinów, ATmega jest wlutowana w przejściówkę i poprzez goldpiny a następnie skrętkę podpięta do płytki stykowej, na której składam elektronikę. W związku z tym przewody od mikrokontrolera...
Jak chcesz za pomocą 10-bitowego ADC obsłużyć więcej niż 10 przycisków? Jeśli przycisk przyjmuje dwa stany, to do ich reprezentacji potrzebujesz 1 bita, masz 14 przycisków, czyli potrzebujesz co najmniej 14 bitów z ADC, a tylu nie masz. Oczywiście problem nie istnieje, jeśli na raz można nacisnąć tylko jeden przycisk... Kolejna sprawa - po co oddzielne...
Swoją drogą, nadal nie rozumiem, dlaczego autor tematu, dysponując tak dużym procesorem, nie napisze sobie obsługi DSów w tle, wtedy czyta się tylko rejestry w SRAM i dostaje się aktualna temperaturę, no chyba ze ma jakiś dziwny dom i w nim potrafi się zmienić w ciągu 20ms o parę stopni :D Kolego moja ATMega nie tylko czeka na odczyty z czujników temperatury...
https://obrazki.elektroda.pl/6021352700_... https://obrazki.elektroda.pl/6921159500_... https://obrazki.elektroda.pl/3416870700_... https://obrazki.elektroda.pl/7961253800_... https://obrazki.elektroda.pl/7601893100_... Dzisiaj przedstawię państwu dwa sejfy dla dzieciaków,...
Witam , dzięki za odpowiedź .. i to od samego MISTRZA. odnośnie kompilatora (x86)\Atmel\Atmel Toolchain\AVR8 GCC\Native\3.4.2.939\avr8-gnu-toolchain\... . Dla porządku - jestem startującym do C , zatem wiele pytań , dla wielu pewnie w kategorii " oczywista oczywistość". Dotąd pisałem w asm. próbując przesiąść się na C , zaczynam po prostu...
Od kad zmienilem bit CKOPT w fusach dziala bardzo stabilnie A więc wniosek , że program to jedno , a sprzęt to ... drugie :D za kazdym razem dostaje informacje AT+CSQ+CSQ: 19,99OK Czyli telefon wysyła echo. ... Nie rozumiem do konca czemu bez zerowania bufora tez dziala ..ale wstawielm to co podeslales ;) Jeśli odczytasz wszystkie dane w buforze ,...
No to może zastanów się (skoro już i tak chcesz zdecydować się na jakiś zewnętrzny scalak) np na Expander 16bitowy I2C PCF8575 Nie dość, że w procku zużyjesz TYLKO 2 !!! piny na magistralę I2C to jeszcze będziesz miał do dyspozycji 16 pinów. Możesz sobie 8 z nich ustawić jako wejścia i podłączyć do nich swoje słicze. Natomiast kolejne 8 bitów ustawiasz...
Witam, od pewnego czasu borykam się z pewną trudnością, a mianowicie obsługą dwóch przerwań zewnętrznych, z czego jedno ma byc wykorzystywane podczas obsługi drugiego. Projekt to odcięcie zapłonu z zamkiem szyfrowym. Po krótce: W momencie załaczenia stacyjki na on, ma wyśwoietlać się komenda podania pinu itd, po wpisaniu na tranzystor sterujący przekaźnikiem...
Gdy lekko dotykam końcówką cewki masę( "X" na schemacie to miejsce styku) to powstaje bardzo mała iskra i Atmega się wybudza z stanu power down, jakby został naciśnięty przycisk od przerwania INT0. Czy to normalne? Pytanie o "normalność" jest bezsensowne, jeśli pracę procesora daje sie zakłócić w jakikolwiek sposób, to znaczy że można to było zrobić...
Jeśli dobrze rozumiem komunikację PS/2 to na porcie B powinno być wysokie napięcie gdy kliknę jakikolwiek przycisk na klawiaturze. A tak się nie dzieje. Dlaczego? PS/2 to nazwa zarówno złącza jak i protokołu komunikacyjnego. Klawiatura jest urządzeniem, którego złącze PS/2 jest dwukierunkowe, to znaczy że z i do kontrolera klawiatury można wysyłać...
Możliwości jest wiele. Możesz np. zrobić klawiaturę na ADC: http://mikrokontrolery.blogspot.com/2011... Schemat przyda się na pewno. Dzięki! Wygląda to interesująco i pewnie z tego pomysłu bym skorzystał, gdyby nie to, że... chciałem jednak mieć podłączone przyciski pod piny INT0 i INT1 żeby nauczyć się obsługiwać przerwania...
jednak nie implementowałem FATa na karcie, tylko zrobiłem sobie swój system plików znacznie uproszczony. Stwierdziłem że nie ma to sensu, bo układ by się nie wyrobił przy pofragmentowanym systemie plików. To jest jednak spore ograniczenie. Drugim ograniczeniem w Twoim przypadku to obsługa tylko 1 częstotliwości próbkowania (wynika to z użycia pwm 8000/256=31.25khz...
Robię urządzenie , które ma być pewnego rodzaju nagrywarką sygnału DMX. Sygnał DMX to specyficzna wersja transmisji szeregowej . Muszę odczytać 128 słów 8 bitowych i zapisać je w pamięci zewnętrznej. Na każdą sekwencję zakładam 8 kroków. Te słowa są wysyłane cały czas. Jeden taki ciąg znaków określa konkretną scenę. Chcę zapisywać po kolei takie sceny...
http://obrazki.elektroda.net/58_12588185... Witam pragnę przedstawić Wam konstrukcje jakie wykonałem do C64 Pomysł narodził się z rok temu późną wiosną chcąc pograć na emulatorach w trochę gierek do C64 , przekonałem się jednak że emulator C64 na pc to jedynie namiastka starych dobrych czasów, wtedy przypomniałem sobie o moim staruszku który...
Witajcie. Zlutowałem układ jak pokazuje rysunek poniżej: http://obrazki.elektroda.net/14_12637592... Napisałem i zaprogramowałem atmega #define F_CPU 1000000UL #include <avr/io.h> #include <inttypes.h> #include <util/delay.h> #include <stdlib.h> #include "hd44780.h" #define KEY_1 (1<<0) #define...
1. O ile jest Atmega przetaktowana? Jak to wpływa na jej pracę? Taktuje 20MHz, a powinna byc 16. Negatywnego wpływu nie zauważyłem ale docelowo ma być Mega324, której Fmax 20MHz. Powodem zastosowania M324 jest także to, ze każde wyprowadzenie może generować przerwanie. Dzięki temu klawiatura będzie obsługiwana bez przerywania generowanego sygnału....
Wprowadziłem Twoje podpowiedzi za które jestem wdzięczny:) więc tak przez hyper terminal sprawdzam to i wysyła znak podany z klawiatury ale go nie zwraca, nie ma zadnej reakcji na diodach ( po włączeniu 1 lub 2 ma sie zmieniać ich stan) #include <avr/io.h> // dostęp do rejestrów #include<avr/interrupt.h> #include<avr/signal.h> #define...
http://obrazki.elektroda.pl/1899461000_1... Ostatnio zaprojektowałem na potrzeby dyskoteki switch DMX. Wykonałem 8 sztuk, jak na razie pracują bez zarzutu. Nie publikuję płytki, bo wymaga dopracowania, a nad publikacją wsadów i źródła się zastanowię. Co do PCB, to i tak zaraz dostaną mi się pewnie słuszne baty za zbyt małe odstępy części...
Po pierwsze wszystkie biblioteki Arduino mają otwarty kod i można je przeanalizować, samo to ma wartość dydaktyczną. Po drugie platforma sprzętowa Arduino w żaden sposób nie narzuca swojego IDE. Nawet w oryginalnym środowisku Arduino, można a czasem nawet warto operować na rejestrach bezpośrednio. Łatwo na niej pokazać jakieś podstawowe koncepcje -...
Witam . Napisałem ( prawie) sobie na ww procesor program w asm i bascomie który ma robić za zamek otwierany kartą . W bascomie wszystko działa w 100 % według założenia jednak w asm mam taki problem że układ sam zmienia swoje taktowanie (ponad 2x) przez co wszystkie funkcje czasowe nie pracują jak powinny . Nie było by w tym nic niezwykłego ( ustawiony...
http://obrazki.elektroda.pl/4926270100_1... Diagnozer joysticków (np. do Pegasusa) na Atmega 8 Projekt Przyszedł wreszcie czas naprawić posiadane przeze mnie joysticki do Pegasusa. Zwykle uszkodzeniu (urwaniu) uległ kabel lub taki niesprawdzony/niesprawny joystick został zakupiony bez znajomości jego przeszłości. Jeśli kable się urwały,...
Zamiana wyświetlaczy nic nie daje, zamieniałem nawet same kabelki łączące je z płytką i też nic. Jeśli chodzi o przerwania to mam odbiór danych z RFM12 oraz obsługę klawiatury na PCF8574. Może faktycznie coś na rzeczy z tymi przerwaniami. Wyświetlacz, który nie działa jak trzeba oprócz wyświetlania daty, godziny oraz części odebranych danych wyświetlać...
na każdym który napiszę jest tak samo, w nowym temacie powyżej podałem ustawienia fuse bitów, zaraz wkleję kawałek na którym teraz się bawię Dodano po 4 to kod na którym teraz się bawie '***************************************... '-------------------- konfiguracje ----------------------------------------... $regfile...
Tak to jest, kiedy nie sprawdza się stanu przycisków w przerwaniu timera... Wracam do tematu, bo zrobiłem własny projekt zamka na szyfr z wykorzystaniem klawiatury szesnastkowej i czterech siedmiosegmentowych wyświetlaczy. Wszystko ładnie działa, tylko napisałem obsługę klawiatury z wykorzystaniem delayów, wiec widać, że słoma z butów nieco wystaje....
Witam Na początek to //Porty: PC0(SCL) PC1(SDA) -> wejścia TWI DDRC =0b11111110; PORTC =0b11111101; skoro porty PC0(SCL) PC1(SDA) to wejścia TWI , ja bym je ustawił tak //Porty: PC0(SCL) PC1(SDA) -> wejścia TWI // 1 -> wyjście // 0 -> wejście DDRC =0b11111100; // 1 -> z podciągnięciem do VCC (pull-up) // 0 ->...
http://obrazki.elektroda.net/39_12775659... Projekt: Sterownik panela słonecznego. Wstępnie będzie wykorzystywał pięć modułów takich jak: a) płyta główna, b) moduł zasilacza c) szyna, d) sterownik osi X, e) sterownik osi Y, f) moduł multi który obsługuje: - wyświetlacz HD44780, - klawiatura PS/2, - czujniki słoneczne osi X, - czujniki słoneczne...
http://obrazki.elektroda.pl/1834069400_1... Witam wszystkich. Na początku chcę zaznaczyć, że elektronika to dla mnie hobby i sposób na odprężenie oraz nauczenie czegoś nowego, jestem osobą początkującą w tej dziedzine. Pragnę podzielić się moim projektem zegara z HDD, który konstruuję. Projekt nie jest jeszcze skończony w 100%, ale...
Zbudowałem sterownik silnika krokowego na parze L297 i L298.Steruje sie to standardowo sygnałem DIR-kierunek, ENABLE-załączenie silnika,H/L -praca krok półkrok, CLK -impulsy zegarowe sterujące szybkością pracy krokowca. Sterownik działa , wypróbowany na generatorku NE555 jest OK. Przyszedł czas na sterowanie tego z procka.Sama baza zbudowana jest z...
http://obrazki.elektroda.pl/9079980500_1... Na wstępie chciałbym przybliżyć, skąd taka a nie inna nazwa nadana przeze mnie temu projektowi. Prace rozpoczęły się w momencie zapotrzebowania na minimum dwa zsynchronizowane generatory małej częstotliwości. Ponieważ zakres przestrajania jaki mnie zadowalał ograniczał się do 100Hz przy rozdzielczości...
Dzięki wszystkim za opinie. Oddałem dziś projekt został oceniony na 5;] Dokonałem kilku zmian w programie więc wrzucam nową wersję: http://obrazki.elektroda.pl/8149391200_1... Jeśli już eliminujesz drgania styków programowo i w dodatku z użyciem timera, to mogłeś się pokusić o tak samo zrealizowane opóźnienia. Mnóstwo pamięci pożera...
Witam Postanowiłem zagłębić wiedzę w zakresie sterowania silnikiem krokowym. To jak jest zbudowany, jakie są jego rodzaje i zastosowania było mi poniekąd znane, ale dopiero realizacja jednego z założonych sobie projektów przyczyniła się do zgłębienia wiedzy szczególnie w zakresie jego obsługi za pomocą mikrokontrolera AVR. Aby przystąpić do projektu...
Przedstawiam tylko istotne części programu związane z transmisją danych Na początek Atmega 16 obsługuje klawiaturę, Wyświetlacz LCD i komunikację GSM i inne drobiazgi oraz RS232 z Atmegą 8 Dodano po 10 A tak przy okazji takie pytanie czym różni się transmisja po RS232 dla: A=1 Print A oraz Print "1" Wg ASCII < 1 > ma kod 49 i chyba w jednym i...
https://obrazki.elektroda.pl/7417895700_... Motywacja Jeden ze znajomych poprosił mnie, aby taki śmieszny pad na USB (kształtem przypominający dżojstik od konsoli NES) https://obrazki.elektroda.pl/5837949700_... https://obrazki.elektroda.pl/8178021400_... przerobić tak, aby dało się go podpiąć właśnie...
Witam, dziękuję za kod komunikacja zadziałała, ale jest jeden problem. Układ nadajnika czasem sie zawiesza, jak debuguje program to czasem jak pojawi się przerwanie INT0 to na case łapie default, i po wyjściu z procedury obsługi przerwania układ sie zawiesza. Po resecie uC odczytywany status nie jest poprawny gdyż wynosi 0x2E a nie 0x1E. Jedyne co można...
Program bez przetwornika ADC. Program działa prawidłowo Dodano po 42 Od kiedy praca dyplomowa jest tajna? Pytam z ciekawości- kiedyś była jawna na całym etapie pisania. Dlaczego w pętli głównej blokujesz przerwania- potem wykonujesz sporo obliczeń- a potem odblokowujesz? A co będzie jak w tym czasie pojawią się dwa przerwania? Jedno pójdzie się kochać....
Witajcie, jest to ulepszona pod każdym względem wersja mojej pierwszej machiny Sumo Challenge 2011 , w których brałem udział (zająłem wtedy przedostatnie miejsce :D). Ta sytuacja bardzo zmotywowała mnie do stworzenia czegoś szybszego, zwinniejszego. Tak powstał MacLiner 2.0 . Chciałbym serdecznie podziękować użytkownikowi Sabre , dzięki któremu mogłem...
http://obrazki.elektroda.net/60_12051824... Witam, chciałbym zaprezentować wykonanie pewnego mojego pomysłu, jest to w zasadzie jeszcze prototyp chociażby pod względem nie doszlifowanego jeszcze oprogramowania,. Jednak na tyle już się dobrze sprawuje, że od razu można go używać w dowolnych konfiguracjach. Nazwałem "to coś" Uniwersalny sterownik...
Niestety musiałem przerwać zabawę z klawiaturą. Nadal nie wiem co tak naprawdę było powodem niedziałania.
Ja obsłużył bym klawiature mniejszym atmelem i podpił jakies przerwanie z ARMa.Bedzie to szybkie , nie obciąży ARMa i tylko jeden dodatkowy układ scalony.
Jaki będziesz miał wyświetlacz? Alfanumeryczny że string będzie ok? Czy może LED lub LCD segmentowy? Żeby zmieniać wartość enkoderem trzeba go obsłużyć... Enkoder ma przycisk? Zatem weź zmienną Word w której będziesz zmieniał nastawy np. [syntax=vbnet]dim wartosc as word dim index_wartosc as byte if index_wartosc =1 then wartosc=wartosc + 1 end if if...
Witam Mam taki problem. Pierwszys raz korzystam z takiego ukladu i klawiatury pracujacej na przerwaniu. Podejrzewam, że problem pochodzi od sposobu podłączenia klawiatury do mikrokontrolera tylko nie wiem dlaczego. Klawiaturę mam podłączoną tak do Atmegi 3 kolumny do Portc.4, 5, 6 oraz 4 wiersze do Portd.0, 1, 2, 3. W programie jest zegar na PCF z ustawianiem...
Ano właśnie nie wyobrażam sobie jak to zrobić prockiem bez zewnętrznego źródła przerwania. A co do schematu to wszystko jest jak w notach przykazane. A skoro już procek czai się na przerwanie z RTC to przy okazji może czaić się i na to z klawiatury. Tutaj chyba nawet uA żadnych nie oszczędzę. (at)Niveasoft, jednak będę się upierał że jak na język wysokopoziomowy...
Klawisze obsługuje się w przerwaniach tzn. Układ kontroli klawiatury wysyła przerwanie do komputera, który odczytuje kody klawiszy z bufora układu kontroli. Jest taki gotowy scalak 8279 http://www.aldec.com/IP_Services/Datashe... Ma on wyjście równoległe. Można też zrobić klawiaturę przeglądaną przez jakiś mikrokontroler (Atmel albo inny) wysyłający...
Temat śledzi kilkunastu forumowiczów, jeden już się wypowiedział czy użyłby przerwań wyzwalanych poziomem, nieprzeznaczonych do obsługi klawiatury czy temu podobnych urzadzeń. Ciekaw jestem opinii pozostałych. Mega wątek jest już absolutnie nieczytelny. Ale generalnie bym optował mniej-więcej za Twoim (na ile umiem czytać wątek) też bym robił na przerwaniach....
Po pierwsze primo , czy połączyłeś masy(GND) proców :?: Po drugie , podłącz pojedynczo każdy z przewodów i sprawdzaj czy występują jakieś zmiany stanu wykrywalne przez AVR-a(najlepiej na zewnętrznym przerwaniu , reagującym na zmianę stanu).Podobną "walkę", przeprowadziłem z kuchenką mikrofalową i to z pełnym powodzeniem :D Piotrek
Czy może mieć na to wpływ to z jakich pinów korzystam? Na pewno ma. Moim zdaniem nie da się poprawnie obsłużyć klawiatury bez wykorzystania przerwań. Nie mam pojęcia jak jest to obsługiwane w BASCOMIE ale wiem jak działa klawiatura. W takt zmian sygnału CLK są przesyłane dane DATA. Całość sprowadza się do sprawdzania stanu na pinie do którego podłączony...
Symulatora nie używam, gdyż nie wiem jak mam wprowadzać do niego transmisję z klawiatury PS2, za pomocą której uruchamiam różne fragmenty mojego programu. Rzeczywiście domyślam się że następuje interakcja przerwań z programem głównym. Przerwaniami odbieram PS2, Timer0 uruchamia 1600x/sek przerwanie zajmujące się odświeżaniem wyświetlacza i opcjonalnie...
Witam Jestem początkującym w dziedzinie programowania mikrokontrolerów ATMEGA przy pomocy C/C++, więc proszę starszych kolegów z forum o pomoc. Użytkownik VSS (10 Lut 2006) zamieścił na forum w dziale DOWNLOAD swój projekt zegarka wraz z programem w C do ATMega8, jednak kompilator (WinAVR-20040720) zgłasza błąd (czy raczej ostrzeżenie) podczas kompilacji...
Witam ! Oto fragment pliku pomocy Bascom AVR w języku polskim. Przeznaczenie: Konfiguruje działanie funkcji GETATKBD() oraz określa końcówki portów do których podłączono klawiaturę komputera PC AT. Składnia: CONFIG KEYBOARD = PINx.y , DATA = PINx.y , KEYDATA = tabela_kodów gdzie: KEYBOARDKońcówka portu do której dołączony będzie sygnał CLOCK klawiatury....
https://obrazki.elektroda.pl/9443989800_... Jednopłytkowy komputer oparty na mikroprocesorze 8085 Założeniem było zaprojektowanie i zbudowanie prostego komputera na jakimś prostym procesorze w celu nauki assemblera. Konstrukcja oparta jest na wcześniej wspomnianym mikroprocesorze Intel 8085. Dlaczego akurat taki? Taki akurat miałem...
Witam jestem początkujący w programowaniu mikrokontrolerów więc proszę o wyrozumiałość. Zadanie muszę zrobić na zajęcia. Szukałem w sieci i na forum rozwiązania lecz nie mogłem znaleść wątku który pomógł by mi zrozumieć obsługę jednowierszowej klawiatury. Nie rozumiem algorytmu. "Linia wiersza dołączona do wejścia portu. Linie portu do wyjść portu....
atom1477, przecież o ile jakieś przerwanie w międzyczasie nie zmienia Portd.5 to kod Nie chodzi o to żeby ustawił w końcu, tylko w momencie kiedy piszesz Pind.5 = 1: No ale Portd.5 zamiast Pind.5 byłoby przejrzyściej. W ogóle przejrzyściej było by stosować ten zapis jeszcze zamiast Set Portd.5. Tysiące razy było. Do rejestru port zapisujemy a z rejestru...
Pisze wlasnie program do mojej pracy dyplomowej. Mam taki problem, gdy wielkosc mojego programu zaczyna przekraczac 2kB nie dziala on poprawnie. Wyglada to tak jakby programowal tylko te 2kb a dalej sie zarzymywal. Tak mi sie wydaje poniewaz na samym koncu programu mam zapisana procedure przerwania (obsluga klawiatury). Teraz ta funkcja nie dziala....
Procesor się wyrobi w zasadzie bez problemów. Tylko przy próbkowaniu 16 kHz to raczej nie 8051, tylko ATMEG jakiś, bo dla 8051 masz ok 100 cykli na obsługę przerwania - niby wystarczy. Co do programu to chyba nie jest aż taki straszny. Ja bym to widział na zasadzie bufora pierścieniowego (tak jak bufor klawiatury w PC), czyli kolejki FIFO powiedzmy....
Witam, Nie długo zamierzam nabyć MiniModuł produkcji MikroVega - jest to postanowione i zdania nie zmienię :!:. Na podstawie tego modułu zamierzam zbudować płytkę testową / prototypową "wszystkomającą". Proszę w związku z tym o wrzucanie propozycji co jeszcze można tam zrobić i na którym porcie (z uzasadnieniem dlaczego akurat na tym). Na chwilę obecną...
:arrow: mzielin : moja odpowiedź wyraźnie dotyczy kolegi domin0, który wyskoczył w tym wątku jak Filip z konopii. Co do VMLAB, owszem jest super, sam bym sobie pełną wersję zainstalował, ale póki co w wersji demo tylko do 4k kodu..., a Atmel Studio jest dostępny bez ograniczeń, chociaż już raczej nie używam do emulacji, bo często działania w czasie...
Żeby nie zużywać za dużo timerów, można zrobić jeden chodzący "wolno" i tylko czytać jego wartość w dwóch kluczowych momentach; potem odejmować i jest git. Wtedy, korzystając z przerwań typu "pin change", możemy jednym prockiem obsłużyć stosunkowo sporo kanałów (wychodzi mi 21 wejść dla Atmegi 88, pozostawiając dwie nóżki dla komunikacji). Myślałem...
przerwać klawiatura atmega przerwać przerwać atmega
monitor samsung syncmaster reset podążanie światłem renault laguna wymiana komputera
Niebieskie podświetlenie kierownicy Fanatec - co oznacza? Kichnięcie przy rozruchu zimnego silnika - przyczyny i diagnostyka