W ESP wszystkie INT będą 32bity, W Arduino (o dziwo 8 bitowym) wszystkie INT będą 16 bit. Jak chcesz mieć pewność to w wielu platformach uniwersalnym oznaczeniem zmiennej jest typ uint8_t, int8_t, uin16_t, int16_t, uint32_t, int32_t, itd. Podobnie jest z INT w różnych systemach operacyjnych PC x86 czy x64 - jak się bierzesz za nowy, to zawsze na "DZINDYBRY"...
Integer to nie jest zmienna tekstowa. Sprawdź w helpie jaki zakres ma ten typ zmiennej.
Nie kompilowałem ale w funkcji suman zmienna typu integer sn powinna byc ustawiona na 0 czyli sn:=0; function suman(var t:tab; var liczba:integer): integer; var sn,i:integer; begin sn:=0; //wyzerowanie zmiennej for i:=1 to liczba do sn:=sn+t[i]; writeln('Suma netto faktur wynosi ',sn); end;
Witam Potrzebuje aby co 15 minut była wykonana pewna operacja. Wykorzystałem do tego timer0 dim Liczba8ms as integer Config Timer0 = Timer , Prescale = 256 On Timer0 Pomiar_paliwa On Interrupts Enable Timer0 Load Timer0 = 250 '****PROGRAM GŁÓWNY END Pomiar_paliwa: Load Timer0 = 250 incr liczba8ms If Liczba8ms = 112500 Then '*****jakies dzialanie'...
Ja bym zrobił to tak mam zmienną "a" typu single np potem dziele ją przez 10 a = a / 10 potem przepisuje ją do zmiennej typu np integer np "b" , ktora to automatycznie odcina, zostawia mi tylko liczby całkowite a potem znów mogę ją przepisać do a lub innej a = b zienną typu single można by potraktować tylko jako pomocniczą do obliczeń ale są zapewne...
Dlaczego pokazuje -1 na wyświetlaczu a nie np 255 jak jest dla zmiennej typu Byte. Bo Integer to zmienna ze znakiem, FFFF to właśnie -1. Byte jest zmienną bez znaku (zawsze dodatnią). Dwubajtowa zmienna bez znaku to w Baskomie "Word". Na wyświetlaczu po resecie będzie wówczas 65535. 2. Czy taki zapis eeprom będzie poprawny przy pierwszym sprawdzeniu...
Mozna to zrobic tak : Wszystkie zmienne musza byc tego samego typu czyli integer zmienna początkowa to "liczba" tysiac= liczba/1000' wyswietlanie tysiecy sto = liczba Mod 1000 sto = sto / 100' wyswietlanie setek dziesiec = liczba Mod 100 dziesiec = dziesiec / 10' wyswietlanie dziesiatek jeden = liczba Mod 10 ' wyswietlanie jednosci
Dokładnie o to chodzi : Dim loControl As Control Dim zmienna as integer Dim warosc as string Dim nazwa as string zmienna = 3 // numer label-a wartosc = "jakas wartosc" //jaka wartość ma być do LabelX przypisana nazwa = "Label" + CStr(zmienna) //nazwa Label-a, Edit-a czy co tam szukasz For Each loControl In Me.Controls If...
Albo by dużo nie pisać to cały kod może wyglądać tak :) : [syntax=vb]Dim x As Integer, wiersz As Integer wiersz = ActiveCell.Row For x = 4 To 8 Cells(wiersz, x).FormulaR1C1 = "='[R049-2015.xls]Arkusz3'!R2C" & x - 1 Next x[/syntax]
Mam pewnien problem. W c jest taka zmienna jak integer (int). Jesto to zmienna 1 bajtowa w procesorach 8 bitowych, moze przyjmowac wartosci od -128 do 127. W bascomie nie ma takiej zmiennej. Wiadomo nie jest trudno napisac odpowiedni program, ktory by mi to przeliczal. Tym bradziej, ze bede i tak musial zastosowac bascomowa zmienne typu integer/long,...
Tym sposobem przesunięcie obiektu nie będzie widoczne, jedynie po wciśnięciu przycisku obiekt zmieni swoje położenie o zadaną wartość. Nie jest to prawda. Wszystko zależy od tego z jaka zmienna sie powiaze animacje. Jezeli bedzie to zmienna Discrete to oczywiscie bedzie to zmiana skokowa. Jezeli powiazesz to ze zmienna typu analog czy integer to zmiana...
Myślę, że jest to naturalne. Zmienna typu Long zajmuje 4 bajty a Integer tylko 2. Nie da się ciężarówki zaparkować w garażu dla malucha. W helpie jest informacja, że można dokonywać konwersji typów. Oto fragment: Dim I As Integer, S As Single S = 100.1 'przypisujemy liczbę zmiennoprzecinkową I = S 'ta instrukcja zmieni liczbę typu single na Integer...
msg + #13#10 + s to konktatenacja ( łączenie ) stringów msg łączysz z #13#10 ( nowa linia ) i ze stringiem s, który tworzysz za pomocą:Str(x1:0:6, s); x1 - liczba z której tworzysz stringa 0:6 to chyba zakres s - zmienna do któ¶ej zapisujesz to pzdr.
' Funkcja musi być zadeklarowana przed jej pierwszym użyciem ' ponieważ kompilator musi wiedzieć jaki jest rozmiar danych ' przesyłanych do funkcji i jaki jest jej typ wyniku ' Funkcja musi mieć zdefiniowany typ wyniku, tu Integer Declare Function Test(byval Liczba As Integer , Tekst As String) As Integer ' określenie byval przed nazwą oznacza,...
Przetwonnik zlicza napięcia tylko do 2047, pokazując ujemne napięcie nie ma znaku minus i wartość, tylko np 65320. Czyli przetwornik zwraca wyniki w kodzie U2. Tam nie ma znaku minus. Jest za to przesunięcie poziomu. Najprościej mówiąc, zastosowanie takiej funkcji do konwersji: Napiecie = Zmierz1 * 256 Napiecie = Napiecie + Zmierz2 da Ci złe wyniki....
Czemu muszę zrobić SET na wart? Bo to zmienna obiektowa. Podobnie jak inne zmienne typu Excel.ObjectName, Np Worksheet, Workbook, etc Możesz oczywiście podstawić String, Np[syntax=vbscript]Dim strRn As String strRn = "B1:B2" 'przypisanie MsgBox Range(strRn).Address 'test[/syntax] 2. Niepoprawnie deklarujesz: "Dim ok, ostk As Integer" Tylko "ostk" jest...
Musisz najpierw przekonwertować zmienną na string/char. Wyświetla nie głupoty, tylko dane które jej przekazałeś (czyli jakąś liczbę w postaci "surowej", a nie znak tekstowy). Robi się to jakoś tak: #include <string.h> (...) char buffer[4]; // bufor na tekst, akurat mój ma długość 4 zn. unsigned long wartosc_typu_long = 1234; unsigned...
Kod jest dobry i powinien działać. Trzy rzeczy: 1. Jak deklarujesz zmienną ENERGADR? Czy jest tak arkusz? 2. Wstawiłeś ten kod po tym, jak zmienna ENERGADR została przypisana? 3. Możliwe że masz włączone automatyczne sprawdzanie czy zmienna została zdefiniowana, spróbuj tak zadeklarować (jeżeli wierszy będzie mniej niż 32767, a przeciwnym wypadku zamiast...
:) Komenda mod to taka reszta z dzielenia czyli: zmienna = liczba mod 4 zmienna - miejsce gdzie zostanie wpisana reszta z dzielenia liczba - zmienna która jest dzielona przez 4 (w miejsce 4 możesz wstawić inną liczbę lub zmienna) Dodatkowo w Bascomie są dwa rodzaje dzielenia znak / i \ pierwszy (/) używamy do dzielenia z resztą (w przypadku zmiennej...
Dodaj zmienna globalną i za każdym razem ją powiększaj (zwróć uwage gdzie jest deklaracja zmiennej "i" - to ważne) Dim i As Integer Sub kopiowanie() i = i + 1 ActiveSheet.Columns(5).Copy ActiveSheet.Columns(6 + i).PasteSpecial Paste:=xlPasteValues Application.CutCopyMode = False End Sub
zapis writeeeprom zmienna , adres odczyt readeeprom zmienna , adres Musisz pamiętać ile bajtów zajmuje zmienna którą zapisujesz i o taką wartość zwiększyć adres przy zapisie / odczycie następnej zmiennej Jeśli zmienne typu Byte , adres zwiększasz o 1 Jeśli zmienne typu Word , adres zwiększasz o 2 Jeśli zmienne typu Integer , adres zwiększasz o 2 Jeśli...
' Trzy przyciski kolejno .... (TSA ;) ' wersja bez przerwań i Timera czas_a as integer ' zmienna czasowa A czas_b as integer czas_c as integer we_a alias pinx.1 ' wejście A we_b alias pinx.2 we_c alias pinx.3 wy_a alias Py.1 ' wyjście A wy_b alias Py.2 wy_c alias Py.3 stan_a as bit ' stan układu monostabilnego A: 0 - czeka, 1- liczy stan_b...
Hej! Zobaczcie jak ja to robię, może komuś sie to przyda: 'Powiedzmy ze zmienna Liczba(single) wynosi 22.62555426 Temp = Int(liczba) ' dzieki temu poleceniu odcinam czesc setna czyli ' zmiennej Temp(byte) przypisuje liczbę 22 Liczba = Frac(liczba) ' dzieki temu poleceniu odcinam czesc ' dziesiętną czyli zmiennej Liczba(single) przypisuje ' liczbe 0.62555426...
To by było to ale jest już za późno ... :( TO JEST TO ... :D ... i nie sądzę, aby było na cokolwiek 'za późno' ... :D ... np.: na browarka ... :D ... no chyba, że chodzi o cytaty ze Stachury ... :) ... a już na pewno nie za późno na podziękowanie koledze adamasowi_nt ... w ktorym miejscu wstawić pętlę która stworzy Nie trzeba ... pętle już są ... jedna...
Skoro raport ma 300000 wierszy, to zmienna i musi być zadeklarowana jako long. W którym miejscu Twoje makro się zatrzymuje? A tak w ogóle to zamiast mozolnego porównywania każdej komórki z elementami tablicy przy pomocy pętli to poszedłbym w sprawdzenie przy pomocy odpowiednika arkuszowej funkcji PODAJ.POZYCJĘ czy wartość danej komórki jest w tablicy....
CommandButton z napisem GRAJ!, Poszedłbym raczej w kierunku formatki użytkownika (UserForm), niż bawiłbym się w z przyciskami w arkuszu. Łatwiej zapanować nad aspektem wizualnym "zabawki", no i miejsca więcej w arkuszu na inne rzeczy. czy „CommandButton_SPRWDZ1” może weryfikować wszystkie 39 odpowiedzi Prosto odpowiadając - można - np....
a nie jedną zbiorczą, natomiast jak zrobić żeby wynikiem tej petki była zmienna adresy z mailami oddzielonymi średnikami? To trzeba było tak od razu pisać. Jak ma być jedna zbiorcza wiadomość to wystarczy poniższy kod. Przykład dla adresów wpisanych w kolumnie A. Kod funkcji (Private Function...) możesz sobie skopiować na sam koniec Twojego modułu...
1. ... Chciałbym aby pętla opierała się na "numerze dostawcy" i po zmianie numeru na inny - początek nowej pętli. Pusta kolumna = koniec pętli. 2. ... działa, ale potrzebuję, aby obejmowało tylko dany "numer dostawcy". Po zmianie numeru na inny - start nowego macra. 3. ... Obecnie macro nagrywa mi całą zawartość tabeli ( tabela 1) Pkt 1 i 2 - Pętla...
Proponuje dodać dodatkową zmienną pomocniczą której zadaniem będzie pamiętanie że program zaczął działać nie jestem pewien tego rozwiązania z bascomem miałem doczynienia dość dawno temu ale możesz spróbować tego $regfile = "attiny25.dat" $crystal = 4000000 Config Portb.3 = Output 'przekażnik Config Portb.2 = Input 'włącznik typu microswitch...
Poprawiony program: program quiz; type pytanie=record pytanie,a,b,c,d:string[150]; prawidlowa:string[15]; oznaczono:boolean; end; var pytania:array[1..50] of pytanie; wybrane:array[1..10] of pytanie; i,j,pom,prawidlowo:integer; wybrano:string; begin pytania[1].pytanie:='Polecen...
Co zrobić, aby po po zmianie wartości w kolumnach 5,6,7,8; Data i godzina w kolumnach B i C pozostała niezmieniona. Odpowiadając tak na "sucho" ... trzeba do kodu dodać coś takiego: Wariant I If Target.Column = 5 Or Target.Column = 6 Or Target.Column = 7 Or Target.Column = 8 Then " można skrócić do " If Target.Column >= 5 And Target.Column <=...
Jak zmienić tą linie żeby każdy inny wpisany znak był rozpoznawalny jako błąd?? Myślałem że to ona odpowiada za to. Co do drugiego stwierdzenia właśnie jak to zrobić aby program był za każdym razem tak jakby w stanie czuwania czyli powracał na początek pętli?? Tu nie wystarczy zmienic tylko jedną linię – wymagany jest nowy kod pisany ze zrozumieniem...
Do konwersji łańcucha na zmienną numeryczną wykorzystaj funkcje VAL lub HEXVAL . Mając już adres zmiennej, możesz użyć instrukcje INP do pobrania wartości. [syntax=basic4gl]$regfile = "m8def.dat" $crystal = 8000000 $hwstack = 80 $swstack = 80 $framesize = 80 Declare Sub Show_byte(byref Adres As String) Declare Sub Show_word(byref Adres As String) Declare...
[syntax=basic4gl]$regfile = "m8def.dat" $crystal = 8000000 Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portd.6 , Db7 = Portd.7 , E = Portd.2 , Rs = Portd.3 Config Lcd = 16 * 2 Config Debounce = 10ms 'konfiguracja magistrali I2C Config Scl = Portd.0 Config Sda = Portd.1 'przypisanie nazw przyciskom P_1 Alias Portb.0 Ok Alias Portb.1 Esc...
Gdybym opisał program wszystko stałoby się oczywiste :D Użycie IF ELSE bez END IF zawsze warte jest omówienia bo potem nikt nie może się doliczyć END IF :D Chodzi o to że jeśli tylko jedna instrukcja jest od jakiegoś warunku zależna to można ją zapisać w jednej linii. Jeśli z powodu jakiegoś warunku musza juz być zmienione dwie zmienne lub wykonać się...
Przetestuj ten. Tak go poopisywałem, że aż mi się nie podoba :D [syntax=basic4gl]$regfile = "m8def.dat" $crystal = 8000000 $hwstack = 40 $swstack = 16 $framesize = 32 '# wyświetlacz Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , E = Portc.4 , Rs = Portc.5 Cls '# timer ' 8000000Hz(8MHz)/256(Prescaler)=...
Sprytnie poradziles sobie z laczeniem 2 bajtow w calosc ... Jeśli masz na myśli tę ... Function Ile_wpisow() As Byte Local Ids As Integer Local High_adr As Byte , Low_adr As Byte Readeeprom High_adr , 1 Readeeprom Low_adr , 2 If High_adr > 0 Then Ids = High_adr + Low_adr Else Ids = Low_adr End If Ile_wpisow = Ids End Function ... funkcję...
Zacząłbym od tego: Otrzymujesz wartość zmiennej temperatura równą np. 1871819,25. Jak przemnożysz to przez 16 to okaże się, że wyrażenie (temp1 + (temp2*256)) zwraca wartość 29 949 108. Teoretycznie zmienne temp1 i temp2 nie powinny przyjmować wartości większych od 255, więc wartość maksymalna wyrażenia (temp1 + (temp2*256)) = (255 + (255*256)) = 65535....
Tak się dzieje jak stosujesz instrukcje Gosub, program idzie do procedury a tam znowu stosujesz Gosub i w tej na koncu nieszczęsne Retrurn. Program idzie w "krzaki" bo przepełniasz stosy i nadpisujesz w pamięci Ram zmienne. Poczytaj o procedurach i funkcjach w pomocy Bascoma, użyj Declare Sub a potem Sub: i END SUB. Stosuj też deklaracje ramki i stosu...
przeanalizuj sobie dobrze ten kdzik poniżej bo on jest dobrze napisany - naprawdę ;) ja wprawdzie kiedyś przy okazju swojej wytrawiarki też zrobiłem sterowanie w Bascomie 2 odbiorników przy 75 krokach ale dałoby radę więcej kroków i jeszcze kilka odbiorników. Z tym, że już nie pamiętam dokładnie zagadnienia więc trudno mi się teraz znowu w to wgryzać....
Można wyświetlać temperaturę w podmenu "wybór_Ds" ale trzeba zmienić cały program. Chyba nie jest tak trudno zapisać sobie cztery ID czujników i wiedzieć później który gdzie przypisać. Najlepiej osobno podłączać każdy czujnik i na naklejce na kablu przy czujniki zapisać jego ID. Wiedząc gdzie jakie jest ID czujnika można już mu w podmenu przypisać odpowiednią...
Dzięki za wskazówki :) Korzystając z Twoich rad wklepałem kod ale niestety jak wgrywam plik nic się nie dzieje, tj nie są przepisywane żadne wartości i nie mam pojęcia gdzie leży błąd. Przypuszczam, że diabeł jak zwykle tkwi w szczegółach... Po pierwsze: zrób przypisanie do arkusza tak, jak Ci proponowałem, nie MsgBox (Dane.Name) ) Po drugie, przy...
Po pierwsze, jest zmienna o nazwie "swr" oraz próba deklaracji podprogramu o tej samej nazwie. Najprościej zmienić nazwę podprogramu na inną. Taki kod mi się skompilował: [syntax=vbnet] '---------------------------------------... ' SWR-Meter DL8UA '---------------------------------------... $regfile = "m8def.dat" $crystal...
https://obrazki.elektroda.pl/4441619200_... Oto krótka prezentacja 3-fazowego licznika energii Tuya oferującego dostęp do pomiarów przez Internet. Przetestuję tu jego aplikację, a potem zmienię mu firmware tak by uruchomić go bez chmury i połączyć z Home Assistant. Będzie to wymagać analizy jego protokołu komunikacji TuyaMCU, który...
https://obrazki.elektroda.pl/1761046600_... Pokażę tu jak uruchomić z Arduino czterocyfrowy wyświetlacz 7-segmentowy sterowany poprzez rejestr przesuwny 74HCT164 i cztery tranzystory BC546. Płytka z wyświetlaczem znów będzie odzyskana z elektrośmieci. Będzie to już kolejny temat, w którym uruchamiam wyświetlacz, gdyż omawiałem już...
https://obrazki.elektroda.pl/7393623100_... Witajcie, dziś dla odmiany mała zabawa programistyczna. Przedstawię tu jeden prosty trik na oszczędzanie pamięci przy zapisie typu integer w języku C i nie będzie to po prostu rada w stylu "użyj typu 8-bitowego zamiast 32-bitowego". Pokazany tu typ sam dobierze sobie potrzebną ilość bajtów...
http://obrazki.elektroda.pl/9083799100_1... Podstawowym celem poniższego projektu, jest umożliwienie połączenia cyfrowej suwmiarki do komputera, w celu sprzęgnięcia jej np. z SketchUpem czy innym oprogramowaniem CAD. Przedstawione urządzenie wyposażone jest w trzy przyciski, pozwalające na wysyłanie informacji z wymiarami do komputera,...
https://obrazki.elektroda.pl/3743484600_... Witajcie moi drodzy Przedstawię tutaj mojego shielda (nakładkę) na Arduino UNO opartego o układ ENC424j600. Shield ten pozwala podłączyć Arduino do internetu bez żadnego lutowania, a nawet bez użycia kabelków i płytek stykowych. W temacie dam jedenaście pełnych przykładów jego użycia z moimi...
Dziękuje za uwagi. Nie zajmuje się natywnie programowanie w BASCOMie (pierwsze spotkanie). A poprawki jakie zaproponował były wykonane na potrzeby uruchomienia układu. Kod po moich poprawka i uwzględniających część uwag ZUMEK-a (chodzi o typ zmiennej z Word na Integer) Funkcje dodane do regulatora; 1. obsługa czujników temperatury serwii DS nie ważne...
Moze zmienna integer ma za maly rozmiar. Moze trzeba uzyc real?
bascom zmienna integer integer eeprom singel integer
punktowy pomiar temperatury bosch lodowka mrozi gorenje zmywarka błędy
Przegrzane przewody przy włącznikach ogrzewania szyby tylnej i RDS - naprawa i wymiana Zmywarka Amica ZWS-456 nie przechodzi do kolejnej operacji