Właściwie to co chcesz w tych przerwaniach robić, bo jak tylko czytać przyciski to troszkę dziwne posunięcie. Możesz sobie skierować sygnał przez diody jak na schemacie z linka na pin od przerwania zewnętrznego i w momencie wciśnięcia przycisku w przerwaniach aktywujesz znacznik, który badany jest już...
Witam. Od dłuższego czasu próbuje napisać program do obsługi klawiatury 2x3 w przerwaniu. Sporo szukałem na ten temat i wszędzie wszyscy doradzali getkbd() no a mnie niestety to nie urządza :( program testuje na ZL3AVR ale zamieszczę schemacik a tutaj mój kod: $regfile "m32def.dat" $crystal...
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...
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: KEYBOARD Końcówk...
Bascom - wersja 1.11.95 Kod, no jest tego sporo: - zegar PCF8563 - Zapis na SD - dwa czujniki DHT11 - odczyt z PCF8574AP ( klawiatura ) - RC5 - ma być DS18B20 - ma być DCF77, ale nie doszedłem do tego momentu ( tzn testowałem na innym procesorze i działało ) Działa - zegar PCF8563 - dwa...
.... dodaję że problemy mam z tym że jeśli umieszczę moje wypociny w przerwaniach to podczas wysyłania danych z modułu A instrukcją Print to układ lubi mi się zawiesić , lub mam problemy z odebraniem kompletnych danych. W tem przykładzie jaki podałem ostatnio wszystko chodzi idealnie poza tym że mam...
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...
Dzięki wielkie !! Pomogło , aczkolwiek nie rozumiem dlaczego bez tego też czasem działało zależnie od kolejności wpisów ? Teraz działa OK bez względu na kolejność wpisów, i reszty (czyli początku programu w którym pewnie jest mnóstwo innych błędów :-) ) [syntax=vbnet] $regfile = "m2560def.dat"...
Witam. Mam problem z dziwnym zachowaniem lcd podczas realizacji programu. Program pisałem już dość dawno, kiedy uczyłem się jeszcze podstawowej obsługi timerów. Ale, że problem się zaczął pojawiać również w innym moim programie, postanowiłem napisać na forum, bo nie wiem co robię źle. Posiadam płytkę...
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...
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 '**************************...
Mały uC ale pewnie starczy wyprowadzeń żeby podpiać lcd - będzie odrazu widać co się dzieje. Jak nie to może chociaż sprzętowy uart - tylko musiałbyś pamieć przypiąć pod inne wyprowadzenia. Reset Tcon.0 Enable Interrupts Enable Int0 On Int0 Odczyt zapisz tak dla pewności: On Int0 Odczyt Reset...
Jakby co to całość programu znajduje się $regfile = "2313DEF.dat" $crystal = 10000000 Dim Eaddress As Eram Byte At 2 'adres pilota Rc5, zosatał umieszczony pod adresem 2 gdyż z doswiadczenia wiem, że komórki 0 i 1(szczególnie 0) pamięci EEPROM potrafią...
Niedawno był tu temat o menu i sposobie jego rozwiązania. Jeśli kolega chce usłyszeć mojej rady to osoboście zrobiłem to używając przerwania timera, obojetnie jakiego. Po odliczeniu określonej wartości czasu (jaki to twoj już wybór) przerwanie to w przypadku bezczynności klawiszy wpisuje do bufora klawiatury...
według mnie 'Config ..' to jest polecenie dla kompilatora tak jak w asmie .equ albo coś w tym stylu... ciężko dla jednej procedury ustalić 2-ie różne metody działania... raz na porcie tym a raz na tym... żeby to szło adresować porty za pomocą rejestrów :( idzie tylko za pomocą stałej (przezco wielokrotne...
Cześć sory, że tak późno, ale nie miałem neta bo w router'ku zmieniałem firmware. odnośnie: "musisz zmienić tok rozumowania według mojej wiedzy liczniki działają niezależnie czyli liczą a procesor robi swoje ale przerwanie zmusza procesor do wykonania czynności innych czyli obsługi przerwania...
Za polskim helpem Bascoma Przeznaczenie: Powoduje przerwanie wykonywania instrukcji: FOR..NEXT, DO..LOOP, WHILE..WEND, SUB..END SUB lub FUNCTION..END FUNCTION. Składnia: ... FOR EXIT DO EXIT WHILE EXIT SUB EXIT FUNCTION Opis: Za pomocą instrukcji EXIT można w każdej chwili...
Witam, Mam taki problem. Chcę wysyłać do PC informację w formie takiego temp1;temp2;f1;temp3 i coś jeszcze. Jak wysyłam informację to chcę żeby ona była raz wyświetlana powiedzmy co ok 1-2s a nie tak jak na screenach pod kodem. (to jest losowe). Co może być nie tak. Timera2 używam jako odmierzacz...
Jest jeszcze przerwanie PCINT wyzwalane dowolnym zboczem. Wejść PCINT jest zdecydowanie dużo, zatem można reagować nie tylko na dwa przerwania INT0/1. Fakt, nie wszystkie AVRy to mają. Co do programowej obsługi to trzeba skanować klawiaturę w krótkich odstępach czasu i porównywać stan bieżący z poprzednim...
Witam Mam Atmega32A + PCF8563 + PCF8574 + RFM12 + DS18B20 +DHT11. Port danych LCD to Port.A, ControlPort to Port.C. I2C standardowo na Portc.0 Portc.1. Niestety jest problem z obsługą I2C, tzn. zegar PCF8563 nie działa w ogóle ( na LCD puste pole ) , a klawiatura na PCF8574 - tylko jeden klawisz i to...
Jak zrobic Input w przerwaniach ? mam program dla atmega16 odbierajacy dane w przerwaniach aczkolwiek jest to zrobione w taki sposob ze odczytuje Udr i przypisuje jej wartosc do jakies zmiennej no i nie mam jak "ladnie " wyslac np liczby 53 <przypisywanie rejestru Udr do zmiennej powodoje ze zczytywane...
Ponieważ tzw. casting w BASCOMie jest nieco zbyt prosto zrobiony to proponuję zrezygnować z: Dim Xl As Word Dim Xh As Word A w przerwaniu pobierać zawartość z rejestru ICR za pomocą specjalnie generowanej dla tego celu zmiennej typu Word: Capture1 . Pętlę Do..Loop zamieniłbm na sprzętowe porównywanie...
Witam, zaczynam "zabawę" z uC i programowaniem. Na pierwszy strzał chciałem zrobić prosty (tak na początku mi się wydawało) sterownik. Planowane opcje to: zegarek, termometr i obsługa 2-6 wyjść 230V. Wszystko chciałem stworzyć na atmedze8 ewentualnie 16. Założenia: - LCD na którym będą informacje...
Widze BASCOM'a, więc ja nie pomogę... ale mogę dać troszkę dokładniejsze informacje :D Jeżeli do obsługi klawiatury używasz T0(Timer0) to podczas jego przepełnienia w rejestrze TIFR zostanie ustawiony bit TOV0. Sygnalizuje on, że licznik został przepełniony i przechodzi do obsługi przerwania jeżeli...
Witam. Zamierzam "sklecić" taki układzik, który przy użyciu magistrali I2C zmienia odpowiednie parametry reagując w ten sposób na polecenia z klawiatury. Jednocześnie chciałbym aby te parametry mogły być także zmieniane przez odpowiednie instrukcje interfejsu MIDI (to taki UART z baud 31250). Wymyśliłem...
To prawda że nie są to procesory wielordzeniowe. Windows może wykonywać kilka zadań "jednocześnie" pracując na procesorze jednordzeniowym ( pamięta ktoś może 386, 486, pentium 166 itp ? ) Zrobiłem kiedys program "wielozadaniowy" na at90s8535 polegało to na odczytaniu stanu interesujących mnie wejść...
Ja bym koledze tak doradził, co do samej komunikacji. Jakieś 2 miesiące temu sam nad tym się głowiłem jak to zrobić i w końcu praktycznie sobie wdrożyłem zwykły RS232 tyle że pracujący na najwyższych obrotach. Początkowo obawiałem się że "system" niewydoli przepuszczać w te i we wte informacji jednak...
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
NP: IF A and B and C then coś tam się dzieje end if A B C to klawisze ( piny porty zmienne ) Pozdro! I to powinno dziać się w obsłudze przerwania, jeżeli ma to się rzeczywiście natychmiast stać. Klawiaturę podłącz tak, aby po wciśnięciu dowolnego klawisza generowała określony stan, linię...
Jeśli chodzi o cmd_timeout to chodzi o to, że wejscie RX kiedy pin używany jest przez USART nie jest niczym podciągane. Kiedy jest podłączony do drugiego urządzenia np. procesora lub MAX485 to problemu nie ma bo pin jest podciągany wyjściem TX tego uC lub MAX485. Kiedy jednak odłączysz to na pinie stan...
No dobra, załączam swoje wypociny (12 lat przerwy w programowaniu.... ) $regfile = "m8535.dat" $crystal = 16000000 $baud = 9600 Config Portc = Output Config Pina.2 = Output 'buzer Config Pina.3 = Output 'katody Diod Config...
Witam. Wiem, że temat był wielokrotnie wałkowany na forum, ale mimo przebrnięcia przez sporą ilość informacji jakoś nadal mam problem z poradzeniem sobie z moim przypadkiem. Buduję 'klawiaturę matrycową' ale nie na przyciskach, ale na przełącznikach, zatem program sterujący nie będzie miał rozpoznać...
Pętla oczywiście "stoi" i czeka na naciśnięcie klawisza. Tak że na razie nie udało mi się wsadzić tej funkcji w przerwanie. Ponieważ cała reszta programu jest w przerwaniach to na razie mi to nie przeszkadza. A z pomysłu z helpa też nie mogę skorzystać bo też potrzebuję UART-a. Spróbuję jeszcze z...
Witajcie. Robię malutkie projekty korzystając z Bascoma. Do tej pory wyłącznie na 2313 i jakoś sobie radziłem. W nowym projekcie postanowiłem zastosować Atmega8535 i od razu natrafiłem na problem. Mianowicie po włączeniu przerwań od Timer0 nic nie działa jak powinno. Pomimo tego że procedura obsługi...
afff x_X zumek nie chciałbyś mi może trochę bardziej pomóc, bo coś czuję, że tego w wakacje nei napiszę :( Update: ok, wywaliłem Waitms 330 kompletnie. Wait 1 podczas komunikacją z 1Wire zamieniłęm na Waitms 200. Jest tak, że w pierwszym obiegu czujniki nie są do końca jakby zresetowane (temp....
Odświeżam temat i przedstawiam co zrobiłem . Wykrywanie stanu i wystawianie stanu logicznego nie chciało działać kiedy było zrealizowane na opóźnieniach. Do głowy wpadł mi pomysł kolegi pikczu by zrobić coś w przerwaniu TIMERA. Tak wiec odczytywanie stanu jest w podprogramie przerwania a w pętli...
Witam! Napisałem sobie obsługę klawiatury matrycowej 3x4 w bascomie. Nie używam umieszczonej tam funkcji getkb(), ponieważ podłączona jest do różnych portów. Sprawdzanie wciśniętych przycisków chcę przeprowadzić w przerwaniu od wewnętrznego zegara TIMER0. Na ATmega32 wszystko bez problemu działa....
czyli jak przykładowo dam: [syntax=basic4gl] do if flaga = 1 then 1wreset 'reset 1wwrite &H55 1wwrite &HCC 1wwrite &H44 'dokonaj konwersji end if if flaga = 2 then 1wreset 'reset 1wwrite &H55 ...
NIGDY nie robi się multipleksowania na tym samym Timerze, który jest wykorzystany do odmierzania czasu. Zbawco mój :) tergo nikt wcześniej mi nie napisał. Nie wyłącza się Timera w pętli głównej. No wyłącza się bo inaczej w takim rozwiązaniu jak moje ekran migocze ;) choć chciałbym w końcu...
Działa!!!!!!!!! Zastanawiałem się czemu procesor próbował wyświetlać ciągle tę samą wysłaną zmienną jedną pod drugą i po wielu próbach i błędach znalazłem przyczynę. Mianowicie wcześniej myślałem że zmienna zdefiniowana jako: Dodano po 1 Nawet szybko mi poszło z tą kartą sd. :D Oto kod wysyłania...
Witam Mam program budzika, który jako dodatkową atrakcję miał mieć możliwość mówienie czasu na żądanie i odtwarzanie oprócz buzzera utworu jako alarmu. Atmega steruje przez jedno SPI programowe układem MAX7219, a przez konwerter poziomów i drugie SPI programowe odtwarzaczem WTV020SD. O ile sam...
Witam Forumowiczów, Mam problem z ogarnięciem tematu wywoływania przerwań. Nie jest to problem jak je wywołać ale jak je okiełznać ;-) Wygląda to tak: Jest układ na Mega644PA-AU. Po I2C współpracuje z zegarkiem PCF8583, oprócz tego linia przerwania z PCF podłączona jest do portu D6 procka. Klawiatura...
Juz wiem czemu sie tak dzieje, poniewaz cala procedurka dziala na 8 bitach i dopóki były same instrukcje BitWait nie było problemu ponieważ on tylko tyle szczytywał, teraz mamy inną sytuacje ponieważ zbocze opadające przy włączonym przerwaniu uruchamia ponownie odczyt klawisza. Spróbuj po ostatniej instrukcji...
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ę...
A jesteś świadomy tego, że jest tu przerwanie timera wywoływane co 4ms? A jest to coś podobnego do tego o czym pisałem wyżej, ale nie używa przerwań zewnętrznych a ciągle sprawdza w przerwaniach timera.
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...
Wydaje mi się że te czytniki symulują klawiaturę. Poszukaj kodów klawiatury w internecie. Są to rozkazy naciskania i puszczenia odp. przycisków, a w zasadzie cyfr. A rozwiązanie twojego drugiego problemu to odpowiedni parser portu szeregowego. Nie znam bascoma, ale w C robisz przerwania, bufor,...
Sorry za błąd, ale tak to jest jak się przerabia czyjeś programy . Teraz powinno być w porządku. [syntax=basic4gl] $regfi... = "m8def.dat" $crystal = 8000000 Config Pinc.5 = Input Config Pinc.4 = Input Config Pinc.3 = Input Config Pinc.2 = Input Config Lcd = 16 * 2 Config Lcdpin = Pin ,...
Pomyślę i o tym później, wykorzystuję przerwania w Bascom-e od timera, zupełnie inna jakość pracy ale i dużo więcej trzeba myśleć aby poprawnie wszystko zsynchronizować, zrobić trzeba będzie obsługę wektora przerwania np co 10 ms żeby sprawdzał stan wierszy, podglądałem już takowe projekty ale...
Hej, Próbuję zrobić menu ustawień swojego sterownika i kompletnie mi to nie wychodzi :( Menu ma być sterowane pilotem NEC (pilot działa poprawnie) Jak ja to sobie wymyśliłem: 1. ekran główny (tu jest OK) - przycisk strzałka w lewo przełącza ekran na zegar "MAXI" - przycisk strzałka w prawo przełącza...
Jeżeli piszesz w bascome to proponuje funkcje: INPUT $baud = 1200 $crystal = 12000000 Dim V As Byte start: input V p0=V goto start Zasada jest taka program czeka na w lini "input V" na odebranie czegos przez port RS jesli mikrokontroler odbierze to...
Witaj, powiem tak, niewiele nauczysz się zlecając komuś pracę. Jeżeli urządzenie ma służyć do nauki to może spróbowałbyś je sam wykonać. Ja polecałbym Ci zacząć od prostych rzeczy, jak np wykonanie płytki(jakiś starter kit na avr'ce) lub coś prostszego znalezionego w sieci. Potem zacząć pisać proste...
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...
Przenieś albo obsługe klawiatury albo silnika to przerwania.
Programowanie uC prawie niczym nie rózni sie od programowania komputera klasy PC ( w uP ZAZWYCZAJ nie ma systemu operacyjnego ). Większośc kompilatorów C dla uC jest kompatybilna ze standardem ANSI C. Kompilatory C są zazwyczaj rozszerzone o obsługe typów bitowych i funkcji przerwań. Problem pojawia...
A taka moja mała sugestia, czy nie lepiej zrobic uklad obslugujacy wiele klawiatur nie korzystajac z GETKBD() ?? np uzywajac ukladow na I2C PCF8547 i wykorzysujac przerwanie od ukladu odczytywac stan klawiszy... a tak na marginesie GETKBD() obsluguje jeden port... Pozdrawiam
Dzięki za informację. Tak jak pisałem wcześniej końcówek portu D chcę wykorzystywać do klawiatury, wyświetlacza i przerwania. Na razie klawiatura i wyświetlacz nie kolidują ze sobą. Wykorzystanie przerwania miałoby być do odbioru sygnału w podczerwieni właśnie zamiast...
Jak masz klawiaturę podłączoną do portu C to nie będzie działać. Powodem jest standardowo uruchomiony J-TAG. Spróbuj z inną końcówką wyzwalającą przerwanie.
Chcesz wyzwalać przerwanie w chwili naciśnięcia klawisza ? Tak zrozumiałem, jeśli nie masz za wiele tych klawiszy w układzie np. 2 to możesz je po prostu podłączyć wprost na końcówkę odpowiedzialną za wyzwolenie przerwania INT0, INT1. Pamiętaj tylko o tym aby przełącznik spolaryzować do plusa zasilania...
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...
Polecenia Wait, Waitms i Waitus nie wstrzymują procesora. "A kto tak mówi?" Na pewno nie cytat który zamieściłem. Chodziło mi o to: Wyczytałem gdzieś że polecenie "wait" wstrzymuje cały procesor , w tym czasie nie wykonują się żadne funkcje. Czy podczas wykonuwania polecenia "wait" timer...
Witaj Może trochę nie na czas odpowiedź ale komuś może pomoże Jak zrobić aby klawiatura przełączała nawet jak jest w pod programie i aby regulować prędkością zmiany PWR ? PWM ;] PWR to Politechnika Wrocławska ;) Jeśli chodzi regulacje wypełnienia z dowolnego miejsca w programie to bez...
marco47 - przepraszam, nie zauważyłem. marek19951 - proste if-then nie załatwi problemu. Jeżeli masz zapał, a widzę , że masz, zacznij od procedury obsługi klawiatury , która nie powoduje opóźnień poprzez martwe pętle ( czyli m.in wait, debounce, bitwait itp). Ja to zrobiłem na przerwaniu programowym...
Szanowni koledzy. Po wielkich mękach naniosłem zmiany i wyprodukowałem to. Config 1wire = Portc.3 Const Zwieksz = 1 Const Zmniejsz = &HFF Const Row = 1 Declare Sub Odswiez_ldc(byval Index As Byte) Rem **** dołożony sub ***************** Declare Sub Od_ldc Rem *********************************** Dec...
Wszystko było by fajnie z tym innym licznikiem ale niestety zostały mi tylko 8 bitowe a to za mało, musiał bym część liczenia przenieść do pętli głównej a niestety to też nie zda egzaminu bo jak np włączę menu, a tam jest np. obsługa klawiatury i chośby dyskryminacja drgania styków która wstrzymuje czas,...
W dodatku odbiera dane z jakiejś klawiatury z MIDI. A już myślałem że z tym odbiorem to się narobię. Na zwykłym CNY17-3 odbiera. Tylko ten kabel jest jakiś chiński. Ale ad meritum. To tak- co np. 40ms wywołuję przerwanie od Timera. Wstawiam err=1. Jak err=1 to pomija mi Getatkbd(). Aż do ponownego...
Tak, w programie zawarte są dwie procedury obsługi przerwania, obydwie od przerwań zewnętrznych: [syntax=vb]Communicatio... Set Comm_needed Return [/syntax] oraz ... Set Loop_tick Return [/syntax] Rozumiem... że bez całego kodu analiza może być ciężka. Jednak sytuacja...
Witam, Otóż wykorzystuję licznik Timer0, do liczenia (aby wygenerować liczbę pseudolosową NIE wykorzystuję do przerwań!) Więc wydaje mi się, że może być wykorzystywany razem z odbiorem RC5 Jak naciśnie się przycisk na pilocie, to ___rseed = Timer0 Czyli podstawa generatora RDM, jest taka...
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...
mam taki kod '**************************** 'Konfiguracja '************************... = "attiny2313.dat" $crystal = 8000000 Config Portb = &B11111111 : Portb = &B11111111 Config Portd = &B11111011 : Portd = &B11111111 Config Timer0 = Timer , Prescale...
Witam Chcę zrobić proste menu ale mam problem Napisałem taki program ale on nie działa i nie wiem co jest źle Chcę zrobić tak, że jak nacisnę przycisk P1 to wtedy ta strzałka > przejdzie na inne menu. np. Jest tak jak na zdjęciu 1 to jak nacisnę przycisk to ma być tak jak na zdjęciu...
Po usunięciu pętli w podprogramach obsługi klawiszy przygasanie zmniejszyło się o około 90%. Obecnie widzę, że na czas obsługi nacisnięcia wyświetlacz ledwie przygasa. Spróbuję stworzyć obsługę w przerwaniu. Czy mogę w przerwaniu wpakować instrukcję debounce? Wiem, że domyslnie wprowadza 25ms opóźnienia,...
Ok, skompiluje program z dyrektywą $sim, a nastepnie będę próbował pauzować działanie programu w symulatorze. Program z pierwszego postu testowałem w procku. PWM działa, a multipleks nie, bo timer2 nie raczył ruszyć. Programy testowe sprawdzałem wyłacznie na symulatorze sugerując sie tym, że w przypadku...
pewnie że nie ma wpływu na timery i musisz poczytać książki o samych prockach żeby zrozumieć co to są timery sprzętowe. Bo o ile można powiedzieć że program nie ma wpływu na timery sprzętowe to już timery sprzętowe a raczej ich przerwania mają wpływ na program i to się wiąże z tym działaniem niedokładnym...
Rezystora nie ma na schemacie ale fizycznie go wlutowalem i dalej nic. Najczesciej wyzwalaja sie przyciski klawiatury lub zewnetrzne przerwanie. W programie wlaczone pull-up.
No właśnie tak to powinno działać ( u mnie to działa poprawnie w przypadku RC5 i klawiatury na PCF8574A ) Raczej nie sądzę, że to sposób zapisu odebranych danych ( jeszcze nie przerobiłem na odbiór w pętli ) do zmiennych powoduje taki problem. [syntax=basic4gl] '********...
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...
Witam. Niestety to nie działa, gdy inkrementacja zmiennych "przesunięcie1 i 2" się zeruje po osiągnięciu len(x) w warunku if...then w głównej pętli, cały napis z Bufor_text zanika i tworzy się na nowo. widoczne na nagraniu: na Lcd pierwszy wiersz jest bufor_text + " "+ zmienna(przesunięcie) ...
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...
jezeli chodzi o czasy zegara to nie sa az tak bardzo tragiczne (od 60 do 100 us) wiec chyba Bascom sobie z tym poradzi, w moim programie mam generator na timer1 ktory dla kwarcu 8MHz (prescaler = 64)i wartosci w rejestrze licznika 65530 daje mi przerwanie co 40us... moze juz ktos napisal taka komunikacje...
Swoją drogą do czego one służą. Fajnie, że pytasz :) Te 2 linijki służą do wyłączenia interfejsu JTAG z poziomu programu. Dlatego są 2 razy, bo aby wyłączyć interfejs JTAG należy 2 krotnie zapisać wartość 1 do bitu JTD w rejestrze MCUCSR w przeciągu 4 cykli zegara (po szczegóły odsyłam do...
napisałem program do obslugi klawiatury i cos mi nie chce działac nie wiem dlaczego wyglada to mniej wiecej tak: dim zmienna as byte config portd.0 = input set portd.0 'wlaczenie podciagania config timer0 = timer, prescale = 1024 on timer0 klawiatura enable interrupts enable...
Tłumaczą Ci ludzie już drugi dzień. Zwłaszcza kolega Logan . Czy tak trudno przeczytać w Helpie: Instrukcja ON INTERRUPT Przeznaczenie: Wykonuj... skok do podprogramu gdy wystąpiło określone przerwanie. Składnia: ON źródło_przerwania nazwa_podprogramu Jeśli trudno to porzuć programowanie...
Triangle Deluxe - Zaawansowany system oświetlenia Przedstawiam mój kolejny bardzo długo zresztą wyczekiwany projekt. Jest to jak dotąd największe z moich przedsięwzięć wykonane zupełnie samodzielnie od początku do końca. Jest też najdroższe gdyż z grubsza licząc kosztowało ponad 1000zł. ...
A ja mam oto takie przerwanie: ;=======================================... Timer 0 interrupt ;============================... execution time measurement (start) PUSH ACC ;2 PU...
Ponad 20 lat temu jako amator hobbysta budowałem proste układy elektroniczne. Studia i styczność z informatyką spowodowały, że porzuciłem hobby pod nazwą "składanie elektroniki" na rzecz "składanie programów komputerowych". W bieżącym roku (2011) dzięki uprzejmości kolegi Jacka.M, który okazał...
Toż to BASCOM! '$sim $regfile = "ATtiny2313.dat" $crystal = 20000000 $hwstack = 64 $swstack = 16 $framesize = 32 Enable Interrupts Config Int1 = Falling Enable Int1 'włączenie przerwania On Int1 Imp Config Timer1 = Timer ,...
FastAVR jest mocno związany z asemblerem i daje bardzo efektywny kod wynikowy - Bascom się chowa przy nim. Ale tak jak w asemblerze trzeba pamiętać o deklaracji i inicjacji każdej zmiennej. Pierwsze 3 linie definiują typ proca, głębokośc stosu, prędkość zegara - ważne dla symulatora. Definiuję przerwanie...
Jest niemozliwe poniewaz zastosowale petle Do Loop z ktorych nie ma wyjscia (Loop jest przed Return) Lepiej bedzie jak odczyt klawiatury zrobisz na przerwaniach. I wtedy bedziesz bez problemu mogl wywolywac nieskonczone procedury. Zawsze kiedys przyjdzie przerwanie ktore bedzie moflo sprawdzic klawisz...
Stworzone przeze mnie urządzenie jest praktycznym uzupełnieniem piórnika szkolnego. Jest wyposażone w kilka pożytecznych funkcji i na opisanych poniżej nie zamierzam zaprzestać. Całość została zorganizowana w wygodne w obsłudze intuicyjne menu. 6 przycisków uSwith w jakie jest wyposażony układ umożliwia...
Witam. W pewnym sofcie dla Atmega16 wykorzystałem już: - Timer1 (16 bit) do odliczania 0,0001s odcinków czasu - Timer2 (8 bit) jest wykorzystywany przez odbiornik podczerwieni (instrukcja getrc5) Timer 0 niby jest wolny, ale nie wiem / nie jestem pewien czy nie jest on wykorzystywany przez...
Witam! Przepisałem z "NE" program do sterownika akariowego,niestety podczas sprawdzania błędów,Bascom wyrzuca mi kilka.Bardzo proszę,gdyby ktos zechciał zerknąć jaka jest tego przyczyna.Z góry dziękuję za pomoc. '#############################...
janbernat --> tak na pierwszy rzut oka to w tym rozwiązaniu do obsługi klawiatury nie ma jednak żadnego mechanizmu eliminacji drgań styków i stąd może być to wrażenie, że niepewnie się przełącza itp moim zdaniem. Zobacz, naciskamy klawisz - rozpoczynają się drgania (zawsze występują prawda?) u...
Witam Chciałbym zaprezentować swoją pracę, która powstała do konkursu "młody innowator". Na wstępie chciałbym powiedzieć że jest to tylko prototyp i posiada on jeszcze wiele niedoskonałości :) Głównymi założeniami projektu było zbudowanie czajnika wyświetlającego temperaturę wody...
Komunikacja miedzy dwoma mikroprocesorami AVR oparta na zmodyfikowanym protokole MODBUS RTU zrealizowana na interfejsie RS422 (full duplex). Witam wszystkich. To pierwsza publikacja jednego z moich samodzielnie zrealizowanych projektów (a kilka ich było). Układ (sterownik) docelowo ma...
Niestety ale przesiadka z Arduino na jakikolwiek mikrokontroler bedzie bolesna... a STM32 czy jakikolwiek ARM jeszcze bardziej bolesna (to sa bardzo rozbudowane procesory o duzej licznie rejestrow itd.). Niestety rezygnujac z Arduino trzeba dosc mocno poznac mikrokontroler... Wiesz mi bardziej...
Zmieniłem w liniach z Load na Timer1 = A ale nic to nie dało nadal 10us. Podejrzewam że nie pracuje z preskalerem =1 prawidłowo. Gdzieś czytałem z rok temu że kod programu będzie pracował z zegarem 14MHz (tak jest u mnie) a Timery z 8Mhz. Prawda czy nie ?. Z obliczeń na kalk.exe do wyliczania Timerów...
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ć...
Witam. Chciałbym dopytać jak wybór dokonany w "Monitorze szeregowym" programu arduino: wpływa na przesyłane na port szeregowy ascii. Dopytuję ponieważ moje urządzenie (kod w Bascom AVR) działa poprawnie wyłącznie po ustawieniu w tryb "powrót Karetki". W pozostałych trybach urządzenie...