BASCOM TYGRYS-NEW Autoalarm instrukcja obsługi POLSKI
cóż, nadal proszę o jakieś szersze informacje, instrukcję obsługi itp.
Pisząc program stanąłem przed problemem odbioru kodu RC5 z pilota ale z użyciem przerwania. O ile w BASCOM 8051 GETRC5 w przerwaniu działa doskonale, to w BASCOM AVR jest to kompletna porażka. Wadą Bascomowej funkcji GETRC5 jest: 1) Dziadowskie działanie w przerwaniu (niby działa ale traci pierwszy pakiet z pilota) 2) Zastosowanie jej w programie powoduje...
W bascomie jest specjalna instrukcje do obsługi przycisku DEBOUNCE Proponuje z niej skorzystać
Zgadza się, pod tym względem Bascom jest nieco ułomny. Wystarczy na przykład zadeklarować tablicę jednowymiarową (mogliby wreszcie zrobić obsługę przynajmniej 2-wymiarowych) i zapełniać ją wartościami od zera - będą się dziać dziwne i nieprzewidywalne rzeczy. A wracając do tematu: czy ktoś wie, co dopisać w obsłudze przerwania? Rozumiem, że brakujący...
Bascom takie, a nawet większe opóźnienie wprowadza sam przy każdej instrukcji :wink:. Najnowszy bascom niekoniecznie. Miałem kiedyś problem z przeniesieniem kodu obsługi RFM12B z Bascom na C - w starej wersji Bascoma działało bez opóźnienia, w C musiałem dać opóźnienie kilku us, ale potem w najnowszym Bascom (2.0.7.6) kod przestał działać - też trzeba...
Myślę, że to normalne lecz zwykle program w C zwykle stanowi 70 - 80% programu wygenerowanego przez wyklęty i opluwany, choć nie taki zły Bascom. Do tego ważny jest kompilator C. WinAVR jest dość wydajny, lecz zastosowanie pokaźnego Make powoduje, że program, który nic nie robi zajmuje ponad 2kB! Wcześniej napisano, że gdyby zaprogramować obsługę LDC...
Co do wyświetlenia na lcd, to już możesz zrobić to sam. Poczytaj w helpie o instrukcji Lcd i konfiguracji obsługi wyświetlacza w bascomie. To nic trudnego, tylko trzeba chcieć.
tak z ciekawości - skoro dysponujesz tylko Bascomem który kompiluje do 4kb kodu - to po jaką choineczkę ci taka armata jak ATmega128??? ;) szok rzeczywiście, jeśli znasz C albo i tak zamierzasz się go uczyć - to może warto właśnie o nim pomyśleć ;) pozbędziesz się przynajmniej ograniczeń co do ilości kodu, sam kod będzie o wiele chudszy - a w efekcie...
Witam, mam problem z obsługą klawiatury matrycowej 3x4 w BASCOMIE. Zamieszczam jak wygląda w środku: Mam zasadnicze wątpliwości co do jej podłączenia i użycia instrukcji GETKBD. Otóż w helpie do BASOMa doczytałem się, że może być ona użyta dla klawiatur 4x4 i 4x6, czy któryś z kolegów używał do obsługi klawiatury 3x4, ew. mógłby podpowiedzieć co zrobić...
Witam Posiadam Akcelerometr/żyroskop cyfrowy MPU6500, który chciałbym połączyć z procesorem ATmega8. Jeśli chodzi o język programowania to częściowo znam bascoma dlatego w tym języku chciałbym napisać program. Pojawia się jednak problem z nawiązaniem komunikacji po I2C -Nie wiem jak dostać się do mojego modułu.Mój układ Akcelerometru/żyroskopu wygląda...
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...
Widzę profesjonalna analiza:)Dziękuję. Jednak aż tak zaawansowany nie jestem by zastosować wszystkie Twoje wskazówki.Jednak niektóre pojęcia nie tyle, że są obce co nie do końca znam zasadę ich działania np.flagi. Układ chciałem by działał bez obsługi z zewnątrz czyli brak sterowania włącznikami góra dół jedynie impuls zewnętrzny a właściwie zmiana...
Czy w obsłudze przerwań używasz jakiś instrukcji do obsługi LCD? Jeżeli masz możliwość zamień wyświetlacze i sprawdź czy tak samo się zachowują.
Po podłączeniu rezonatora: Spróbuj w obsłudze zatrzymać timer przed jego załadowaniem, następnie uruchomić go po załadowaniu. W symulatorze Basom jest możliwość określenia ile cykli zajmuje wykonanie rozkazów wykonujących dane linie programu. Warto skorzystać z tego narzędzia aby skorygować wartość ładowaną do licznika. Tzn sprawdzić ile cyklów ucieka...
nie testowałem tego tylko pisze z głowy. Ale skoro X to STRING to nie można go porównywać z pojedynczym znakiem bo STRING to tablica znaków. Porównanie musiałoby wyglądać na przykład: if X Kiedy tak sobie czytam podobne dywagacje na temat Bascoma , to zaraz widzę taką sytuację: Bascom , to skomplikowana , sterowana numerycznie obrabiarka. "Statystyczny"...
Witam!!! Czy w BASCOMie są jakieś instrukcje do obsługi druklarki przez port centronix oraz klawiatury PS2? Jeśli nie da sioę tego zrobić bezpośrednio, to może jakimś udładem? Prosze o pomoc w tej kwestii. ;)
Po wielu prubach wróciłem do instrukcji bascoma: "Config servo". Może wie ktoś jak to instrukcja jest napisana żeby można ją było przełożyć na język C lub na Bascom. Bo jeśli mam sterować 5 serwami to nie mogę do każdego używać osobnego serwa. A ta instrukcja może sterować 16 serwami na jednym taimerze mimo że nie jest ona idealna.
przerwanie od portu szeregowego obsługujesz w ten sam sposób jaki i każde inne przerwanie. Ale to nie wszystko ;) Jeśli skonfigurujesz seriala do pracy z buforem , to Bascom sam "podłoży" przerwanie i będzie za Ciebie odbierał znaki z uarta i zapisywał do bufora kołowego.Instrukcję obsługi Bascoma trzeba czytać , czytać , czytać... , a nie tylko pytać...
Obsługa 1Wire w BASCOMie nie jest obsługiwana w przerwaniach. Możesz spróbować czegoś takiego: cli 1wreset 1wwrite &H55 sei cli 1wwrite B2 sei cli 1wwrite &H44 sei Chodzi oczywiście o porozdzielanie wszystkich instrukcji 1Wire sekwencjami sei,cli.
Przerwanie od timerów to zbiór instrukcji, które zostają wykonane w przypadku przepełnienia licznika, asynchronicznie, czyli niezależnie od wykonywanego w danym momencie kodu (chyba ze jest to inne przerwanie). Nie wiem jak wygląda obsługa przerwań w bascomie, ale mogę wytłumaczyć o co "biega". A więc 8-bitowy licznik ulega przepełnieniu co 256 cykli...
(at)emarcus: O ile się nie mylę, przy prescalerze 64 i cżestotliwości 8MHz timer0 będzie miał skok co 8us, czyli licznik bedzie przepełniał się co 2,048ms, więc do poprawnego odliczenia 1s w obsłudze timera należy załadowywać do niego Timer0 = 6, i dodać licznik, który 500 razy zliczy przepełnienia. A co do tych parametrów, to zawsze wstawiałem domyślne...
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...
Musisz wiedzieć jaki masz tam sterownik. W opisie tam gdzie kupowałeś powinno pisać. Kiedy już wiesz z czym masz do czynienia to na przykład na forum MCS leży gotowa biblioteka napisana w assemblerze dzięki której, jeśli ją załączysz do swojego kodu możesz używać standardowych Bascomowych instrukcji do obsługi LCD. Działa dla kontrolera PCD8544 i zawiera...
A wystarczy polecenie LPRINT. Niestety trzeba mieć pewną bliżej nieokreśloną bibliotekę - której MCS Electronics nie upublicznia i nie sprzedaje. Ciekawe skąd wziąłeś taka instrukcję ? MCS nic o niej nie wie, chyba, że sam sobie napiszesz bibliotekę.
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...
Witam. Pytanie odnośnie kompilatora Bascom AVR. Załóżmy, że w programie wykorzystuję dwa przerwania. Pierwsze pochodzi od nóżki Int0, drugie od przepełenienia Timer 1. Czy (i kiedy) w procedurze przerwania powinienem stosować wyłączanie przerwania na czas jego obsługi? Niby Bascom udostępnia gotowe disable interrupts (wyłącza cały system przerwań) oraz...
Witam. Sprzedam książkę: Programowanie mikrokontrolerów AVR w języku Bascom Autor: Marcin Wiązania Wydawnictwo: BTC Opis: Bascom AVR umożliwia szybkie i łatwe przygotowywanie programów dla większości popularnych mikrokontrolerów AVR. Korzystając z wbudowanych w Bascom instrukcji do obsługi wyświetlaczy LCD, interfejsów komunikacyjnych ( I2C, 1-Wire...
Mam jedno pytanie czy są małe avr-ki ,attiny w obudowach dil ośmino nóżkowe , które posiadają sprzętowy uart . Albo jak w bascomie mogę napisać procedurę do np. attiny 25 który nie posiada takiego sprzętowego uarta żeby można było użyć komendy print program ma wysłać kilka zmiennych .W atmega 8 jest specjalna nóżka tx oraz rx do transmisji szeregowej...
To nie jest wcale takie skomplikowane. Musisz włączyć zezwolenie na przerwanie od zakończonej konwersji. Wtedy kiedy wprowadzisz uC w stan Iddle albo Noise canceler start konwersji nastąpi automatycznie. Wyboru kanału/wejścia dokonuje się rejestrem ADMUX. Niestety jest w nim też wybór źródła napięcia odniesienia a nie pisałeś czego chcesz użyć. Każde...
może schemat, a nie jakieś instrukcje obsługi....
A co to za zmienna Nr? Jaką ma wartość początkową i czy ustawioną? Sprawdziłbym jeszcze w symulatorze, czy program "wyrabia" z tymi wszystkimi instrukcjami w obsłudze przerwania i czy nie jest w tym czasie generowane kolejne.
Dzięki za program wyświetlający. Jeśli dobrze zrozumiałem to zera nieznaczące nie są wygaszane?, jeśli tak to mam jeszcze pytanie jak przerobić program aby te zera były wygaszone?. i czy w instrukcjach tego przerwania obsługującego wyświetlacz mogę dopisać instrukcje obsługi klawiszy tak aby załatwić to za jednym "zamachem"? Raz jeszcze dziękuję za...
delay Panowie to było rozwiązanie problemu. Przy kwarcu 12MHz daje 100us czyli 5 razy dało mi około 0,5ms (bo u mnie kwarc jest 11 z kawałkiem). Dokładność nie była mi potrzeba a timery ze względu na przerwania akurat wolałem oszczędzić. Mimo wszystko wielkie dzięki, okazało się, że jak coś się nie wie to najlepiej zerknąć do instrukcji obsługi (jest...
Ostatnio tez o tym pomyślałem, znalazłem kilka ciekawych stronek z bascomem,wydaje sie nie trudny jak na początek.
...Typ zmiennej wiem że musi być integer . Nie musi :!: Nie wiem tylko jak wyświetlić tę liczbę na portach zewnętrznych Poszukaj w "instrukcji obsługi" Bascom , słówek High i Low :idea: Piotrek
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...
Masz 2 opcje albo w pętli głównej albo w obsłudze przerwania. Po za tym jeśli już korzystasz z timera to wykorzystaj go do odliczania czasu zamiast korzystać z waitms.
Te impulsy wejściowe i wyjście ma być na tym samym pinie ? PD.0? Jeśli nie to ustawiamy przerwanie na INT0 i w obsłudze przerwania zwiększamy zmienną. Jeśli zmienna osiągnie dziesięć ustawiamy wyjscie na stan wysoki. Jednocześnie timer zlicza czas pomiędzy impulsami i jeśeli jest większy niż 60 sekund ustawia wyjście na stan niski. Podumowując: Przerwanie...
Lecz zrobiłem sobie testy: Że na wyświetlaczu wyświetlam wartość B, i jak się okazało, jeśli zamienię Config Timer0 = Timer , Prescale = 1 na Config Timer0 = Timer , Prescale = 8 to wartość B zmienia się szybciej! Dlaczego tak się dzieje? Może dlatego że jest jest prescale =1 to przerwanie jest wykonywane co 32us czyli w czasie tego waitams 20 trafia...
Witam Od 3 dni siedze nad problemem z watchdogiem który wydłuza czas resetu procesora. Metodą kolejnych wykluczeń ustaliłem ze przyczyną jest odwołanie do instrukcji zwiazanych z obsługą LCD. Najlepiej jak podam przykład. Program uprosciłem do minimum : [syntax=basic4gl] $crystal = 1000000 $regfile = "attiny2313.dat" Config Portd = Output Config Watchdog...
Wychodzenie z przerwania instrukcją goto to kiepski pomysł. Rozwiąż to inaczej. Przerwanie INT0 najlepiej wyłączyć w procedurze jego obsługi.
Dorzuć po Chr(13) - Chr(10) i sprawdź. Alternatywnie sprawdź w instrukcji obsługi modemu, jak ustawić koniec linii polecenia.
Dużo też zależy od miernika, niektóre nie radzą sobie z niską częstotliwością, albo mają problem z przebiegiem prostokątnym. Przeczytaj instrukcję obsługi, powinna być wzmianka na ten temat.
Nie będe firmy reklamował ale jeden z polskich producentów podobnego sprzętu opartego o rozwiązanie tego programatora ma na swojej stronie pełną dokumentację, schemat i instrukcję obsługi tego programatora łącznie z instrukcją konfiguracji tego pod każde środowisko (Atmel Studio, Bascom, etc.) Dostępny jest nawet wsad do mikrokontrolera. Naprawisz sobie...
Takie pytanie mam: projektuję właśnie dość złożone urządzenie w oparciu o AVR, do celów czysto uruchomieniowych wyposażam je w złącze do wyświetlacza LCD. Docelowo tego wyświetlacza ma tam jednak nie być, nie ma na niego zresztą nawet miejsca w docelowej obudowie. Moje pytanie: czy pozostawione w programie instrukcje obsługi wyświetlania, w sytuacji...
ale to juz inny temat i trzeba brac to po uwage przy projektowaniu konkretnego układu. NXP sie nie przyzwyczaje, Philips to Philips Off topic Nareszcie dzis skonczyłem projekcik - ledwo sie zmiesciłem w procku: Program: 8018 bytes (97.9% Full) A teraz musze napisac instrukcje obsługi. Czy wy tez się tak męczycie na tym etapie?
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.
Uważam, że moderator ... Działania moderatorskie wykonuję na czerwono za pomocą odpowiednich funkcjonalności. Niestety raz się zdarzyło że na czerwono wyciąłeś tekst o "niewygodnym" środowisku programistycznym :D Ale nie o tym będę pisał. Napiszę jak to wyglądało u mnie. Ja zaczynałem od BASCOMa. I to BASCOMa '51. Były artykuły w EdW. Nie miałem jeszcze...
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...
Spokojnie z tą 128 - ką. Bascom w zakresie długości kodu nie jest taki zły. Piszę przeważnie programy równolegle w Bascomie (który znam) i w "C" (bo się go uczę). Jak dotąd "C" daje plik wynikowy o wielkości od 70 do 80% pliku Bascoma. Można jednak w prosty sposób zmienić te proporcje. Wystrczy użyć niektórych instrukcji (np. print) lub obszernego pliku...
Witam serdecznie, pomóżcie bo nie znam bascoma. Potrzebuję zrealizować odbiór sygnału z pilota RC5 w asemblerze AVR a znalazłem jedynie kod w bascomie. Język Bascom AVR Do poprawnej pracy mikrokontrolera AVR, konieczna jest jego konfiguracja (przykład dla ATTiny2313). ustawiony zostanie typ mikrokontrolera, rezonator kwarcowy i funkcje wyprowadzeń....
Widzę że muszę trochę sprostować. 1. Nawet kosmicznie często wywoływane przerwanie zdąży się wykonać choć by nie wiem jak długo ono trwało, bo przerwania po wejściu w obsługę jakiegoś przerwania są blokowane i odblokowywane są dopiero po zakończeniu się obsługi tego przerwania. Więc twierdzenie że przerwanie nie zdąży się wykonać w ciągu 128us bo samo...
Jak w temacie zaczynam swoją przygodę z bascomem i napotkałem pierwszy problem. Chciałbym na wyświetlaczu led wyświetlić zawartość rejestru eedr który będzie zwiększany z każdym naciśnięciem przycisku. Wszystko chodzi ok dopóki nie użyję polecenia lookup. Dopóki licznik liczy po swojemu i wartość EEDR jest przepisywana na port C to ok. Za każdym naciśnięciem...
Dokładnych instrukcji Bascoma nie podam, bo piszę w asm. Ale zasady ogólne : 1. Generujesz start (TWCR), w TWDR wstawiając adres oraz bit R/W. 2. W obsłudze przerwania dzieje się cała reszta. Na początku czytasz TWSR i w zależności od jego wartości postępujesz dalej, albo wstawiając do TWDR kolejne dane, albo kończac transmisję warunkiem stopu, albo...
W odpowiedzi dla "zumek": Na celu miałem optymalizację pamięciową programu. chciałem zaoszczędzić na instrukcjach. Jeśli chodzi o Bascoma i Asm to Bascom ma wygodne jak dla mnie środowisko (edytor, kompilator, programator) a procedurki w asm mało zajmują i drogą ewolucji zacząłem pisać całość kodu w asm pod Bascomem. I dlatego chciałem napisać obługę...
Witam Wszystkie szczegóły odnośnie transmisji masz na stronie 6 w postaci graficznej. Bardzo ładnie wszystko widać. W pierwszej kolejności ustawiasz pin CS i LDAC w stan wysoki a SCK w stan niski. Żeby rozpocząć transmisję do układu (DAC) ustawiasz stan niski na wyjściu CS następnie na wyjściu danych SI ustawiasz najbardziej znaczący bit dwunastobitowego...
'do liczby 1536 trzeba by jeszcze coś dolożyć, na wykonanie instrukcji Zasadniczo nie trzeba nic dokładać, bo wartość timera jest inkrementowana sprzętowo od razu (w kolejnym cyklu maszynowym). Czyli już w trakcie obsługi przerwania. Jeżeli obsługa timera zmieści się w 255 cyklach maszynowych, to zmieniany jest tylko młodszy bajt timera - czyli w procedurze...
Witam.Wiem jak obsługiwać jeden rejestr przesuwny(przynajmniej ze strony teoretycznej :D). Schody zaczynają się gdy chciałbym obsłużyć dwa układy, żeby zrobić np to: tylko że w Bascomie. Wiem że do wysyłania służy instrukcja SHIFTOUT. Można prosić o przykład kodu , który jedną zmienną wysyłałby do jednego układu, a drugą do drugiego? :| Ile linii portu...
Witam ponownie !!!! Kolega Zumek świetnie to napisał. Ja uwzględniłbym jeszcze czasy wykonania warunku L1=30 i sprawa załatwiona. W obsłudze tego przerwania można dopisać jeszcze dwa warunki i sterować dwoma dodatkowymi częstotliwościami. (M.) Dzięki za uznanie :) Czas "wykonania się" przerwania niema tu żadnego znaczenia,a czas od rozpoczęcia obsługi...
na wejścia podłączony jest enkoder(pierwszy zrobiłem z myszki komputerowej) w zależności na którym wejsciu pojawi się pierwszy impuls to przerwanie jest obsługiwane jako pierwsze . może cos z tego skorzystasz. obsługa przerwań jest na dole Dodawanie: i Odejmowanie:. Ale Panowie litości w krytyce to jest mój pierwszy program w Bascomie. Tak się złożyło...
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...
w bascomie jest gotowa instrukcja "encoder" , czy nie byłoby ci łatwiej jej użyć ? , ja w swoim projekcie co 2,2 ms wchodzę do podprogramu z obsługą encodera i nie mam żadnych problemów z drganiem styków
Witaj, Używam programowej obsługi wejściowego bufora FIFO USARTa zaimplementowanego w Bascomie oraz następującej konstrukcji do jego obsługi umieszczonej w głównej pętli programu: 'Konfigurujemy programowy bufor sprzętowy Config Serialin = Buffered , Size = 128 Enable Interrupts ......... 'W pętli głównej: If _rs_bufcountr0 <> 0 Then Do Dana...
ale żeś mnie zjechał.. przyznaję się.. mój błąd.. dopiero zaczynam.. napisałem to pierwszego dnia zabawy z bascomem.. to jest mój program przez który się uczę obsługi pilota, wyświetlacza itd... z tąd moje podstawowe błędy.. do tej pory pisałem programy na PC z tąd moja niewiedza o tempie wykonywania instrukcji.. wiedziałem, że jest wolniejsza ale z...
Zainstalowałem AVR Studio4 i lecę od początku z google i pdf na temat ASM i AVR Powiedzcie chociaż czy w dobrym kierunku zmierzam? Bo jak w złym to odpuszczam i daje sobie spokój, pobawię się migającymi diodami w Bascomie. Tam gdzie nie ma komentarza to nie wiem co to znaczy i co robi ale było w pdf lub innych opisach, jeżeli ktoś może mi wyjaśnić instrukcje...
Zewnętrzny RAM można dołączyć tak samo jak zewnętrzny Eprom (np. z programem), czyli do portów P0 i P2, przy czym do portu P0 dołącza się zatrzask np. 74LS373, służący do zapamiętania części adresu. Jest to typowy schemat, znajdziesz go w literaturze. Do programowej obsługi zewnętrznej pamięci RAM, służy instrukcja MOVX, w asemblerze, natomiast w Bascomie...
Tu jedna komenda nie pomoże. Nie ma takiej co załatwiałaby całość. Obsługę dekodera DTMF musisz napisać sam. Czekasz na sygnał odebrania tonu i pobierasz 4 bitową liczbę. Liczba ta przelatuje przez konwerter znaków (00h-0Fh -> 0-9, *,#) i trafia do pamięci. Dostęp do EEPROM to także ciąg instrukcji: I2CInit, I2CStart, I2CRByte, I2CWByte, I2CStop. Napisałem...
Jeśli wykorzystujesz przerwania, to instrukcja serwa rozsypie się, jak z resztą większość rzeczy w bascomie. Moja rada: Napisz obsługę serwa ręcznie, w dziale Automatyka i Robotyka opisałem kiedyś jak sterować serwami, przynajmniej czegoś się nauczysz
WItam :) Zwracam sie do szanownych doświadczonych kolegów o podpowiedź. Bawię się ostatnio mikrokontrolerkiem atmega8 w sterowanie servem (hitec hs-55). Program piszę w Bascomie i bardzo chciałbym załapać jak sensownie uzywać timera i przerwan (nie chcę uzywać bascomowskiego config servo). Po pierwsze... Czy na 8 mhz kwarcu mogę sterowanie sensownie...
Odkopię trochę temat bo sam walczę z ekranem od nokii i mam problem. W większości przypadków podawany jest powyższy kod do obsługi lcd ale u mnie on nie działa i nie mam zielonego pojęcia dlaczego. Jedyne co zmieniłem to pin DC na Portb.3, kwarc na 8Mhz oraz procesor na atmega32. Na ekranie nic się nie pojawia. Ekran jest na pewno sprawny ponieważ poniższy...
Z tą dowlnością w używaniu rejestrów byłbym bardzo ostrożny. Nieodpowiednia zmiana - program się wysypie. Nie wolno używać w trybie zapisu bez wcześniejszego zapamiętania: Y ( soft stack pointer ), R4:R5 ( frame stack pointer ), R6 ( status register ), R8:R9 ( data pointer ), R23 ( translate register ), R12:R13:R14:R15 ( fp calculator ). W sumie można...
Witam. Przy okazji mojego ostatniego tematu "uŚciągi" jeden z forumowiczów poruszył temat który jak zauważyłem pojawiał się już na elektrodzie jednak opisy były różne, a wiadomości niejednokrotnie mylące. Tak się składa że udało mi się uruchomić wyświetlacz od Siemensa cx70, c65, itp. bo o takim LCD właśnie jest mowa. Postanowiłem podzielić się więc...
Witam, Ostatnio zabrałem się za zamek szyfrowy, ale jako że moja wiedza o programowaniu jest znikoma, postanowiłem zrobić klawiaturę, w której każdy switch jest podpięty do osobnego portu (pomyślałem- będzie łatwiej) . Nie najlepiej to wymyśliłeś. Pod każdym względem, lepszym rozwiązaniem byłoby utworzenie matrix keybord, niekoniecznie 4x4 ale w tym...
smalski->O priorytecie przerwań w AVR-ach , można powiedziec tak , że im niższy(mniejszy) adres wektora , tym wyższy priorytet posiada dane przerwanie. To jest zasada stosowana w PC, (np przerwanie 2h ma prorytet wyższy od 3h, ale niższy od 0h... 0h (dzielenie przez zero) ma najwyższy priorytet..).. w AVR wszystkie przerwania mają taki sam priorytet.....
Impulsator nie będzie pracował na przerwaniu tylko zwykle w pętli do loop bo takie rozwiązanie wystarczy. W tejże pętli będą także wysyłane sygnały regulacyjne po I2C jako odpowiedź na regulacje wykonane impulsatorem oraz wyświetlane dane na LCD. Procedura obsługi przerwania od Rx (MIDI) odczytuje bajt i jeżeli równy jest 176 (nasze dane) to czyta dwa...
A od czego masz licencję, która wszystko przecież definiuje? BASCOM-AVR sam w sobie nie . Swoje kody wynikowe tak (brak restrykcji). Kody wynikowe osób trzecich, za ich zgodą . Sam kod funkcji _GETRC5 jest dość prosty. Konfiguracja licznika (TIMER0), samplowanie bitu w porcie, sprawdzanie ramek czasowych, umieszczanie wyniku w R17/R18. I tyle w tych...
Hm, sprobuj ustawic na 12 bo pamietam ze zmieniajac ten paramer udalo mi sie odpalic wiekszosc bascomowych funkcji na tym procku. Poza tym.. skoro zaczales pisac w C, to po co przesiadac sie na bascom? Satysfakcja z dzialajacego kodu w C jest wieksza niz z bascomowego - przynajmniej dla mnie. edit: Zawsze mozesz ustawic mnoznik zegara na 1/12 i uzyskasz...
Witam wszystkich, Tak jak w temacie: Poszukuje sprawnego programu aby zrobić zegar LCD na ATMEGA8. Program musi być w języku bascom. Znalazłem coś takiego ale nie działa :/ Opoźnienie sekundy wynois jakies 4s 'Program zegara wykorzystującego przerwania od Timer1 'Przerwanie przepełnienia Timer1 jest generowane co 1 s '8 MHz/256/31250 = 1 s 'Przycisk...
Po wykryciu naciśnięcia klawisza musisz ustawić poziom świecenia i przerwać pętlę for next, bo wykonuje ci się jej resztka i zmniejsza jasność świecenia. Co do W1, nie wiem czy to jest komplet źródeł, ale jeśli używasz Bascomowe procedury obsługi W1, to musisz mieć zablokowane przerwania. Albo nie używasz przerwań wcale w programie, a jak nie to musisz...
No właśnie- przerwanie od Timera co 16.384 ms a w przerwaniu tylko inkrementacja jakiejś zmiennej. No ale to Bascom- odkładanie na stos i zdejmowanie zajmie jeszcze kilkadziesiąt instrukcji po 0.0625us przy zegarze 16MHz. Ale nawet wtedy to będzie poniżej 6us. Wystarczy aby obsługa przerwania INT0 była krótsza od 16ms. Zwłaszcza że przerwanie zewnętrzne...
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...
Witam ewentualnych czytelników tego tematu. Zamykam temat, jako że problem rozwiązałem. Obsługa timerów została poprawnie zrealizowana po skompilowaniu projektu w Bascomie dla procesora Atmega48, Jedynie przy obsłudze przerwań pojawił się problem. W moim programie była konieczność "ręcznego" kasowania flagi przerwania INT1 za pomocą instrukcji: SET...
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ł.
Witajcie. Nadeszły wakacje, nadeszła i nuda. I to jaka, aż wstyd przyznać mi się, że wziąłem się za obsługę kineskopu cz/b 5,5". No cóż, w wieku 22 lat powinno się obsługiwać dziewczynę a nie kineskop, no ale zdarza się i tak :-) Generalnie nie za bardzo jest sens przytaczać kod programu czy schemat. Ogólnie synchronizuje się na przerwaniach z impulsem...
Dzień dobry, Jestem w trakcie tworzenia programu, w którym wyniki wyświetlane na wyświetlaczu graficznym 128x64 chcę zapisać potem na kartę SD. Problem w tym, że polecenia obsługi wyświetlacza graficznego (Boxfill, Line, Circle) "gryzą się" z poleceniem OPEN wykorzystywanym w podprogramie dokonującym zapisu do karty SD. Do programu dołączyłem bibliotekę...
Bascom nie jest taki głupi i nie pozwoli skompilować jeśli Relative Call or Jump jest zbyt daleki. Wywali błąd. Przykładem jest biblioteka hexval.lib autorstwa MWS. Nie jest to biblioteka MCS i użyto w niej RJMP i RCALL. Jest pomocna bo sprawdza czy wartości HEXstringów zawierają tylko dozwolone znaki A-F 0-9, jednak dla większych programów np. z obsługą...
Jesli chodzi o I2C to w BASCOMIE jest kilka instrukcji do obslugi tej transmisji. Poszukaj w pomocy! Napewno ten temat byl poruszany w EDW w cyklu Szkola Bascoma Czy cos takiego bodaj w 2000 r. Poszukaj w archiwach www.edw.com.pl oraz przejzyj przyklady ktore znajdziesz na Elektrodzie !!! Pozdrawiam :)
Z tego co widzę to biblioteki BASCOMA do obsługi LCD nie korzystają z linii RW. Tak, można podłączyć jako 8-bitowy -ale chyba tylko w trybie magistrali. fragment helpa poniżej: Przeznaczenie: Określa sposób komunikacji z wyświetlaczem LCD. Składnia: CONFIG LCDBUS = ilość_bitów gdzie: ilość_bitów4 dla transmisji 4-bitowej, 8 dla transmisji 8-bitowej....
Problem jest z pinem C.0 a nie z portem D. Cały port D jest przeznaczony do obsługi klawiatury instrukcjami Config Kbd i Getkbd Schemat jest przykładowy, ukazujący połączenia elektryczne. Podłączenie konkretnych przekaźników opisane jest w kodzie. Z innymi przekaźnikami nie ma problemów. (Poprawiłem już schemat). Zastanawiam się, czy instrukcje Bascoma...
Witam. Na stronie: Wyczytałem że: "W język Bascom AVR wbudowano wiele instrukcji zapewniających m.in. łatwą obsługę (...) a także obsługę stosu TCP/IP na układzie W3100A" Czy komunikacje przez LAN w BASCOMIE (sterowanie portami I/O za pomocą przegladarki, strona z "wlącznikami") latwiej zrobić na W3100A? Czy korzystać z ENC28j60?
Witam Zrobiłem termometr na Ds18b20 i wynik wyświetlany jest na 3 wyświetlaczach 7 segmentowych Led. Dodatnia temperatura działa bardzo dobrze jednak gdy pojawia się ujemna temperatura poniżej - 10 stopni na wyświetlaczach pokazują sie same 8 8 8 . Może to dlatego że pojawia się - ? Nie wiem jak w bascomie można napisać moduł z liczby np. |-10| = 10...
Witajcie!!! Napisałem krótki programik w bascomie do obsługi wyświetlacza led.utkwiłem jednak w pewnym, miejscu i nie mogę dalej ruszyć oto kod: Readeeprom Cx , 512 Inputbin A(1) , Cx For Ax = 1 To Cx Writeeeprom A(ax) , Ax Next Ax instrukcja inputbin w składni "inputbin a(1) , cx" czyli ze zmienną cx nie chce działać. Gdy w instrukcji inputbin podam...
If Flaga_1s = 1then To tak ma być? Trzeba zacząć oszczędzać- może Timer jednak w innym trybie? Load Timer0 , 250 W trybie przechwytywania czy porównania oszczędzamy instrukcję podstawienia. No i LCD- w bascomie jest jakaś biblioteka obsługi LCD sprawdzająca flagę zajętości LCD- pozwala to trochę oszczędzić czasu. No i może w przerwaniu tylko inkrementować...
musisz dostawiać wiodące zero... Co chyba nie jest trudne, w bascomie służy do tego chyba strasznie zasobożerna instrukcja "fusing" czy jakoś tak... W C nie ma takiego problemu, bo obsługa popychania znaków na wyświetlacz jest niskopoziomowa, i można po prostu wyświetlać... [syntax=C] unsigned char godziny=0x9; //0 + 9 lcd_znak(godziny>>4); lcd_znak(godziny&0xF);...
Za polskim helpem Bascoma Przeznaczenie: Powoduje przerwanie wykonywania instrukcji: FOR..NEXT, DO..LOOP, WHILE..WEND, SUB..END SUB lub FUNCTION..END FUNCTION. Składnia: EXIT FOR EXIT DO EXIT WHILE EXIT SUB EXIT FUNCTION Opis: Za pomocą instrukcji EXIT można w każdej chwili wyjść z dowolnej instrukcji strukturalnej. Przykład: '---------------------------------------...
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 jakieś używane przeze mnie instrukcje (np. print dla sprzętowego...
W helpie bascoma nie znalazłem konkretnej odpowiedzi na moje pytanie. Odnośnie wait pisze tam tylko "Instrukcja wstrzymuje działanie programu na podaną ilość sekund. Odmierzany czas jest wartością przybliżoną, więc nie należy stosować tej instrukcji do dokładnego odmierzania czasu. Używanie przerwań, może znacznie wydłużyć działanie instrukcji ."Osobiście...
Witam. Chciałbym uzyskać efekt parametru echo on instrukcji input (mikrokontroler otrzymuje znaki po UART, i natychmiast wysyła je spowrotem) dzięki czemu na ekranie monitora portu COM będę miał wyświetlane wpisywane przez siebie znaki. Niestety używam konwertera Oczywiście w takim przypadku ustawienie parametru echo na on niczego nie zmienia (nie widzę...
Kolega cristof_w ma po prostu złe nawyki z programowania c/bascom. W procesorze nie ma żadnego wydzielonego miejsca gdzie należy cokolwiek definiować albo umieszczać . Pamięć flash jest do twojej dowolnej dyspozycji i co chcesz gdzie chcesz umieszczasz. Musisz tylko wziąć pod uwagę że pierwsze komórki tej pamięci mają dodatkowe specyficzne zastosowanie...