Przerwanie przerwie wykonanie instrukcji Wait. Po wykonaniu podprogramu obsługi przerwania uC dokończy wykonanie instrukcji Wait. Wniosek - instrukcja Wait nie wstrzymuje działania uC.
Tak się zastanawiam, czy ten programator który obecnie posiadasz to jest USBAsp ? Do obsługi tego programatora masz program PROGISP 1.72, ten programik oprócz ATMEG obsługuje różne pamięci i parę mikro kontrolerów serii MCS51. Tu jest dwu strona instrukcja w języku polskim do tego programu. -> [url=http://www.smartrobots.pl/download/...
Jeżeli skaczesz do podprogramu Dalej to mozę potem z niego powróć a nie skacz z niego ponownie do Klaw z którego to Dalej został wyzwolony. Dodatkowo możesz zwiększyć stos bo często przez niego program sypie się na podprogramach. Sugeruję również w danej chwili ustawienie tylko jednej nóżki jako wyjście gdyż jak u ciebie gdy 3 są wyjściami i na nich...
Gdy procesor jest w trakcie wykonywania procedury przerwania, następne przerwanie nie będzie przyjęte , gdyż procesor (nie kompilator!) zeruję flagę globalnego zezwolenia na przerwania. Tak samo flaga bieżącego przerwania (tego, którego procedura obsługi jest wykonywana) zostaje automatycznie wyzerowana. Po zakończeniu przerwania flaga globalnego zezwolenia...
To nie Bascom jest przyczyną tylko źle napisany program ;). 1. odczyt timera1 16bit odbywa się po przez rejestr pomocniczy TEMP, ten rejestr jest też używany przez inne procedury i funkcje i jeśli jest użyty to właśnie niszczona jest wartość High timer1 bo ona tam jest wpisana gdy używasz komendy. wpisując tak timer1 do tablicy możesz gubić High timer1....
ARCAM_BDP100 User Guide Manual
Jak widzę, że ktoś napisał, że szkolny błąd bo procedura obsługi przerwania jest dłuższa od czasu pomiędzy przerwaniami i w tym samym zdaniu napisał, że pierwszą instrukcja obsługi jest zablokowanie przerwania ponownego a ostatnia jest ponowne odblokowanie to mi się pióropusz podnosi.
Parę ciekawych rzeczy można znaleźć w tym poście: http://www.elektroda.pl/rtvforum/viewtop... W nowszej wersji bascoma jest instrukcja CONFIG Dcf77.
Czyli do drukarki igłowej muszę mówić w kodzie ESC!! Zdobyłem bibliotekę funkcji pod swój konkretny modeli zobaczę co zdziałam w DOSie. Tylko jedno pytanko, bo jestem trochę nie douczony: Jak uruchomić coś pod DOSem na win XP?? Dodano po 3 Rany, ale ja jestem debilem ;-) MS-DOS = cmd.exe ;-) Dodano po 2 Podaję pliki: Instrukcja obsługi drukarki OPTIMUS...
To jak piszesz ten program to przykład jak należy nie pisać programów. To najgorsza odmiana Bascoma. To jest przykład który zaraz spowoduje tu lawinę postów o tym abyś jak najszybciej przesiadł się na C. Oducz się takiego stylu jak najszybciej. Instrukcję Goto nie powinno się używać wogóle. Są wyjątkowe sytuacje kiedy instrukcja ta ma jakiś sens. Tego...
Bascom powinien po wywołaniu procedury obsługi przerwania skasować flagę a tego nie robi...i po obsłużeniu przerwania znów jest ono natychmiast wywoływane i program się zapętla. Trzeba ręcznie ustawić flagę w rejestrze GIFR. Wiem, że C jest dużo mniej problematyczny...sam kompilator ma też mnie roboty, bo to język niższego rzędu jak Basic Bascom, ale...
Użyj Timer2 dla obsługi RC5 zamiast Timera0 Config Rc5 = Pind.2 , timer = 2 i będzie OKejos ;)
Witam! Mam takie pytanie n/t tej książki, ponieważ mam dylemat...znalazłem tą książka jak w tytule, ponieżej zdjęcie http://obrazki.elektroda.net/39_12370566... i mam dylemat ponieważ książka ta kosztuje 45zł i nie wiem czy wydać tyle pieniędzy na nią czy tego samego nauczyłbym się z instrukcji obsługi do programu Bascom Basic AVR Wersja 1.11.7.4,...
Zmieniłeś prescaler a nie czytałeś noty swojego mikrokontrolera ;) Na początku rozdziału o ADC przeczytasz że ATmega128 potrafi wygenerować maksymalnie 15 tyś próbek na sekundę ;) • Up to 15 kSPS at Maximum Resolution Myślę więc że wynik 37 to efekt przepełnienia licznika ;) Sam podziel 16 000 000/s (16MHz) przez 15 000 ... Proponuję zmierzyć...
Wstawienie etykiety przed 1 istrukcją pętli DO i użycie w obsłudze przerwania skoku GOTO spowoduje pewnie po jakimś czasie przepełnienie stosu. No i tak ma być. Przyjęcie obsługi przerwania polega na odłożeniu na stosie adresu powrotu a następnie wykonanie skoku. Instrukcja reti pobiera ze stosu adres i dzięki niemu powraca w poprzednie miejsce. Jeśli...
1. Napisz podprogram do obsługi pilota - instrukcja Getrc5 (w przykładach do Bascoma powinien być wzór użycia Getrc5) 2. Wywołaj podprogram obsługi pilota w pętli głównej jeśli końcówka uC podłączona do odbiornika podczerwieni będzie w stanie niskim - If Koncowkarc5 = 0 Then Gosub ... 3. Zapamiętaj odczytaną komendę w zmiennej (XXX). 4. Do instrukcji...
To podstawowy i najczęściej popełniany błąd początkujących. Zdefiniuj "błąd"? Początkujący w godzinę w BASCOM napisze program do eval boarda z obsługą klawiszy, wyświetlacza, eepromu na spi, rtc na i2c komunikującego się z PC przez UART. Pokaż mi co zrobi początkujący w C bez dogłębnej analizy noty katalogowej i krótkiego streszczenia co dany rejestr...
Hmm...Bascom działa lepiej kiedy się wie co się robi :D Wiesz co robi instrukcja Config Clock = Soft ? Konfiguruje Timer który w mikrokontrolerze jest przygotowany do pracy asynchronicznej. Dodatkowo potrzebny jest rezonator kwarcowy 32768 Hz dołączany do pinów mikrokontrolera oznaczonych TOSC1 i TOSC2 Nie będę opisywał wszystkich przypadków, ale dla...
I teraz jeszcze takie pytanie, jak master wyśle komendę print 0103, to wysyła on na wszystkie układy podłączone do magistrali i tylko w slave o numerze 01 (na przykład) wykona się instrukcja 03??? Tak to rozumiem. No i czy instrukcja INPUT nadaje się do odebrania danych z magistrali?? Dokładnie tak ale musisz w procedurze obsługi odebranych komunikatów...
Stosuję odczyt DS18B20 w przerwaniu, dlatego, że przerwanie rozkładało mi transmisję 1wire. Przerwanie jest wyzwalane z częstotliwością 100 Hz, przez częstotliwość sieci 220 V i służy do obsługi ściemniacza. Transmisję 1wire umieściłem w tym przerwaniu, żeby uniknąć jej zakłócania właśnie przez to przerwanie. Co przerwanie wykonywana jest kolejna instrukcja...
Te Xmege wziąłem dla wygody bo wszystko śmigało na tym samym napięciu no i miałem drugi COM. Na początku jednak skonfigurowałem sobie wewnętrzny oscylator 32MHz i na prędkości 19200 była lipa. Same chińskie znaki, sieczka, innymi słowy śmieci :D Skonfigurowałem więc Xmege do pracy z zewnętrznym rezonatorem niewiele szybszym od 8MHz czyli takim USART`friendly...
...A procedura obsługi przerwania to odczytanie bitu z portu: if pind.3=1 then set data Okrojona czesc kodu ktora daje efekt o ktorym mowilem: Odczyt_bitu: Reset Portc.3 Set Portc.3 If Pind.4 = 0 Then Reset Typdanych Preamb = &B0101010101010101 Return End If Receivedbit = Pind.3 Set Nowybit Return No faktycznie, jedna instrukcja - sarkazm :( Kolego...
Znacznie mniej pamięci zużyjesz ładując dane w procedurze DATA. Przeznaczenie: Służy do umieszczania danych, odczytywanych później instrukcją READ w trakcie działania programu. Składnia: DATA wartość1 [, wartośćn] gdzie: wartośćstała numeryczna lub tekstowa. Opis: Instrukcja wykorzystywana jest do definiowania ciągu danych, umieszczonych w pamięci kodu...
Kolego jacynka84 . Układy MCS-51 nie posiadają konfigurowalnego preskalera. Jest tylko dzielnik przez 12. Wykonałem go na procesorze 89c2051 z 12MHz kwarcem. Program sam do niego pisałem i wydaje mi się że powinno być wszystko dobrze bo wyliczenia się zgadzają a jednak jest chyba coś nie tak. Gdyby BASCOM był idealny to działałoby to porawnie - z błędem...
Wiec tak też jestem początkujący, właśnie częściowo też korzystam z tego programu. Udało mi sie zrobić z niego właśnie zwykły licznik impulsów. Generalnie to brak w tym kodzie jest obsługi wyświetlacza LCD, jak sam widzisz nie jest skonfigurowany gdzie jakie porty procka maja nim sterować , jest niekompletna konfiguracja Timer1.To tyle czego brak na...
Tłumaczą Ci ludzie już drugi dzień. Zwłaszcza kolega Logan . Czy tak trudno przeczytać w Helpie: Instrukcja ON INTERRUPT Przeznaczenie: Wykonuje 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 - są łatwiejsze profesje.
Ale mimo wszystko zastanawia mnie czego unikać aby przysłowiowo nie "zamulić" programu. Moze są ogólne rady. Zakładając, że nie korzystamy z wait czy waitms w pętli głównej to widać, że już jakieś doświadczenie masz w programowaniu, i powoli jak mówią koledzy wyżej dochodzisz - jak każdy zresztą- niestety do kresu możliwości Bascoma. Tzn można z niego...
Cóż, pewnie takie rzeczy są w tym prymitywnym języku ciężkie do osiągnięcia. Fragment pomocy do bascoma: Konfiguruje sprzętowy układ UART by używał bufora wejściowego. Składnia: CONFIG SERIALIN = BUFFERED , SIZE = rozmiar gdzie: rozmiarliczba określająca ile bajtów SRAM przeznaczyć na bufor wejściowy. Opis: Gdy w programie użyta zostanie instrukcja...
Oto program który napisałem $regfile = "attiny2313.dat" 'rodzaj mikrokontrolera $crystal = 8000000 '8MHz Dim Pozycja1 As Integer 'zmienna określająca położenie serwa1 Dim Pozycja2 As Integer 'zxmienna określająca położenie serwa2 Dim Czas1 As Integer 'zmienna pomocnicza do odmierzania czasu Dim Czas2 As Integer 'zmienna pomocnicza do odmierzania...
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 czyli obliczenia tej jednej sekundy" Prawie, ale nie do końca....
$regfile = "m8def.dat" $crystal = 8000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portd.6 , Db5 = Portd.5 , Db6 = Portb.7 , Db7 = Portb.6 , E = Portd.7 , Rs = Portb.0 $lib "mcsbyte.lbx" Cursor Off Config Pinb.1 = Input Portb.1 = 1 Config Rc5 = Pinb.1 Dim A As String * 2 'Deklaracja umożliwiająca działanie komendyGETRC5 Dim...
kolego manekinen i remzibi przestańcie już proszę narzekać i płakać nad tematem usunięcia postu, jak dzieci. No stało się, może i nie dobrze ale widać, że przez pomyłkę, skoro moderator nie usuwa waszych dalszych wypowiedzi. Które wy widzę trkatujecie jak jakieś tajne konspiracyjne informacje z czasów stanu wojennego. tymaczasem kolega pisze: Dopisze...
Co jest źle napisane? CLS!!! Nie kasuj wyświetlacza tylko nadpisuj. Użyj Locate y, x lub podobnych instrukcji.
Być może bascom'owe instrukcje obsługi lcd nie patrzą na kierunek w jakim działa port, tzn. w w funkcja "Config Lcdpin" ustawia wybrane porty jako wyjścia a pozostałe instrukcje obsługi lcd nie sprawdzają czy to się nie zmieniło. Spróbuj przed instrukcjami od lcd czyli przed obydwoma "cls" ręcznie przestawić wyprowadzenia uC jako wyjścia. Druga sprawa...
Dorzuć po Chr(13) - Chr(10) i sprawdź. Alternatywnie sprawdź w instrukcji obsługi modemu, jak ustawić koniec linii polecenia.
Instrukcja Wait nie stopuje procesora. Procesor odlicza czas poprzez zmianę wartości rejestrów a więc działa. A skoro działa to powinien także odczytać informację, że nastąpiła sygnalizacja od przepełnienia Timera. Spróbuj zastosować tą instrukcję. Tylko nie wywołuj jej w obsłudze przerwania a w pętli głównej. Bo gdybyś wywołał jej obsługę w przerwaniu...
Można zerować, ale nie trzeba, bo każda instrukcja, która ją "obsługuje" i tak ją wyzeruje jeśli nie ma błędu lub ustawi po błędzie.
Nie taka konstrukcja jest jest niepoprawna. Obsługa przerwania musi być zakończona instrukcją Return. Zamiast Goto ustaw flagę i sprawdzaj jej stan w pętli głównej. Jeśli warunek się spełni to wtedy skocz do podprogramu.
Witam Kolego możesz wszystko. Niestety nie polecam Bascoma - instrukcji Bascom'owych do obsługi wyświetlaczy graficznych... możesz mieć później problemy z innymi instrukcjami typu liczniki przerwania itp Chyba ze sam sobie napiszesz sterowanie. Dataport - fajnie jest gdy to jest na jednym porcie łatwa obsługa Configport - bez znaczenia.
Mam pytanie jak odzczytać podawaną na piny procesora at89c2051 liczbę w kodzie BCD?? prosze o przykład polecenia w bascom.:?: x=Makedec(Px) I proszę zaglądac do "instrukcji obsługi" Bascoma ;) P.
W podprogramie obsługi przerwania Timer4 brak ci instrukcji end if.
Ciekawe jest to widać w twoim profilu (Pomógł: 79927) :P ale do rzeczy. Według mnie coś takiego można zrealizować w następujący sposób: - konfigurujesz przerwanie zewnętrzne żeby było wyzwalane przerwanie zboczem opadającym, rosnącym etc. - w tym przerwaniu uruchamiasz timer który zlicza sobie impulsy - jeżeli zliczy określoną ilość impulsów to wykonujesz...
Super monotonnej konfiguracji nie trzeba, biorąc pod uwagę, że cała różnica polega głównie na ustawieniu adc w free running mode (config adc=free), dodaniu obsługi przerwania i odpowiedniego ENABLE :) Wszystko w instrukcji bascoma.
ERR jest zmienną systemową i zapisywać ją mogą funkcje które mają jej obsługę. ERR sprawdza się zatem zaraz po tym jak wykonała się instrukcja ponieważ następna instrukcja na przykład 1Wreset też zwraca ERR i nadpisze ją 0 znaczy że wszystko przebiegło pomyślnie. ERR się tylko sprawdza.
No cóż, Bascom umożliwia wstawki w asemblerze, co może skrócić obsługę przerwania...
Przerwanie wyzwalasz poziomem czy zboczem? Kolejna sprawa. Gdzieś czytałem, że AVR po wyjściu z przerwania wykonuje JEDNĄ INSTRUKCJĘ i przechodzi znów do obsługi przerwania (jeśli jest nowe). Jeśli chcesz blokować wskoczenie do nowego przerwania , to musisz w OBSŁUDZE POPRZEDNIEGO PRZERWANIA na samym końcu sprawdzać bit zgłoszenia ponownego przerwania....
Napisz tak: Dim Zmienna As Byte Zmienna = 0 Config Intx = Low Level | Rising | Falling [ | Change ] 'Konfiguracja reakcji na sygnał przerwania 'za x podstaw nr przerwania wybierz jeden ze sposobów pobudzenia kocówki uC Enable Interrupts 'Uruchomienie przerwań globalnych Enable Intx 'Uruchomienie przerwania INTx On Intx Obsluga_przerwania 'wskazanie...
Gdzieś na elektrodzie ktoś już podawał fajny mały i szybki programik w BASCOM do obsługi enkodera, który przede wszystkim był naprawdę odporny na drgania i błędne zliczanie - wiem, bo sam go kiedyś sprawdzałem. Działał dokładniej niż gotowa bascom'owa instrukcja. Program był na tyle prosty, że i na C bez problemu byś go przepisał.
może schemat, a nie jakieś instrukcje obsługi....
Korzystając z języka wysokiego poziomu, czyli C lub Bascom uzyskasz takie afekty, że zawsze coś się będzie rozjeżdzało. W Bascomie te efekty będzą napewno wieksze niż w C. Musisz dążyć do tego, aby procedury obsługi przerwania były jak najprostsze i najszybsze , oraz dla wszystkich przypadków takie same czasowo. Jeżeli widzisz że któraś opcja jest zawsze...
Config Portb.0 = Output Config Portb.1 = Output Config Portb.2 = Output Config Portb.3 = Output Config Portd.7 = Output Config Portd.6 = Output Config Portd.5 = Output Config Portd.4 = Output zastąp: DDRD=255 Zastąp IFy case'ami, dodaj procedurę zerującą Portd7-4 i kod będzie zgrabniejszy. Przypisanie logiczne zastąpi 4 instrukcje sbi/cbi warte 8 taktów...
instrukcja obsługi bascom bascom instrukcja instrukcja bascom
sterownik centralnego zamka yaris napiąć matryca toshiba telefon słuchawka bluetooth
listwa zasilajaca kasprzak radio rm121
FreeStyler a Chromateq 512 – sterowanie DMX przez Art-Net i USB, kompatybilność modeli ScoutGuard SG-880-4G, FOXcam – firmware, aktualizacja, narzędzia BMC, wsparcie