Akurat takich mam dostatek, jednak nie bardzo rozumiem, jak wykożystac sprzętową obsługę w bascomie W helpie jest opisana funkcja ENCODER(), zatem może warto najpierw te parę zdań przeczytać? W obsłudze przerwania sprawdzasz stan wejść i porównujesz z poprzednim stanem Nie zapominajmy o drganiu styków. Jeszcze nie spotkałem enkodera mechanicznego,...
Łap. Naciskając przycisk enkodera wybierasz czy ustawiasz sekundy czy minuty. Mikrokontroler przykładowy żeby tylko kompilator błedy sprawdził. Podstaw swój i swoje wyprowadzenia. [syntax=basic4gl]$regfile = "m328pdef.dat" ' config for encoder_switch Config Portd.4 = Input : Przycisk Alias Pind.4 : Portd.4 = 1 ' config for encoder Config Portd.2 = Input...
Proszę. Gotowe bo jak widzę kilka If`ów do tej samej zmiennej zamiast Select Case i tym podobne kwiatki... [syntax=vbnet]$regfile = "m32def.dat" $crystal = 11059200 $hwstack = 64 $swstack = 16 $framesize = 64 Const Timeout_time = 8 'x500ms Config Submode = New ' config LCD 2X16 Config Lcdpin = Pin , Rs = Porta.2 , E = Porta.3 , Db4 = Porta.4 , Db5 =...
Przepraszam ale w pierwszej wypowiedzi popełniłem błąd logiczny - oba przerwania powinny być ustawione na te same zbocze a nie różne. Dlaczego, bo tak jak napisałem wcześniej nie będzie można określić kierunku zmian, zawsze bedzie ta sama kolejność wywoływania przerwań. Obojętnie czy kręcimy w lewo czy w prawo. np. ChA narastanie 0->1 a ChB opadanie...
Nie analizując kodu przeszkadzają zapewne wszystkie instrukcje Wait, Waitms itp. Ogólnie zasadą jest, ze w programie nie powinny występować tego typu opóźnienia - stąd obsługę DS'a zrób na przerwaniu timera.
masz na myśli obsługę impulsatora komendą encoder w przerwaniu? Szukałem czegoś na ten temat ale odnośnie akurat tego problemu nic nie mogę znaleźć
Chodzi o to że na samym początku próbowałem procedurki "encoder" i to w ogóle mi nie działało. Ściągnę nowszą wersję BASCOM może to coś zmieni, pokombinuję też z sygnałami , z połączeniami, może tam coś nie gra. Szkoda mi trochę czasu kontrolera na cykliczne sparwdzanie encodera, dlatego między innymi sprzęgnąłem go z przerwaniem. Na pewno da się to...
Aha zapomniałem napisać,funkcja encoder jest w przerwaniu bo gdyby byla w pętli , za wolno by sie wykonywała ze względu na odpowiedni czas odświeżania dla lcd...
1. uC to 89C4051 Faktycznie to troszkę zmienia. Ale malutka '51 atmela ma sprzętowy uart i chociaż to warto było by wykorzystać. Co do reszty sprzętu to użyj jak najwięcej hardware jak się da (encoder na przerwaniu). O rs sprzętowym pod bascomem już tutaj parę razy pisaliśmy - ostatni raz chyba wakacje zeszłego roku. Co do reszty to też da się zrobić...
Chłopak po prostu chce prościej. Ja bym zapuścił PWMa i w przerwaniu od niego uaktualniał zawartość rejestru OCR0A (a mowa o ATTINY13). Obsługę przerwania i wogóle wszystkiego zrobił bym w assemblerze bo to będzie bardzo krótki kod. A BASCOM strasznie by to skomplikował. Nawet żadnych rejestrów nie trzeba by odkładać bo program główny nic by nie robił....
Witam i dziękuję za zainteresowanie tematem. nie wiem,bascom chyba po definicji konfiguracyjnej przerwania już zapisuje i odtwarza ze stosu zawartości rejestrów,czy można więc pominąć te instrukcje? ----------------------------------------... przerwanie: $asm'informacja dla mojego kompilatora że dalej jest w asm...
Zmiana bramki z 74hc20 na 74hc21 powinna załatwić sprawę. Oczywiście pod warunkiem że wszystkie wejścia enkodera są po włączeniu w stanie wysokim. A czy nie wygodniej byloby zastapic bramki i encoder (74HC147N) przez jedna Device PCF8574/PCF8574A ? Tam jest generowany INT, ktory mozna bezposrednio poslac do uC. e marcus
100 cykli w przerwaniu to wieczność pominę już że sam bascom jest niezbyt przyjaznym do tego typu operacji przy 20MHz taktowania mikrokontrolera masz do dyspozycji 9 taktów zegara w przerwaniu można sobie wybić z głowy cokolwiek bo same odłożenie na stos i zdjęcie adresu programu to 4 takty zegara , kolejne 2 to blokada przerwań i jej skasowanie jeden...
Witam! Potrzebuję pomocy ,bo niemogę sobie poradzić: Napisałem program na 2051 w bascomie obsługujący synteze,40 ch w starym CB.wyprowadzone dwa piny p3.0 = Ch down i p3.1 Ch up. Działa to pięknie. Kanał jest zapisywany w eepromie 24c02.ale ma być gałka obrotowa,jak przedtem było na starym przłaczniku 12 kanałowym. zdobyłem encoder obrotowy od sprzetu...
Zobacz coś takiego: $regfile = "m328pdef.dat" 'definicja mikrokontrolera $crystal = 16000000 'częstotliwość taktowania mikrokontrolera $baud = 9600 'szybkość transmisji szeregowej $hwstack = 40 'rozmiar stosu sprzętowego $swstack = 40 'rozmiar stosu programowego $framesize = 40 'rozmiar ramki stosu 'Inicjalizacja portów wejściowych i wyjściowych...
w pierwszej swojej odpowiedzi na twoje pytanie jeszcze bez pokazania kodu tak na czuja podpowiadałem ci już, że właśnie problem może leżeć w tym, że procedura obsługi przerwania INT0 może się wykonywać zbyt długo i przez to następują takie rzeczy. Teraz można być tego prawie pewnym gdy się widzi kod i zna twoje zależności czasowe jeśli chodzi o ten...
Witam Serdecznie :) Jestem początkującym elektronikiem i amatorsko konstruuje co nieco. Jako, że częstym narzędziem elektronika jest lutownica, do obecnej chwili wykorzystywałem starą transformatorów-kę firmy Lutola. Jednak przy większości prac nie spełniała moich oczekiwań między innymi ze względu na brak regulacji temperatury. Jako, że w miarę dobrze...
Witam Piszę sterownik grzałki lutownicy. Sam sterownik wstępnie działa dobrze. Natomiast po wykryciu obrotu enkodera w prawo lub w lewo zwiększam lub zmniejszam wartość zmiennej NASTAWA i wysyłam po UART do komputera oraz wyświetlam na LCD od nokii 3310. Co jakiś czas w wyświetlanym tekście zarówno na komputerze, jak i na wyświetlaczu pojawiają się...
Czy kod jest prawidłowy chodzi mi o obsługę impulsatora, bo coś mi nie pasuje zwłaszcza o obsługę przerwania Encoder_isr:. Sam piszę program do sterownika i chciałem skorzystać z impulsatora właśnie w Bascom.
Wykonałem syntezę do radia ze strony http://sq1ftb.prothost.pl/articles.php?a... http://obrazki.elektroda.pl/2235817300_1... Generator i separator działa, scalak syntezy LM7001 pracuje z kwarcem 7,2MHz, po wyjęciu jego Atmega prawidłowo "milczy" tzn. brak wtedy wyświetlania częstotliwości zmian na enkoderze itd. Ta część programu...
Witam. Proszę Kolegów o podpowiedź jak z impulsatora sterować wyjściami : jeśli kręcę w prawo załączony np. portc.1 a w lewo portc.2. Port powinien być w stanie załączenia tylko w momencie kręcenia w danym kierunku , po zaniku ruchu wyjście ma być wyłączone. Oto część kodu wyzwalana przerwaniem: .......... (oczywiście "wait" odpada). Skonfiguruj w...
Wiec trochę to trwało by cokolwiek napisać ( brak programatora działającego z bascom trochę mnie stopował) Zrobiłem juz prosty algorytm tego co potrzeba zrobić i podzieliłem prace na 4 etapy: 1) wejścia adc dla map sensora ( zrobione ;) 2 wejście dla enkodera ( muszę zakupić jakiś impulsator i napisać parę linijek) 3 pomiar czasu pracy każdego z wtryskiwaczy....
http://obrazki.elektroda.pl/5330077200_1... Unitra Pionier Re 105 to popularny radiobudzik produkowany w latach 80. Jak na tamte czasy była to dość nowoczesna konstrukcja posiadająca dobry tuner FM z głowicą strojoną napięciowo oraz programator, którym można było zaprogramować 3 stacje na UKF oraz Program Pierwszy Polskiego Radia w...
Mi to encoder wogóle nie chodził przy zastosowaniu polecenia z bascoma (encoder)... Rozwiązałem ten problem używająć przerwania: Getecounter: 'Wywołane przez przerwanie zboczem opadającym Waitms 4 If Pind.2 = 0 Then If Pinb.4 = 0 Then Decr Ecounter Else Incr Ecounter End If Return
bascom encoder encoder bascom bascom przerwania
centralny zamek sygnalizacja wymiana silnika nawiewu miernik ustawiania anteny
żarówka szeregowo początkujący elektronicy
Schemat elektryczny Technics SA-SH50 - gdzie znaleźć? Zamiennik silnika do odkurzacza Bosch Readyy'y 18V Li-ion