Nie wiem czy będziesz mógł ustawić Timeout bo jest od wersji 2076. Najwyżej zakomentuj. Reszta powinna działać. Poczytaj o "Config Serialin" i "Ischarwaiting" Tak dokładniej to Input czeka na Enter albo na to co ustawimy żeby czekał (Config Input) Jak Enter nie nadchodzi z powodu jakiegoś błędu to przydaje się Timeout. Najczesciej odbieram dane po jednym...
działa działa możesz tez dać AND, oraz inne funkcje logiczne. ostatnio testowałem takie coś If _hour = I Or _hour = J Or _hour = K Or _hour = L And _min = 1 And _sec = 0 Then i wszystko było ok :)
Ja mam coś takiego u siebie, tylko to nie wszystkie kombinacje bo będzie ich 36, z 6 wejść. Dim Stan_portu As Byte Stan_portu = Portd Do If Stan_portu <> Portd Then Stan_portu = Portd Select Case Portd Case 128: instrukcje... Case 192: instrukcje... Case 224: instrukcje... Case 240: instrukcje... Case 248: instrukcje... End...
W twoim programie jest tak: [syntax=basic4gl]If Wart_ac > 1000 Then Gosub Wykrywanie Elseif Wart_ac < 1000 Then Gosub Czujnik1przeciwnik Elseif Wart_ac1 < 1000 Or Wart_ac2 < 1000 Then ' ###### ta czesc petli nie reaguje na zmiany w ukladzie ### Gosub Czujnik12lini End If [/syntax] w jaki sposób 3 opcja ma zostać spełniona? Przecież jeśli...
Co to w ogóle jest: Trochę przekombinowane: Powinno być: czytaj_stany: Czujnik_lewy = Getadc(5) Czujnik_prawy = Getadc(3) Return ... aczkolwiek dwukrotne powtórzenie Getadc(x) kiedyś maskowało błąd Bascoma, który jak dobrze pamiętam polegał na odczytywaniu za pierwszym razem napięcia z końcówki o numerze o jeden niższym niż wskazana...
Potestuj bo tak na szybko przy poobiedniej kawie klapałem jedną ręką :D Może coś przeoczyłem i trzeba prześledzić. Te złożone operacje w jednej linii dla stałych Bascom robi bez problemu. Osobiście bym tego tak nie napisał. Nie wiem po co to ciągle obliczać jak można raz... [syntax=vbnet]$regfile = "m328pdef.dat" $crystal = 16000000 $hwstack = 64 $swstack...
BASCOM, mam taki warunek: [syntax=basic4gl] If V > Prog(1) And V <= Prog(2) Then Gosub Aku_0 ; End If [/syntax] chciałem w ten warunek wstawić dodatkowe dodawanie bo taka jest potrzeba [syntax=basic4gl] If V > (Prog(1)+5) And V <= Prog(2) Then Gosub Aku_0 ; End If [/syntax] ale wywala błąd ERROR 35 3 parameters expected..... jak można temu...
Witam Mam problem z instrukcją if ... Napisałem program, który na wyświetlaczu wyświetla kilka animacji. Chciałbym za pomocą przycisków zmieniać kolejność wyświetlania i mam problem Podaję kod [syntax=basic4gl]$regfile = "m328pdef.dat" $crystal = 1000000 Config Portd.6 = Output Portd.6 = 0 Config Portd.7 = Output Portd.7 = 0 Config Portc.5 = Input Portc.5...
To jest właśnie jeden z powodów, dla których porzuciłem bascom'a jednakże jest na to rozwiązanie - wykorzystaj zmienną pomocniczą: [syntax=basic4gl]Dim B As Byte Dim C As Byte Dim Tmp As Byte Dim Malo As Bit Dim Rowno As Bit Dim Duzo As Bit Tmp = C - 1 If B < Tmp Then Reset Malo Else Set Malo End If Tmp = C + 1 If B = C Or B = Tmp Then Reset Rowno...
Przyciski powinny zwierać do masy i mieć ustawione wewnętrzne pull-upy lub w aktualnym układzie (czego się nigdy nie robi) mieć zewnętrzne rezystory pull-down.
Daj jakąś flage. Np.: Na początku A=1 w podprogramie daj A=0 A potem sprawdzaj i jeśli A=0 brak skoku do podprogramu mimo załączonego przekaźnika. Po prostu daj drugi warunek. Pozdrawiam.
dodać dyrektywę Else poczytaj proszę materiały z linku - tam masz wszystko wyjaśnione kto powiedział, że nie wolno?
Witam Musisz skonfigurować Timer i za jego pomocą odliczyć 4 minuty. $Crystal = 11059200 Config Timer1 = Timer, Prescale = 1024 Load Timer1 , 10800 On Timer1 Sekunda Config Pind.1 = Output : Wy Alias Portd.1 Config Pind.2 = Input : We Alias Portd.2 Dim Licznik_1 As Byte Dim Wsk As Bit Enable Timer1 Enable Interrupts Licznik_1=0 Wsk = 0 Do If...
Pamiętam, że namawiałem Cię do zmiany tego kodu bo ja bym tego tak nie zostawił.
Ja bym nie ufał i dopisał przed skopiowaniem bufora [syntax=vbnet] If Flaga Then Return[/syntax] a [syntax=vbnet] In_pos = 1 'Zmniejszamy wskaźnik bufora do 0 (usuwamy ramkę)[/syntax] przeniósł przed ten warunek.
1. Daj sprawdzanie szyfru w pętli bo zajeździsz BASCOM'a tak długim warunkiem ;-) [syntax=BASCOM] Valid = 1 For Index = 1 to 8 If Kod(Index) <> Szyfr(Index) then Valid = 0 Exit For End If Next Index [/syntax] 2. Zamiast Goto Alarmowanie powinno być Gosub Alarmowanie ponieważ Alarm = 0 nigdy nie zostanie wykonane.
Przede wszystkim nie kasujesz zmiennej jak warunek jest fałszywy: If I1 =< E Or I3 < T Then Wyj = 1 Else Wyj = 0 End If
(at)Czeslaw10 Ten fragment: If B2>=248 Then B1=R-B1 B2=R-B2 End If jest niepotrzebny, prawdę mówiąc to nie rozumiem co miał robić ten warunek...
Zrobiłem to ciut prościej i działa ale...najpierw kod: if godz_od >= godz_PCF then if min_od >= min_PCF then reset Portc.2 'stan aktywny end if end if if godz_do >= godz_PCF then if min_do >= min_PCF then set Portc.2 'stan nieaktywny end if end if i ten program świetnie działa ale na WSTAWIONYCH wartościach. I tu pytanie (pewnie się narażę...
No jak za każdym razem do licznika wpisujesz zero to jakim cudem ma być spełniony ten warunek timer1= A?
co ma się niby ustawić Portd.0 czy Portd.5 ? Gdzie jest procedura obsługi przerwania od Timera? Nie wiem czy reset nie działa tylko bitowo w Bascomie, myślę że lepije i bezpieczniej jest zrobić krok=0.
Więc warunkiem pętli niech jest i warunku który został podany i flaga, flagę ustawisz gdy wejście przyjmie stan przeciwny zostanie wykryta przerwa.
if miesiac=1 or miesiac=4 or miesiac =9 then endif Tak powinna wygladac skladnia w bascomie i spokojnie mozna wiecej niz dwa warunki, sprawdzone empirycznie :-)
Witam. Mam problem z poleceniem "OR". Chodzi o zapis kodu. Co mam wpisać, żeby: IF x = 6 AND y = 3 (albo jeśli) x = 7 AND y = 5 THEN (zrób coś) : END IF W miejsce (albo) zamieściłem OR ale nie działa to tak jak bym chciał. Procesor reaguje tylko wtedy kiedy x = 7 AND y = 5 , a nic nie robi w momencie gdy x = 6 AND y = 3. Wiem, że mógłbym to zapisać...
użyj getkb (pobieranie wartosci z klawiatury),znajdziesz w konfiguracji bascom potem ustalasz w programie kod i porównujesz go za pomoca warunków If itp...
Do odczytu stanu portu służy rejestr PIN. Czyli masz źle zrealizowane warunki w funkcji przerwania.
potrzebuje pomocy a nie wyszukałem jej ' Tu niema problemu if LICZ = 5 then led = 0 end if [b]' Tu mam problem if LICZ = (w zakresie od 5 do 10) then led1 = 0 end if[/b]
Zauwzyłem, żę kiedy traktuję atmegę zakłoceniami emc potrafi o ona zacząć wykonywać inny fragment kodu (bascom), 1. AVR-y nadają się słabo lub nie nadają w ogóle do pracy w takich warunkach. Proponuję użyć PIC-a. Jest odporniejszy niż ARV lub poszukać przemysłowego kontrolera. 2. Bascom - nie nadaje się do pracy w warunkach gdzie wymagana jest odporność....
Witam ! Pokazuję błąd ponieważ sprawdzasz stany portów ! Z tego co wiem stan portów AVR to zero lub jedynka. ! źle jest B=2 . napisz B=1 lub B=0 Może być albo 0 albo 1. Pozdrawiam Stefan Amator
Taki "zestaw" będzie OK ale pod warunkiem , że *.hex skonwertujesz na *.bin (np. programem hex2bin), bo Bascom-owy programator HEX-ów nie czyta :( Piotrek
jeśli x = 6000 spełniony jest tylko pierwszy warunek , a drugi już nie. daj w programie przed sprawdzeniem warunku wyświetlenie x na wyświetlacz przez np. 2sekundy lub jakieś else dla drugiego warunku
Takie rzeczy to tylko... w asemblERZE ;) Zwróć jeszcze uwagę, że poza samym użytecznym kodem Bascom wstawia pełno niepotrzebnych bzdur do programu - zerowanie całej pamięci, nieużywane wektory przerwań itp itd...
Fredy - coś przekombinowałeś. Nie znam składni Bascom, ale to będzie coś raczej jak: if (m and 4) = 4 then Może wystarczy w warunku "m and 4" - nie wiem, jak Bascom ewaluuje wartości Boolowskie i nie chcę tego wiedzieć. A teraz napisz to dla potomnych w poprawnej składni Bascom... Z góry dziękuję.
Witam. if a() = b() then jakieś tam instrukcje end if Taki warunek porówna tylko pierwsze elementy tablicy.
Dlaczego? Przecież to proste! W piewszej wersji stawiasz złożone warunki! W drugiej ich nie ma (np. BASCOM AVR nie trawi wogóle złożonych warunków). Jeśli mógłbyś te warunki jakoś usystematyzować to możesz skorzystać z funkcji LOOKUP() i odpwiednio umieszczonych danych w liniiach DATA. Kiedyś odchudziłem tak program o 128 bajtów.
W przykładzie z zasilaniem 5 V autor artykułu przyjął, że spadek napięcia diody to 3 V przy prądzie 20 mA. Obejmując te warunki, to przy wartości napięcia 12 V, wartość rezystorów to 450 Ω.
arktik1 podałeś złe warunki.
[syntax=basic4gl]Loop Until Pinc.5 = 1[/syntax] bo Pinc.5 zawsze się =1 gdy nie wciśnięty (oczywiście pod warunkiem że wciśnięcie powoduje przyłączenie tegoż do masy)[/code]
If (warunek) Then (tu instrukcje gdy warunek jest spełniony) Else (tu instrukcje gdy warunek nie jest spełniony) endif
Nie wiem po co ci takie udziwnienie, zobacz tabelę ASCII. Liczby są od 48 do 57 w dziesiętnym. Zanim skonwertujesz zmienną Dana najpierw sprawdź czy nie znajduje się w tym przedziale przy pomocy np. Select case Patrząc na Twój kod w linku co podałeś to w ogóle nie wiem na co Ci ta konwersja do wartości liczbowej ? Przecież by wyświetlić jakąś liczbę...
tak jak pisał kolega wyżej 34/10=3 (pod warunkiem deklaracji jako liczba całkowita) 34 mod 10=4
Ja również odradzam stosowanie GOTO, nie wiem czy w bascomie jest jakiś bug ale kiedys nawet proste programy z tymi instrukcjami nie chciały mi działać prawidłowo.
bardzo dziękuje za podziękowania. ja tylko pomagam po to ta strona istnieje. Nie lubię gdy ktoś się wynądrza a nic nie zrobi w tym kierunku by pomóc koledze!. jak mozesz prześlij mi schemat ukladu i warunki sterowania przekażnikami. Zobacz ten schemat jest w załączniku.
To część instrukcji i nie można tego zmieniać ani przypisywać. Użyj warunku.
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.
Zapisuj sobie to do eeproma wtedy zapamiętasz na stałe. Jak wykonać? Hmm za pewne wykorzystując jakiś warunek :)
Witam. Każde otwarcie instrukcji warunku IF musi być zakończone End IF. Pokazane błędy mówią ze nie zamknąłeś wszystkich warunków IF. Po kodzie widać że brakuje kilku zakończeń End IF.
Powinien ale cls daj przed petla a w niej zastosuj locate. Po za tym nie operuj warunkami na liczbach zmiennoprzecinkowych. Przelicz sobie jaka wartosc ma zmienna Wart_ac przy napieciu 1V i do niej napisz warunek.
Odczytać musisz cały port B a potem zerować 3 najstarsze bity bo one mogą powodować zamieszanie. Zmienna oczywiście bajtowa. porównujesz potem zmienną z konkretnymi wartościami. Czyli masz 16 warunków sprawdzających jaki klawisz został wciśnięty.
Skoro program utyka w jakimś miejscu to znaczy że czekasz w pollingu na stan, który się nie pojawia. Po pierwsze dodałbym time out, który przerwie pętlę oczekiwania zanim układ zostanie zresetowany przez watchdog. Dodatkowo w przypadku wystąpienia takiego timeoutu trzeba by obsłużyć jakoś błąd magistrali: http://obrazki.elektroda.pl/2162467700_1...
Instrukcję warunkową popraw jeszcze, bo zabrakło ci jednego end if'a. Czyli powinno być: if Pinb.0 = 0 Then Portb.2 = 0 End If Tu akurat nie musi nic dodawać bo BASCOM dopuszcza składnię jednowierszową w stylu: If Warunek Then [...] Else [...] Jak napisał landy13, w "kodzie" :) autora zbędny jest End If.
Witam Wiem co to wyszukiwarka ale jakoś nie moge znaleźć przykładów programów z których mógłbym podpatrzeć pewne rozwiązania. Jestem zielony w bascomie i to są moje początki. Próbuje właśnie zagłębić temat użycia kilku warunków if w jednym programie. Próbuje zrobić układ w którym po włączeniu pojawi się jakiś napis np. "start" po włączeniu przycisku...
Jasne jest, ze musisz dodac date. Gdzies w necie albo w samplach bascom masz przyklad zegarka z data, pozniej wystarczy dodac odpowiedni warunek i po sprawie.
Program sam wyjdzie gdy zostanie spełniony warunek. Until.
a jak chcesz, żeby zamiast zer były puste pola na wyświetlaczu to piszesz warunek, że jeśli cyfraX <> 0 to włącz tranzystor
Witam mam problem z zrozumieniem warunków If w Bascomie ponieważ mam program dość zagnieżdżony więc już sam się pogubiłem .Oto kawałek programu Przerwanie: Incr P If P >= 1000 Then T0 = T0 - 1 T1 = T0 + 2 If R >= T0 And R <= T1 Then If Wylacz = 1 Then Kontrola = 0 End If Wylacz = 1 Else Kontrola = 1 Wylacz = 0 End If If R < T0 Then Incr...
witam mam taki mały problem... potrzebuję zrobic warunek taki, że jeśli 500<x<5000 to ma się coś wykonać. czyli jesli x będzie z przedziału (500; 5000) to ma się coś stać. jak to zrobić? próbowałem tak: if x > 500 then if x < 5000 then wykonaj_program end if end if ale niestety tak się nie da, ponieważ brany pod uwage przez bascoma jest...
a nie wystarczy multi-tasking? to akurat nie jest trudne do zrobienia, pod warunkiem, że procesy nie maja ze soba nic wspólnego oprócz wpływu na zmienne (np. nie moga używac wspólnie podprogramu-trzeba go zdublowac.)
Timer już masz zastosowany. Jeśli tylko przeniesiesz warunki sprzed pętli do pętli wszystko będzie działać. Już niebezpiecznie zbliżyłem się do podania gotowca, więc z mojej strony na razie koniec.
Dodaj sobie takie cos na poczatku: Open "comd.1:19200,8,n,1" For Input As #2 Aha i instrukcja case.. zapisz ja raczej tak: Select Case _rsstr1 Case "1":Print #2 , 1 ... itd end select nie uzywaj srednikow i pisz w jedej lini dajac po warunku " :" Pozdrawiam
Do pętli głównej przenieś w takim razie fragment struktury Select Case a zmienną niech będzie cas.Wartości jedynie od 0 do 4. Dlatego, że pozostałe wartości będą wyświetlane z instrukcji If then (alarmy). Do każdego jednak warunku case musisz wstawic Wait 1. Inaczej informacja wyświetli się na czas tak mały, że jej nie zauważysz. Ta strukturę Select...
Witam. Tak, masz racje powinno być tak jak opisałeś "config portd.0=output ' pin sterujący diodą LED'' Tak samo jak zapis warunków o których piszesz i jest prawidłowy. Przetestuj te zmiany i zobaczymy.
Można też, gdyby Ci zabrakło kilka bajtów, odzyskać je zamieniając warunki IF...AND... na łączone IF...IF... Taka zamiana czyni program nieco mniej czytelnym ale czasem ratuje skórę :)
Mam taki mały dziwny problem ze sterownikiem na atmedze88 który ma sterować między innymi grzałką zależnie od temperatury, problem polega na tym że raz na kilka włączeń sterownika (czasem kilka razy pod rząd) sterownik przestaje włączać grzałkę a także nie wyświetla na wyświetlaczu G – która oznacza że właśnie grzałka jest włączona, po za tym...
Ale zdajesz sobie sprawę, że trochę nie logicznie jest kopiować bajty ze zmiennej która nie została zainicjowana? Przecież tam może być totalny bałagan. Zapełnij zmienną SRC jakimś tekstem i spróbuj wtedy. Nie wiem czy to pomoże , ale aby traktować to jako bug to wypada zastosować prawidłowe warunki.
ok dzieki za rade, zrezygnowalem z petli while i dałem do loop z warunkiem until i chodzi jak trzeba pozdri
Musisz dodać warunki, np. tak: [syntax=basic4gl] If Zmienna < 6 Then Zmienna = Zmienna + 1 Print Zmienna....... If Zmienna > 0 Then Zmienna = Zmienna - 1 Print Zmienna...... [/syntax]
Nie przekopiowałeś ostatniego endif z mojego kodu. Ponadto usuń swoje warunki sterowania światłem.
Kolego fliper_katrill Nie pisz że Bascom kuleje pod kątem rozbudowanyvh warunków if fhen ! Napewno kuleje? Chyba coś innego kuleje. Pozdrawiam
no to właśnie są te zmienne T1 i T2 i ten warunek mam w warunku case 0
Oki. Odpowiadam zatem na pytanie forum: Bascom nadaje się do profesjonalnych zastosowań, pod warunkiem, że owy profesjonalizm nie wymaga absolutnej kontroli nad mikrokontrolerem. Do tego Bascom nie nadaje się. Pozdrawiam.
Stosując polecenie WAIT, WAITMS, itd , powodujesz że Uc nie robi nic więcej tylko odlicza WAIT. Nie możesz stosować WAIT jeśli chcesz by kontroler sprawdzał coś jeszcze gdy liczy czas. Najprostsze rozwiązanie to zadeklarować jakąś zmienną do liczenia czasu. Wtedy zmienna liczy czas a Uc sprawdza dalej warunki.
Witam. Znalazłem pewien "kwiatek" w składni Bascoma (pewnie kolejny): Poniższe DZIAŁA If Jakaś zmienna = 1 Then Select Case Inna_zmienna Case 2: If Kolejna <> 2 Then 'Coś tam robi Else 'Testowanie bitu jakiejś zmiennej If Ostatnia_zmienna.7 = 1 Then Display On If Ostatnia_zmienna.7 = 0 Then Display Off End If Case 3: 'Coś tam robi End...
O ile zrozumialem to w procedurze wyswietlania na ekran trzeba sprawdzac warunki przekroczenia zakresów(okienka)
Jeśli nie potrafisz to zrób to prościej. Podłącz zewnętrzny kwarc 32,768kHz (zegarkowy); Config Clock = Soft Procedura zegara używa specjalnych zmiennych: _day , _month, _year , _sec, _hour, _min Wszystkie są typu Byte. Można je modyfikować bezpośrednio: _sec = 1 Sprawdź, o ile się spieszy (opóźnia). Różnicę koryguj warunkiem któregoś dnia np o północy.
Naucz się jeszcze takiego słowa "else". ;) Przydaje się w warunkach. Np. po sprawdzeniu, że x < 100 już raczej nie ma sensu tracić czasu na sprawdzenie, czy x > 200.
.... Do If S1 = 0 Or S2 = 0 Or S3 = 0 Or Then Lcd "*" End If .... O jedno OR za dużo... w kolejnych warunkach również. Na przyszłość proszę ze zrozumieniem czytać komunikaty kompilatora.
Timer0=0 przerzuć do pierwszego warunku w przerwaniu...
Szukam lakieru lub innego środka do zalewania płytek, na których znajdują się moduły radiowe RFM22 w wersji SMD. Chodzi mi to taką konstrukcję: https://picasaweb.google.com/11243994120... Czy któryśz kolegów zabezpieczał moduły RFMxxx przed wilgocią i warunkami atmosferycznymi?
Witam . Czy da sie zapisać do pętli DO zmianę $crystal?? Np. IF pina.0=0 then $crystal = 16000000. IF pina.0=1 then $crystal = 8000000. W każdym razie w tej konfiguracji nie działa. A jeśli nie to jak to zapisać żeby działało??
poczekaj poczekaj - czy jeśli w tym warunku If Ir_flag = 1 Then zrobisz sobie wyświetlanie command to pokazują ci się wciskane klawisze na LCD ?
Ok, zrobiłem obliczenia na kartce papieru by przypisać odpowiednie wartości w warunkach :) Miałeś policzyć parametr doobliczenia wewnątrz funkcji Przesow_tekstu2 , bez dodawania parametrów do tej ostatniej...
Witaj, schemat jest poprawny,jest to standardowa konfiguracja z pakietu BASCOM,ukłąd działa poprawnie,pod warunkiem,że mikrokontroler zostanie zaprogramowany wcześniej napisanym programem,którega jeszcze nie ma.
Dzięki za rozjasnionko czyli 2,56V to max, a co mam zrobic zeby miec do 5V? Wystarczy podłączyc avcc do 5V? a to aref z tym kondensatorkiem zostawić? Config Adc = Single , Prescaler = Auto , Reference = Avcc Pod warunkiem ze reszta odpowiednio filtrowane i zabezpieczone przed ESD i EMC. Na linii AVcc przydalby sie takze maly induktor (cewka); oprocz...
Bascom niestety tak ma, że czasem "łyka" niepoprawną składnię, a potem są problemy. Co do warunku to chodziło mi o to, że zmienna Volt nigdy nie będzie mniejsza niż 0, no bo jest typu Word właśnie. Nie ma też Endif więc zdziwiłbym się jakby się skompilował. Czasem też nie wiadomo czemu nie chcą działać warunki złożone. Wtedy najlepiej rozbić warunek...
Witam 1. SHDN to jak zapewne wiesz wyłączenie układu. Pobiera on wtedy znikowy prąd 2. SCLK to zegar do szeregowej komunikacji, CS - wybór układu. Fajna końcówka jak masz klika układów na jednej magistrali. Wysyłasz dane do wszystkich ale odbiera je ten co ma niski stan; pin SSTRB to sygnał strobowania. W nocie katalogowej jest opisane co się dzieje...
jeżli chodzi o bascom to poprostu: $crystal=4000000 pod warunkiem żebity konfiguracyjne na to pozwolą.
Zrób warunek, jeśli liczba >= 0 dostawiaj spację.
Spróbuj dodać "end if" w drugim warunku w programie z pierwszego postu.
Trzeba dopisać warunek co ma uC zrobić jak zmienna osiągnie "0". Mikroprocesorowi musisz wskazać jak się ma zachować w każdej z możliwych sytuacji bo on niestety nie chce myśleć za Ciebie.
Kod bakardi się kompiluje bezbłędnie a kod Rocket_93-nie. To nie C. Nie może być if P then. Warunek musi być jawnie zdeklarowany. No tak, mówiłem że nie znam Bascom. A rezystor podciągający jest włączony w moim kodzie. Jeszcze jedna uwaga - konieczny jest kondensator na zasilaniu 100nF - to na przyszłość, bo teraz masz bateryjne to i tak zadziała....
licznik = 50 w językach pochodzącch od C oznacza "nadaj zmiennej licznik wartość 50". Instrukcja użyta w warunku if() daje zawsze wejście pod if (bo wartość w warunku jest różna od zera). A poza tym, jeśli mowa Arduino, to nic nie wykonuje się "natychmiast", podobnie zresztą jak w Bascom.
A po co? Zamiast 2 pętli wykonywanych równolegle, wystarczy jedna pętla z dwoma warunkami - dla obu kolorów oddzielnie, wewnątrz.
Jeszcze bym to uprościł, po co wysyłać: Const A = 3 'stała adresu slave Const A2 = 5 ' stała adresu slave2 Nie lepiej wysyłać inne zmienne?. Do slave np: a,b,c, a do slawe2, 1,2,3. jeden i drugi będzie odbierał to samo , ale inaczej na to reagował. Wystarczy to uwzględnić w warunkach.
Returna nie ma w pozostałych podprogramach celowo tak aby wyjscie do petli głownej zawsze odbywało sie przez podprogram "zatrzymaj", Rzeczywiscie krańcówki nie są na przerwaniach, no ale lepszy taki kod niż zaden, każdy tylko wytyka a nikt jeszcze nie napisał programu chocby najprostszego jak mój (dopiero sie ucze bascoma). Warunek "b" jak i "a" rzeczywiśie...
No to kawa na ławę. Instrukcja Getrc5 w czasie działania używa jest licznika TIMER0 i związanego z nim przerwania. Licznik ten jest służy do generacji wymaganych opóźnień podczas próbkowania sygnału. TIMER0 może być dalej używany przez program, lecz należy się liczyć z wynikłymi opóźnieniami, gdy wykonywana będzie funkcja GETRC5(). Jest tylko jeden...
ducia piszesz że masz wersję Bascom 2.0.7.3. Możesz mi podesłać instalkę ?(pod warunkiem że to darmowa wersja demo). Może z tą wersją będę mógł rozwiązać mój problem.
..w helpie baskołoma wpisz EXIT pzdr.
Jak napisać menu (np. 4 poziomy x 4 funkcje) Np: możesz zrobić tak że 4x4 to jest 16 stanów (lub w zależności jak to prezentujesz więcej). Więc piszesz funkcje która jest wywoływana gdy wciśnie się to MENU, a w funkcji pętle gdzie masz 16 warunków oraz jedna zmienna która wskazuje który stan jest obsługiwany. Zamiast warunków można użyć switch ale...
To proste, wykorzystaj warunek. IF wyrażenie then instrukcja else instrukcja end if
warunki generacji wypełnić warunki warunki zwarciowe
ładowanie chrysler voyager odblokować karte sharp zmieniać
uziemienie basenu łącznik krzywkowy podłączyć
Brak obrazu na monitorze LG, Dell, BenQ – miga dioda, komputer nie wyświetla obrazu Unitec ProfiStation 12V – jaki zasilacz wybrać? Modele, parametry, wtyk, polaryzacja