Tworzysz zmienną sting * 20 i tworzysz tablice byte(20) adresujesz je tak samo i poleceniem lcd chr(byte(a)) stawiasz znak z wybranego miejsca ze stinga.
Specjalnej funkcji to nie ma, ale nic nie stoi na przeszkodzie napisać kilka linijek które to zrobią. Np. w pętli for next z użyciem mid()
chcę zrobić tablicę z nazwami dni tygodnia do kalendarza. deklaruję dim tablica(7) as string * 12 Po co Ci aż 7 12-bajtowych stringów :?: Wystarczy: Dim Dzientygodnia As String *12 , Nrdnia As Byte ... Dzientygodnia=Lookupstr(Nrdnia,Tabli... '0=Pon, 1=Wtor, ... Lcd Dzientygodnia; ... Tablica: Data "poniedziałek", "wtorek"...
Użyj funkcji VAL. var = VAL( s). s to string, a var to liczba.
Funkcja MID. :) [url=http://avrhelp.mcselec.com/index.ht...
Widzę, że moderatorzy posprzątali zwyczajowy hejt na Bascoma :D Niestety przy okazji usunięto też ważną informację. Rzeczywiście potrzebujesz instrukcji VAL https://wiki.mcselec.com/bavr/VAL do zamiany reprezentacji tekstowej liczby na wartość liczbową. W drugą stronę, jeśli chcesz wysłać zmienną WORD do komputera możesz zrobić to wprost. Bascom sam...
Funkcja "serialPort1_DataReceived " pobierze tylko 1 bajt. Zostanie on skonwerowany do postaci liczbowej - czyli do zakresu 0..255 i coś takiego wyświetlisz. Jeśli odebraną daną jest kawałek tekstu, to będzie to wartość liczbowa kodu ASCII odebranego znaku. Co w zasadzie chcesz odbierać? Tekst, czy liczby? Pojedyncze znaki ASCII można odebrać przez...
Zacznij zatem od porzucenia Bascoma i przesiadki na C, skoro zależy Ci na wydajności. Przy okazji możesz wziąć procesor tańszy od AVR i z 10 razy szybszy, np. jakiegoś Cortexa. Zacznij zatem od sensownego udzielenia odpowiedzi na jego pytanie. Może jeszcze ARM i frytki do tego? Nie wiesz, nie pisz. Dawid88: Zagadnienie bardzo interesujące, bo sam wiem...
Czy jeśli to samo chcę mieć dla zmiennej slowo3 muszę zakładać nową tablicę (pamięciożerne) czy też mogę załadować slowo3 do istniejącej już tablicy Slowo2_array(10)? Nie do końca chyba rozumiesz jak działa OVERLAY , tak stworzona zmienna nie jest "pamięciożerna". S lowo2 (string *10) i Slowo2_array(10) As Byte At Slowo2 Overlay zaczynają się od tego...
Z procka, z tego co wiem, to nie. Mozesz kupic sobie EEPROM z identyfikatorem unikalnym np. [url=http://ww1.microchip.com/downloads/... Mozesz sobie tez podlaczyc scalak o podobnej funkcjonalnosci na 1wire (sa takie). Dla pocieszenia powiem, że większość nowych ARMów ma unikalne serial numbery w krzemie ;]
Zadeklaruj stringa o znanej długości tj. Dim x as String * 10 a nie samo string * .
Chyba nie czytałeś ostatnio tego rozdziału z Language Fundamentals. W ten sposób sam sobie robisz kuku... Pomijając to myślę, że jeśli te Twoje zmiennoprzecinkowe masz tylko do dwóch miejsc po przecinku, to dlaczego, po prostu, nie pomnożysz tego x100 a na końcu wyniku nie podzielisz /100? Zapewne wszystko się wykona dużo szybciej niż na tych zmiennoprzecinkowych....
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ę...
Config DP działa od wersji 2.0.1.0, jeżeli masz tą lub nowszą wersje Bascom'a w Fusing zamień "#.##" na "#,##".
Witam, Napisałem program w BASCOM AVR, z komputera otrzymuje dane np: "14" te dane są i muszą być odbierane do zmiennej typu string. Mam problem z: chciałem tą zmienną ze zmiennej typu string przypisać do zmiennej typu BYTE. Nie wiem jak by to zrobić. Probowalem już kilu sposobów ale zawsze otrzymywałem jakieś bzdury w zmiennej typu byte. Czy istnieje...
http://www.elektroda.pl/rtvforum/topic22...
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...
Nie jestem pewny o co tak naprawdę koledze chodzi. Czy to jakoś pomoże? Dim tekst as eram string*30 Najprostszy sposób na zapis stringa w pamieci eeprom. pozdrawiam Tomek
Jaki będziesz miał wyświetlacz? Alfanumeryczny że string będzie ok? Czy może LED lub LCD segmentowy? Żeby zmieniać wartość enkoderem trzeba go obsłużyć... Enkoder ma przycisk? Zatem weź zmienną Word w której będziesz zmieniał nastawy np. [syntax=vbnet]dim wartosc as word dim index_wartosc as byte if index_wartosc =1 then wartosc=wartosc + 1 end if if...
proszę bardzo. 3 minuty razem z sprawdzeniem. $regfile = "m162def.dat" $crystal = 7372800 Dim A$ As String * 20 Dim Temp$ As String * 4 Dim Zmianna_1 As Byte Dim Zmianna_2 as byte Dim Zmianna_3 As Byte Dim Zmianna_4 As Byte A$ = "123.234.213.132" Temp$ = Left(a$ , 3 ) Zmianna_1 = Val(temp$) Temp$ = Mid(a$ , 5...
Sprawdź w polskim helpie "config lcdpin" Dodano po 3 A jaką wartość ma lcd1 i lcd2?
Użyj funkcji MID(). LEFT( )się nie nadaje do wyciągania fragmentu ze stringu, raczej do jego obcinania.
Nie wiem dokładnie czy bascom dokonuje konwersji typu string na byte w tym może być problem. Spróbuj zmienna nm zadeklarować jako 'byte' może pomoże.
Można to tak zrobić: [syntax=basic4gl]Dim Command As String * 4 , Bajty_command(5) As Byte At Command Overlay Printbin Bajty_command(1) ; Bajty_command(2) ; Bajty_command(3) ; Bajty_command(4) ; Bajty_command(5)[/syntax]
Można to tak zrobić: [syntax=basic4gl]Dim Zdanie As String * 30 Dim Zdanie_array(30) As Byte At Zdanie Overlay Zdanie = "Dzien dobry/Elektrod/" Print Chr(zdanie_array(12))[/syntax]
A od czego jest HELP !? "Przeznaczenie: Zwraca określoną liczbę znaków z tekstu począwszy od lewej strony. Składnia: zmienna = LEFT( tekst , il_znaków ) gdzie zmiennazmienna tekstowa, do której przepisane będą skopiowane znaki, teksttekst z którego skopiowane będą znaki, il_znakówilość kopiowanych znaków. Opis: Zobacz także: RIGHT , MID Przykład: Dim...
Sposobów na to jest ... . Dim Zmienna As String * 5 Zmienna = "piotr" Mid(zmienna , 2 , 1)="o" Piotrek
Nie wiem jak rozwiazać rozkładanie napisu na poszczególne litery. Miało by to działać jak przedstawiam poniżej. Dim Cyfra As String * 4 Dim P1 As String * 1 Dim P2 As String * 1 Dim P3 As String * 1 Dim P4 As String * 1 Cyfra = "1234" P1 = Cyfra(1) P2 = Cyfra(2) P3 = Cyfra(3) P4 = Cyfra(4) Dziekuje.
i właśnie o to chodziło by działało bez przerwania a jednocześnie w "przerwaniu" w tle No to muszę Cię zmartwić, bo buforowanie działa na przerwaniach i te masz włączone, choć sam tego na początku nie zauważyłem - SEI :D PS Część kodu, jakaś dziwnie znajoma :lol: Owszem bo po raz pierwszy korzystam z BASCOM AVR więc się podpieram przykładami kolegów...
robiłem tak i nic. Może zmienne string tzrba jakoś inaczej zerować?
Wielkie dzięki e marcus, naprawdę mi pomogłeś. Mój program jest już niemalże na ukończeniu jednakże mam jeszcze jeden kłopot... Trudno tu "zgadnąc" przyczynę nie widząc całego programu. Wielokrotne zaliczenie akcji przycisku może byc w pierwszym rzędzie spowodowane fenomenem "Switch bounce". Zapobieganie temu zjawisku zwane jest 'DEBOUNCE'. Patrz odpowiednia...
A może odbieraj większy string i sprawdzaj pierwszy znak.
Ponieważ Fusing zwraca zmienną tekstową więc deklaracja zmiennych stanowiących wynik tej instrukcji powinna być następująca: Dim V As String * 6 Dim A As String * 6 Dim P As String * 6 Dim R As String * 6 Dim Vod As String * 6 Zmienne są wystarczająco długie dla zakresu 99.9. Jeśli wartość przekracza 100 powinno być String * 7
Proszę zapoznać sie z funkcją MID() z pliku pomocy Bascoma. Jeżeli dobrze zrozumiałem problem chodzi ci o to, przykład podany w pomocy powinien rozjaśnić sprawę
Nie używałem nigdy BASCOMa, ale chyba powinno się dać w nim zrobić coś takiego: wynik = round(liczba*100)/100
Long = GetAdc(0) Single = Long * 0.01955 String = Fusing(Single, "##.##") LCD String; "V"
Witam szukam po internecie i nie mogę znaleźć jak z ciągłego tekstu typu string wydzielić poszczególne wyrazy oddzielone przecinkami i wpisać je od danego elementu tablicy np: , poniedziałek,wtorek,środa,czwartek, tablica1 poniedziałek tablica2 wtorek itd, Z góry dziękuję za pomoc.
Nie dokładnie opisałem. U mnie A01 jest uzyskiwane ze zmiennej Sring - i tu jest problem jak to wyświetlić. Może tak - w wyniku operacji na zmiennej string otrzymuję wynik A01(też string). I teraz potrzebuję wyświetlić to co jest zapisane pod zienną A01 (czyli w przykładzie tekst1. c jest string = 5 , d jest string = 0, A50 ="Test1" B = C + D E = Val(b)...
Jak sie nie myle przez terminal leca znaki w zmiennych typu string. To powinno ci pomoc dalej
Witam, mam mały problem ze stringami w Bascomie. Może pokaże to na prostym przykładzie. dim tekst as string * 10 dim tekst1 as string * 2 dim zmienna as long zmienna = 12345 tekst1 = str(zmienna) tekst = format(tekst1, "0.0") I teraz wynik jest taki, że zmienna tekst1 = 123 (nie powinna 12, skoro jest string * 2 ? ), a zmienna...
Najprawdopodbniej w tej zmiennej coś jest jeszcze na końcu. Mogą być znaki niewidoczne, np CR lub /i LF. Spróbuj wyświetlić długość tego stringa (w Bascomie chyba funkcja Len) i wtedy bedziesz wiedział czy aby tam jest tylko liczba. Możesz spróbować też konwertować tego stringa po jednej cyfrze, a więc robisz pętlę w której wycinasz fragment stringa...
witam jak można w bascom wykonać sumę kontrolną CRC stringu oraz sprawdzić za pomocą CRC string ?
Witajcie! Gryze wlasnie swoj maly projekt (sterowanie swiatlami z pwm za pomoca pc) i natrafilem na problem. Up dostaje na com taki string: HELLO,255,11,23,45,0,END Na tej podstawie ustawia 5 zmiennych kolejnymi wartosciami (pomijajac pierwsza i ostatnia). I tutaj utkwilem - jak rozdzilic to co dostanie na pojedyncze wartosci (np. w tablicy)?
;-) http://avrhelp.mcselec.com/index.html?sp...
Przekonwertować na dane liczbowe. Dodać i ponownie przekonwertować na dane znakowe. Funkcje: STR(), VAL().
Witam! Prosił bym o podpowiedź: Jeżeli jest zmienna1 string zawierająca znaki port1:123 i teraz z tej zmiennej chcę wyciągnąć ciąg port1 to użyje do tego zmienna2 = Mid(zmienna , 1 , 5) i ciąg 123 to robie: zmienna3 = Mid(zmienna , 7 ,3) i teraz zmienna3 = pwm1a - czyli pwm1a będzie z wartością 123 ?? Ale jeżeli będzie w zmiennej1 port1:052 to czy jeżeli...
Witam wszystkich. Proszę o drobną pomoc. Muszę wyodrębnić dane z łańcucha string odebranego po UART. Łańcuch ten jest bardzo długi i za każdym razem dane z łańcucha są umieszczone w losowy sposób, długość łańcucha także za każdym razem jest przypadkowa. Jedyną stałą zależnością jest fakt, że dane zawsze rozdzielone są przecinkiem "," i chciałbym je...
w tym problem ze wlasnie gdy napisze valux=valu to wywala mi blad i co mam z tym zrobic?? mam bascoma 1.11.7.4
Funkcja ta zwraca stringa, a ty potrzebujesz liczby
nie o to mi chodziło, co mam zrobić z tym stringiem żeby eeprom mógł go łyknąć ?
Witam. Krótko: mam zmienną string*3. Przykładowa wartość tej zmiennej to 2.7 Muszę zamienić ją na Byte o wartości 27 oraz informację, czy zmienna jest mniejsza od 10. Oczywiście nie da się pomnożyć zmiennej string (razy 10)... Co z tym zrobić? Pozdrawiam.
Witam. Czy po wykonaniu instrukcji: print zmienna_typu_string$ nie znając zawartości zmiennej (nie wiedząc co zostało wysłane na UART za pomocą instrukcji print) istnieje możliwość powtórzenia wysyłki ostatnio wysłanego stringu? Czy może jednak, to co zostało wysłane jest usuwane z pamięci / buforów zaraz po wysłaniu? Zastosowanie: master nie usłyszał...
Witam Z tego co pamietam to by cokolwiek zapisac i odczytac z epromu nalezy podac tez adres komorki pamieci . W BASCOMIE to wyglada chyba tak : Writeeprom Tekst ,adres a potem odczytujemy Readeeprom Tekst ,adres AT90S2313 ma 128 bajtow pamieci EEPROM, wiec jest 128 komorek jedno-bajtowych komorek pamieci. Stad adres : 0-127 Nie wiem jak wyglada sprawa...
witam.. Jest możliwość stworzenia konstrukcji goto z zmiennej..? tzn mam na myśli że np. abc-zmienna typu string abc = program1 goto abc
Co to znaczy ilość jest zmienna? W Bascomie rozmiar tablicy jest stały. Rozumiem, że pozostałe po prostu są pustymi stringami. Może polecenie SORT się nada, Ale do zmiennych STRING go nie próbowałem używać więc....
Otóż pisząc program obsługi tablicy reklamowej (na Atmega32 )zupełnie przypadkiem stwierdziłem, że na zmienną typu string np 10 znakową można zapisać np 20 znaków instrukcją Restore i Read. Co więcej to działa w normalnym programie tak jakby ta zmienna miała faktycznie 20 znaków ! Oto przykład sprawdzony na symulatorze: Dim Tekst As String * 10 Dim...
1. Bascom jest bardzo dobrym językiem, znacznie lepszym niż Arduino. 2. "a:10.0" "a:10.0 " ":10" "10 " Ten temat jest zamknięty, dostałeś 2 przykłady. Pierwszy napisałem do składni ramki jaką podałeś w pierwszym poście, później zmieniłeś konstrukcję rami to napisałem kolejny przykład, można jak dobrze naliczyłem jeszcze 9 innych metod zastosować by...
A czy mogę prosić o jakikolwiek przykład odbioru jednego bajtu w przerwaniu przy wysyłaniu zmiennej string?
Jak można wpisać wartość do zmiennej typu string *7 za mocą numerycznych klawiszy ?
Nie znam bascoma. Ale to dziwne że nie ma przeciwważnych funkcji.
Przepraszam. Bascom avr
Stworzylem zmienna M1 typu string i zapisalem do niej 1 znak i wyswietlilem na lcd w dalszej czesci programu trzeba wyczyscic ten znak i wyswietlic puste pole,probowalem zdefiniowac za pomoca chr puste pole,probowalem czegos takiego : M1=" " tez nic,w asemblerze nie bylo by problemu, a tu??? Jak to zrobic??? Nawet jak chce zmienic znak w zmiennej zeby...
Witam Po odebraniu stringu (nie przekracza 20 znaków / bajtów) za pomocą komendy input potrzebuję go przeanalizować i wydzielić trzy człony. Pierwszy (od początku do napotkania znaku spacji), drugi - do napotkania znaku "/" oraz trzeci - do napotkania kolejnego znaku "/" lub końca stringu. Pierwsza myśl to pętle: [syntax=basic4gl] do incr licznik incr...
liczbę zamień na string: S1 = Str(i), a stringi dodaj.. S=S1+S2+S3
Mam problem z wyświetleniem zmiennej typu string. Gdy wykasuję poniższe linijki kodu program działa bez zarzutu jednak gdy są, na LCD pojawiają się wszystkie pola czarne. . . . Dim Ztxt As Xram String * 9 Dim Ptxt As Xram String * 3 . . Ptxt = "sin" Ztxt = "10-100" . Lcd Ptxt ; " " ; Ztxt , Jak pozbyć się takiego efektu i czym to jest spowodowane?
Czy ktoś podpowie - jak w Bascomie zrobić 8 znakowy string z zmienną DWORD w formacie hexadecymalnym ? Nie można tego zrobić zamieniając zmienną na string za pomocą HEX, ponieważ ta funkcja działa tylko do typu WORD. Jakieś zaćmienie umysłowe mam :)
Chcesz 3 zmienne String zapisać do jednej zmiennej String?
Error 10:Wrong type(bit,byte,integer,word,or string)
Jak zadziała polecenie Len() ? obliczy długość dołączonych zmiennych T1 i T2 ? Tak, choć samodzielne sprawdzenie tego choćby w symulatorze zajęło by Ci 60 sekund ;-) Oczywiście mowa tutaj o zmiennej Command, która, zakładam, jest stringiem.
No właśnie tak jak napisałeś. Parameter(8) = "Off" to jest właśnie zapis. Oczywiście pod warunkiem że jest to tablica Stringów a nie jeden String.
Jeśli dobrze rozumiem pytanie to: [syntax=basic4gl]Dim Zmienna1 as String*10, Zmienna2 as String*10, Wynik as string*10 Zmienna1 = "s1234" Zmienna2 = "s67" Wynik = Mid(Zmienna1,2) '1234 Wynik = Mid(Zmienna2,2) '67[/syntax]
Jest to sztandarowa biblioteka z bascoma. masz ją na 100% ;) tak. byte,byte,string
jeżeli już uzyjesz procka a dwoma uart'ami to budujesz procedure która odbiera od twojego urządzenia string'i jeżeli wykryjesz odbior pierwszego string'u (czyli nagłówka) np if odebrany="wzór nagłówka jeden" then ustaw flagę że nastepny string to będą pierwsze dane wtedy : if flaga1=1 then pierwsze_dane=odebrana:reset flaga1 z drugim nagłówkiem i drugimi...
prawdopodobnie funkcja pobiera wskaznik albo do tablicy char (w innych jezykach stosowany "string", patrz bascom) albo do stalej const string, wiec sprobuj tak: WriteText(*"Brak kota u Ali"); Powinno dzialac...
Witam Mam pewien program z obsługą MMC i dość dużą ilością różnych zmiennych, w Bascomie program kompiluje się prawidłowo nie pokazuje żadnych błędów ale na końcu raportu mam coś takiego : Source string could be too big to fit into target string [T(1)>___STRBUF] in line 483 Source string could be too big to fit into target string...
Zmień: dim Objetosc_lcd as string*10- a potem jakie x-sprawdź. Bascom jest wolny i gruby- jak wół. Można na nim w pewnym stopniu polegać Ale opanowanie rasowego konia jakim jest C- jest trudniejsze- ma sam na wiele spraw własne zdanie. Brakuje oscyloskopu. Chyba jest-widać sonde. P.S. W głównej pętli wywołujesz menu w którym "siedzisz" przez waitms...
Witam serdecznie! Mam problem z wysyłaniem po RS danych. Korzystam z funkcji Print , używałem jej z i bez średnika, używałem też konwertowania na hexy cuda, wianki..... :) Program odbierający stringi (c#) czyta mi z tego portu jakieś badziewie (prawidłowy format to 20.58) a dostaję: 20.58 .58 0.58 8 20 20.58 celowo dałem tam spację bo jest, w bascomie...
Raczej nie może działać prawidłowo, zmienna Z jest typu String. Przed dzieleniem należy przekonwertować String do zmiennej liczbowej: [syntax=basic4gl]Dim Z1 As Byte ' ' Z1 = Val(z) Y = Z1 / 9[/syntax]
Bo fusing robi stringa proszę szanownego kolegi:) To nie tędy droga...PS może nie zaokrąglanie a histereza?:)
Witam Mam dwie zmienne typu string i chcę zrobić tak : Dim Energia_s As String * 2 Dim Energia_na_lcd As String * 2 Energia_na_lcd = Enegria_s Po czym kompilator wywala mi błąd 242 source varibles does not match the target varible, dziwne ? Jak więc mam to zrobić ?
CRC wcale nie musi byc czasochlonne! Jezeli tak zalezy koledze na szybkosci dzialania to moze obliczyc CRC za pomoca tablicy i kilku odwolan do niej. Jest to rozwiazanie o wiele szybsze niz wyliczanie CRC "matematycznie" a jedyna wada jest taka, ze potrzeba zarezerwowac 512 bajtow na tablice w pamieci programu (CRC16). www.tkdami.net/~roman72/pdf/dtr/dtr_sum_...
Pokaż co tam wykoncypowałeś :)
Może tak? Dim A As String * 1 Dim B As String * 1 A = "z" B = Chr(a) Cls Locate 1 , 1 Lcd B
A jeśli chodzi o "Błędne operacje matematyczne" , to: Czy rozumiesz dlaczego zmienną Pokaz , zadeklarowałeś jako Integer , a nie np. Byte,String czy Double :?: Sprawdź jakiego typu zmienne oferuje Bascom Basic , postaraj się zrozumieć czym one się miedzy sobą różnią , a wtedy 1-szy problem masz z głowy ;) Piotrek
Znaczy ze chcesz wklepac w cyfy na klawiaturze np. 125 i zeby program wyslal liczbe 125? Jesli tak to musisz zamienic stringa na uinta8
Witam. Trochę to mętne , ale spróbuję ci jakoś pomóc. Każda zmienna jest przechowywana w pamięci w postaci dziesiętnej. Możesz ją zadeklarować jako kod szesnastkowy np. : zmienna= &HFF00 Ale i tak w pamięci zostanie zapisana jako konkretna wartość. Nie wiem do czego potrzebujesz, ale domyślam się że chcesz to wyświetlić jako wartość szesnastkową. Wartości...
ja bym wpisywal np. do stringa i pozniej go zamienial. Albo inna metoda 1klawisz x100 + 2klawisz x10 + 3klawisz= zmienna
Niestety , to nie błąd Bascoma tylko Twój.Pewnie z chytrości ;) , zadeklarowałeś "za krótkie" zmienne STRING. Dim Napiecie As String * 3 'zadeklarowano 3 znaki Dim Prad As String * 3 'j/w ... Napiecie = Fusing(v , "#.##") 'próba "upchnięcia" 4 znaków Prad = Fusing(i , "#.##") 'j/w ... Piotrek
A widzisz, pojawia się wreszcie jakiś konkret. Skoro pojawia się komenda "300" to rozumiem, że pojawi się też "120", "1", "55" itp. Więc zamieniasz otrzymany string na word i masz już wskaźnik tablicy. W odpowiedzi wysyłasz wartość zmiennej o numerze "300".
W takim razie potrzebujesz konwersję string na int. http://4programmers.net/C/Konwersje_int_...
jak zadeklarować te zmienne? A np. tak dim Bufor as string * 16 ' 16 - maksymalna długość odebranych danych dim Bufor_znak as byte dim Bufor_flaga as byte
Wielkie dzieki
Tak prymitywnie to wyślij to sobie ze spacją i potem podziel otrzymany string szukajac spacji [syntax=vbnet] Print V1 ; " " ; A1 Dim MyArray(2) As String * 5 , M As Byte M = Split(CalyOdebranyString , MyArray(1) , " ") 'podziel szukając spacji Locate 1 , 1 : Lcd MyArray(1) Locate 2 , 1 : Lcd MyArray(2)[/syntax] Radzę też napisać u góry w kodzie : [syntax=vbnet]Config...
A dodatkowo każdy string kończy się znakiem \0
Witam, W programie zapisuje kilka zmiennych String w eepromie potrzebuje uzyskać z nich taką tablicę do po prawnej działania pętli for [syntax=basic4gl] Memory(1)="zmienna a zmienna b zmienna c" Memory(2)="zmienna a zmienna b zmienna c" Memory(3)="zmienna a zmienna b zmienna c" Memory(4)="zmienna a zmienna b zmienna c" Memory(5)="zmienna a zmienna b...
To jest dosyć niewygodny sposób na przesyłanie zmiennych w postaci znaków ASCII i sam się nieco ograniczasz, bo pierwsza zmienna musi mieć zawsze dwa znaki, druga trzy itp... Jeśli chcesz troszkę bardziej uniwersalnie podejść do tematu to przesyłaj wartości zmiennych w ten sposób: PRINT XX,YYY,Z,KKKK czyli każda wartość oddzielona np przecinkiem. Później...
pewnie piszesz w bascom ,wiec masz kod odbierania danych (całych stringów ) w przerwaniu :) : Config Serialin = Buffered , Size = 20 do If Ischarwaiting() = 1 Then '1 - odebrano znak,0 - pusty bufor Call Read_rs232 End If loop Sub Read_rs232 Dim Bufor As String * 24 Input Bufor Noecho end sub
funkcja Bin(a) zwraca ciąg znaków (String*8 w tym przypadku), a ty to przypisujesz do zmiennej Byte, więc wyląduje w niej kod ASCII pierwszego znaku, czyli 0 -> ASCII -> 48 a więc albo po prostu Print a albo Dim Liczba As String * 8 Edit: (at)UP: kolega tadzik85 mnie ubiegł
Biblioteka Galahata działa fajnie, trzeba tylko drobne zmiany zrobić bo stary Bascom ma inny syntax przy deklaracji suba. [syntax=vbnet]call ustaw_leda(3, czerwononiebieski) sub ustaw_leda(numer_leda as byte, bylabel kolor as string) Kanal=numer_leda * 3 b = lookup(2, kolor) Kanal=b Decr KANAL g = lookup(1, kolor) Kanal=g Decr Kanal r = lookup(0, kolor)...
Chodzi o to że np dostaję liczbę przez uart w formie stringu w kodzie czwórkowym. jak ją przekształcić w prosty sposób na string z wartrościami dzięsiętnymi
string bascom tablica string bascom bascom operacje string
napięcie świetlówki laptopa toyota radio zasilać seicento klema
falownik powmr edifier r1280db
Demontaż płyty czołowej meblowej w zmywarce Whirlpool 7340 Jak poprawnie włożyć kartę do dekodera ComboBox CEHD