Najprościej skorzystać z gotowych funkcji. W Bascomie 51 jest funkcja MAX. Działa ona na zmiennych typu Byte. W Bascomie AVR funkcja ta działa na zmiennych Word. Więcej info w helpie do Bascom-a. Jeśli musi to być koniecznie Integer, można zastosować jakąś konwersję typu Word na Integer lub napisanie własnej funkcji, co nie powinno być trudne.
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()
W Bascomie tylko tablice jednowymiarowe, ale możesz przeszukiwać je z przesunięciem. Pamiętaj o dostępnej pamięci, bo tablica 10000 pozycji pewnie nie wejdzie w up... Pocztaj jeszcze o strukturze DATA.
Nadeszła chyba pora zapoznać się , z Bascom-owym helpem :D Dim Adres As Word Dim Pozycja As Byte Do For Pozycja = 0 To 5 Adres = Lookup(pozycja , Tablica) Next Loop Tablica: Data 1% , 10% , 100% , 1000% , 10000% , 65535% Teraz będzie dobrze :?: Piotrek
W zasadzie nie znam Bascom-a, ale podejrzanie wygląda mi to, że argument Segment tej funkcji nie jest zadeklarowany jako tablica, a jednak odwołujesz się do niego jako tablicy.
Może jednak zjarzyj na tą stronkę, najmniejszy plik pomocy ma 300 parę kb, jesli mnie pamięć nie myli to dyskietka ma 1,44 Mb, tylko pdf ma prawie 2 mega. Reszta to pliki html zatem łatwo będzie wyszukać i ctrl+c , no i od czego jest winrar?
Witam. if a() = b() then jakieś tam instrukcje end if Taki warunek porówna tylko pierwsze elementy tablicy.
Zatem masz 32 komórki po 32 bajty, dajmy na to tablica(a, b) . Pomnożyć to daje 1024. Teraz definiujesz tablicę tablica(1024) i jak chcesz wyliczyć położenie danej komórki - wykonujesz obliczenia: 32*(b-1) + a i masz jakby dwuwymiarową tablicę.
Wartość w poleceniu lookup to jest właśnie adres wiec nie kumam w czym problem. przeskaluj adc z 0-1023 na 0-90 i potem wywołuj zmienna=lookup(adc,tablica)
Odwrotnie: 0101-0000. A przelicz na piechotę albo w kalkulatorze obsługującym system binarny (czyli na przykład w kalkulatorze z Windowsa). Dodano po 2 A w sumie to nie musisz przeliczać. Możesz napisać: LCD Chr(&B01010000)
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"...
Powinno być: [syntax=basic4gl]Printbin Send(1) ; 3 ' wyślij 3 elementy tablicy Send(), zaczynając od pierwszego elementu tablicy.[/syntax]
... BASCOM nie obsluguje tablic bitow... Bascom-AVR obsługuje tablice bitów , jednak z pewnymi ograniczeniami a)Tablica nie większa niż 256 bitów. b)index/numer bitu , MUSI być zmienną , choć właściwie niekoniecznie MUSI :D Piotrek
Pytanie: czy da się te aliasy zrobić w formie tablicy? Tak, żeby odwołanie do konkretnego wyjścia mogło mieć postać "Wyjscie(x)"? Co stoi na przeszkodzie (skoro piny nie są po kolei) aby nie tworzyć sobie sztucznych problemów i zamiast używać tablicy - użyć funkcji ?
No to jesteśmy w kropce . W ksiązce z której kozystasz jest dokładnie opisane jak tworzyć takie tabele. Poszukaj tez programu który ułatwi Tobie napisanie tablic .Podobny program masz w Bascomie , LCD Designer
(at)zumek Dzięki za kod, ale nie do końca wiem jak on działa. Szkoda :( W1 to tablica wskaźników na W, przesunięta o dwa miejsca? Mylisz się :( W1 , to jakby wskaźnik na W powiększony o 1 element tablicy W , czyli 2 bajty . Natomiast tablica wskaźników , to ... nie z tej bajki ;) A dokładnie rzecz ujmując , to Bascom definiuje tablicę W1 , w obszarze...
mov DPTR, .Tablica_instrukcji mov A,{instrukcja} jmp (at)A+DPTR Pomijając fakt, że nie mam pewności czy ten kawałek kodu jest poprawny to mam problem ze zbudowaniem tablicy adresów. Pomysł jest dobry, ale wykonanie złe ;), albo zrobisz pomnożysz A przez 2 albo 3 i pod adresem tablica instrukcji zrobisz serie skoków (bliski ma 2 bajty, daleki...
to powinno pomóc - zwraca adres początku tablicy https://avrhelp.mcselec.com/index.html?l...
To jest tak oczywista informacja że nie ma tego w Helpie. Tak samo jak całego alfabetu czy tabliczki mnożenia ;p Skąd Lookup miał by wiedzieć jaką długość mają kolejne elementy? Owszem mógł by, ale taka tablica musiała by dodatkowo zawierać pola określające długość elementów czyli też była by dłuższa. Po drugie to trafia do pamięci programu a nie do...
By funkcja PRINT nie wysyłała samoczynnie znaków CR i LF , użyj średnika. Print "Ala"; Print "ma"; Print "kota" Piotrek
Tak jak napisałem. W funkcji pobierasz składowe koloru r, g i b, i wpisujesz do kanałów: "Kana(numer_leda+1)=r. Na pewno można to zrobić lepiej.
Witam, Na własne potrzeby chciałem zbudować monitor temperatury z 4 dallasami 18B20. Dane są odczytywane z czujników po RS485 i wysyłane do mastera. Kiedy odpytuję czujniki po kolei, muszę czekać standardowe 750ms na odpowiedź każdego z nich, co nie zadowala mnie. Zależy mi na tym, aby po wysłaniu komendy odpytującej, każdy z czujników bezzwłocznie...
tablica jest odpowiedni zadeklarowana, a bascom automatycznie inkrementuje wzkaźnik w tablicy, więc polecenie: Bd(1) = 1wread(9) powoduje, ze pierwszy odczytany bajt ląduje w Bd(1), kolejny w Bd(2), aż ostatni (dziewiąty) w Bd(9)
Tak, ale chodzi o: X( I ) = I Czyli nam chodzi o to I , a nie o to I. I ono właśnie idzie co 100. Jedno i drugie I (skoro to jest to samo I :D). A to pierwsze (pogrubione I ) nie powinno. Bo tablica ma 40 elementów indexowanych co 1. Więc poinny iść co 1. Czyli powinieneś mieć dwie zmienne. Jedną do indexowania co idzie co 1. A drugą do wpisywania do...
hiv_sick , powinieneć mieć 1 kondensator 100nF na parę VCC-GND każdego układu cyfrowego - czyli 3 szt. na 3 rejestry + 1 sztukę na procesor. U Ciebie te kondensatory są między 9V a GND, a powinny być między 5V a GND. Jesteś pewien, że jako IC10 nie użyłeś stabilizatora dla napięć ujemnych?? Bo tak wygląda z ułożenia wyprowadzeń. Powinieneś użyć LM7809......
Nie znam Bascoma, więc zakładam, że tablic dwuwymiarowych tam się nie da zrobić. Aby takowe zasymulować, stwórz jedną, rozmiaru 1024*1024, a potem by znaleźć pozycję jakiejś danej na podst. współrzędnych: x*1024 + y.
Acha. To zrób w assemblerze. Albo na tablicach. Nie ma takiej operacji w BASCOMie ani w assemblerze AVR, '51 i innych. Taka operacja to tak zwany "motylek" ale naprawdę nie słyszałem o prcesorze który by miał taki rozkaz. Może jakieś procesory DSP. Albo assembler albo tablicowanie. Wiesz o co mi chodzi z tymi tablicami?
Witam, Nie chesz chyba powiedzieć, że nie potrafisz zrobic tablicy w bascomie do sterowania siedmiosegmentowym wyświetlaczem ? Jak już chcesz pisać w bascomie to zorganizuj sobie np. artykuły z Bascom College.
' Na początku kodu Index_tab=0 ...... ...... If Licznik = 1200 Then IF Index_tab=3 Then ' przesuniecie w tył jeżeli pozyskano co najmniej 3 pomiary Pomiar(1)=Pomiar(2) Pomiar(2)=Pomiar(3) Else ' Fragment kodu wykonywany dla Index_tab=0,1 i 2 Incr Index_tab IF Index_tab>3 Then Index_tab=3 End If Pomiar(index_tab)...
Typ BYTE - zakres od 0 ... 255 ale Bascom pozwala zadeklarować dim tablica(256) as byte i zaadresować tablica(256) = 12 Prawdopodobnie element 256 ma adres 0 ale to tylko moje przypuszczenie Bascom gdy pozna się i pogodzi z jego ułomnościami ( czyli ten typ tak ma ) Pozwala dość szybko pisać proste i nie tylko takie programy. Tak, tak, wiem C jest lepsze...
Miło by było jak byś napisał "co zadziałało". Na Elektrodzie zbieramy doswiadczenia.
Z tego powodu ze raz uzywaz "Tablica" a drugi raz "Tabela" Zmien na to samo i bedze oki
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...
Zmienione liczby były tylko do moich testów ;)
To: 1. Rozbij sekwencję na kody ASCII i umieść je w tablicy 2. Wyślij tablicę za pomocą Printbin Tablica(1) ; ilość_elementów_tablicy
Nie chce mi się patrzeć w kod ale na 99% nie wyłaczasz poprzedniej liczby przed wyświetleniem nowej co daje poświatę.
tak ale zrobiłem to ręcznie ... nie wiem jak to wrzucić do tablicy
Może ktoś wie jak założyć tablicę 66 elementową ( każdy element to bit) w obszarze adresowanym bitowo, tak by można było odwoływać się do poszczególnych bitów poprzez współżędne w tablicy np. bit22=Tablica(22). Bascom co prawda przyjmuje deklarację Tablica(66) as bit, ale traktuje to jak zmienną 1 bitową tzn. zapis Tablica(22) = 1 ustawia na 1 wszystkie...
Taka tablica w bascomie dajmy na to 10 elementowa zajmuje 10 bajtów? Tj 1 bajt na 1 element czy może jest to jakoś zoptymalizowane pod kątem ilości przechowywanych danych?
Tablice wielowymiarowe to albo albo tablice tablic, albo specyficznie numerowany wektor... tablic tablic w BASCOMie nie zrobisz, ale wektor jak najbardziej. zamiast: int tablica[n][n]; tablica[x][y] = zmienna; możesz pisać: int[n*n] tablica; tablica[x*n+y] = zmienna; To jest oczywiście zapis w składni C++, w BASCOMie tablicę deklarujesz tak: Dim tablica...
Tablicy nie, bo to różne typy. słowo2_array jest nałożone na słowo2 (string) więc musisz robić podstawienie słowo2 = słowo3 albo kopiować ze słowo3 poszczególne znaki do słowo2_array
Witam. Napisałem sobie poniższy kod w BASCOMIE. Ma on za zadanie przemieszać wartości w zmiennej tablicowej tablica. Np. mam zmienną Tablica: Data 1,2,3,4,5,6,7,8 i po kilkukrotnym naciśnięciu przycisków (napisałem kilkukrotnym bo kod jest tak napisany że jedno naciśnięcie powoduje zamianę tylko jednej pary liczb ,a więc żeby dobrze przemieszać wartości...
Sam sobie odpowiedziałeś na pytanie. Jest jeszcze jedna możliwość ale jest nieco niebezpieczna i wymaga aktualnej wersji BASCOMa: funkcja MEMCOPY.
Tak jak wprowadza się dane do tablicy...
witam jak w bascom avr porównać jedną tablice z 30 innym tablicami wszystkie tablice są po 8 bajtów
Możesz podać gdzie przeczytałeś że ta liczba po przecinku oznacza liczbę wysłanych bajtów? Help nic nie mówi na ten temat. Sprawdzałem w symulatorze że ta liczba nic nie zmienia. Jest taka informacja w helpie "When you use Printbin ar(1) , the whole array will be printed." A kto powiedział że ja wpisuje dane? Ja je wysyłam. Ale twoja tablica jest pusta....
Polecam przeczytać: http://avrhelp.mcselec.com/index.html?la... Jest też o tablicach.
Ludzie.... Nie sprzeczajcie się może ile co będzie zajmowało, tylko napiszcie jak to zrobić na tablicach.
Z tego swojego kodu usuwasz "Odczyt numerów ID czujników temperatury" A w to miejsce wpisujesz odczytane adresy do tablicy z adresem danego czujnika. np. tak będzie to wyglądało dla pierwszego czujnika: Dsid1(1)=&H28 Dsid1(2)=&H65 Dsid1(3)=&HC3 Dsid1(4)=&H89 Dsid1(5)=&H05 Dsid1(6)=&H00 Dsid1(7)=&H00 Dsid1(8)=&H25
Zrób sobie 6 element tablicy który będzie np znakiem ENTER (żeby rozpoznawać koniec tablicy) natomiast w Bascomie możesz wtedy użyć nawet polecenia INPUT, które po otrzymaniu znaku ENTER wpisze ci twoich 5 elementów tablicy do stringa (też jakby tablicy) - a ze stringa możesz to przełożyć do normalnej tablicy bascomowej - zrobić z tym co ci się żywnie...
[syntax=c]TWI_write(pgm_read_byte( &cyferki[cy4] ));[/syntax] Mam tablicę znaków wyświetlacza "cyferki" a zmienną "cy1" - "cy4" wskazuje odpowiedni znak z tablicy. W buforze z RFM12 mam stringi a potrzebuje int aby wyświetlić znaki z tablicy.
Zapisać -> Nie wiem w jakim stanie go masz, ale pewnie jako 8 bajtów:) Wytnij z tego bajty rodziny etc, zostaw sam SN właściwy, i jak pisał chyba JmL masz "tablice" w eepromie, no to siup zapisujesz pod ta i ta komórkę, co potrzeba. - tyle apropo zapisu Odczyt -> odczytujesz co któryś bajt(same SNy) do jakiejś innej tablicy w ramie i szukasz w niej...
Prawdopodobnie tabele będę miał z exela max 1024x1024B min256x256B. Nie wyobrażam sobie w jaki sposób przepiszę to do Basoma. Macie jakieś pomysły? Jak to zautomatyzować (ctrl+c ctrl+v) ? Może prościej zapisać to w pamięci zewnętrznej i jakoś odczytywać w Bascomie.
Poczytaj w pomocy o instrukcjach: DATA , RESTORE, READ. Kiedyś robiąc skomplikowane menu używałem tego do przechowywania stałych tekstów/opisów. Wszystkie były tej samej długości. Aby nie używać SELECT CASE zrobiłem wstawkę asemblerową. O ile dobrze pamiętam rejestry R8 i R9 są używane jako wskaźnik dla funkcji READ. Możesz też wszystkie swoje dane...
Dołącz do ramki np znak nowej linii '\n' i odbieraj znaki aż do jego napotkania zapisując ramkę do tablicy potem zostaje tylko ją zinterpretować określając wielkość tablicy.
Atmega2560 posiada 256kB pamięci. Załóżmy, że program zajmie 25k, zostaje jeszcze 225kB. Zatem, Twoich "plików" wejdzie 225 / 0,72 = 312 plików po 720 bajtów. Dostęp do danych przez funkcję lookup https://avrhelp.mcselec.com/index.html?l...
No dobrze mniej wiencej rozumiem jak to trzeba zrobić ale nie bardzo umiem sobie poradzić z tym kawałkiem : zsh = znaksh[kol_z AND 3] ; indeksem jest pozycja x znaku modulo 4 Jak zrobić modulo 4 w bascomie ??
Czy deklarując w bascomie globalna zmienna tablicowa byte o wielkośći 224 Dim Tablica(224) as byte Muszę jakość ją uwzględnić przy parametrach $hwstack = 250 $swstack = 250 $framesize = 25 Procesor to atmega64
Pytanie czy nie lepiej wypruć oryginalny sterownik i podłączyć własny ? Należało by rozrysować schemat układów sterujących liniami i kolumnami tablicy(umiejętność programowania uC chociażby w bascomie wymagana)
Nie znam BASCOMa, ale zapewne jest. Najprosciej brac z tablicy dwie sasiednie wartosci i interpolowac. Problem jest z indeksem - wiec kolejna tablica w ktorej masz strukture typu zakres[min,max], wartosc indeksu do wlasciwej tablicy.
Zamiast używać wielu zmiennych w stylu zmienna_byte, zmienna_byte2, zmienna_byte3 załóż tablicę np. zmienna_byte(300) i wówczas na podstawie zinterpretowanego znaku wysyłasz zawartość odpowiedniego pola tablicy.
Coś takiego zrobiłem [syntax=basic4gl] Index = Idx + 1 Freq = Lngfreq_memory(index) Fstep = Lngstep_memory(index) 'Menu(idx) = Str(freq) + " " + Str(fstep) For Index = 1 To 10 Menu(idx) = Str(freq) + " " + Str(fstep) Next Index [/syntax] ale nie działa to dobrze , po prostu pętla nie przechodzi po tablicy
Za punkty - nie, przynajmniej nie ja. Ale cos pomóc mogę. Zrealizowałem już parę projektów uC + vb6 i jakoś one działają. Może zacznijmy od samego uC. Jeżeli był by to asm (bascom + zaawansowany bascomowiec) to zrobiłby to na dwuch tablicach które wyrażały by bufor odbioru i nadawania np rs_tx_bufor(12) as byte i rs_rx_bufor(12) as byte Można by to...
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.
Sam czasami żałuje, ale od czegoś trzeba zaczynać. Zapewne w BASCOMIE należy dać tablice 8 elementową, no ale co dalej? :d
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....
Tak, rozwiązałem problem za pomocą tablicy.
To teraz 2 testy: 1. Przypisz dane z tablicy najpierw do zmiennej tymczasowej a potem wyślij zmienną tymczasową na portd 2. Poprzez Select Case Nr_Wysw na sztywno wyślij na port odpowiednią wartość dla konkretnego wyświetlacza (bez odczytu z tablicy)
Czyli jak rozumiem, wprost czytać z tablicy bufora ? Gdzie znajduje się ten bufor z którego odczytuje INPUT ? Jak wtedy w Bascomie z 4 bajtowej tablicy wyjąć pierwsze 2 bajty, które potem porównuje Select Case ?
No do tablicy "Znaki" się wstawia. W zwykłym ASCII.
Nie znam wogole bascoma ale jak mi podeslesz na pw szkielet tablicy w bascom to dorobie w programie zakladke z tablica dla bascoma.
Wydaje mi się że jak byś nie zrobił i będzie działało to tak jest dobrze ;] ilu programistów tyle podejść do tematu... Jeżeli już zadeklarujesz taką dużą tablicę to tak czy siak będzie ona zajmowała jakąś przestrzeń w pamięci więc czemu nie użyć jej i odczytać z eeprom wszystkiego na raz. Kiedyś robiłem podobny sterownik do CO ze sterowaniem temperaturą...
tak, stosuj tablice. Ulatwi ci to robote.... ALE pamietaj zeby NIE ZAPISYWAC DANYCH W KOMORCE EEPROMA O ADRESIE 0. Jesli zaczniesz deklarowac zmienne w bascomie to : ...jakies zmienne... .... .... .... 'EEPROM dim foo as eram byte 'to ci zalatwia komorke 0, bo tu bascom umiesci tą zmienną, i z niej niekorzystasz dim tablica1(3) as eram byte dim tablica2(3)...
Źle przekazujesz Id do funkcji, mały przykład do uruchomienia w symulatorze: [syntax=basic4gl]$regfile = "m88pdef.dat" $crystal = 20000000 $baud = 19200 $hwstack = 64 $swstack = 64 $framesize = 64 Dim Tablica(4) As Byte , Tekst As String * 12 Declare Function Test_funkcji(byref Osa As Byte) As String * 6 Tablica(1) = 10 Tablica(2) = 20 Tablica(3) =...
Kwarc wstaw w obu przypadkach nawet 16MHz. Baudrate jest zależna w zasadzie od jego dzielnika niż od kwarcu. Nie szalej też z dużą szybkością bo błędy mogą wyskoczyć, zacznij od 4800 bps. Połączenie po UART masz zrobić sprzętowo! Timer niech ci obsługuje multiplexing, główna pętla programu sprawdzanie czy w UART coś przyszło i przepisywanie do tablicy....
...Czy w bascomie można zadeklarować tablicę dwu wymiarową Nie :!: Dla czego przy odczycie danych muszę ponownie resetować magistralę i podawać numer seryjny układu... Bo tak są skonstruowane - patrz tabelki w PDF-ku :) Czy jest możliwe najpierw wysłanie do wszystkich czujników polecenia mierzenia temperatury ... Jasne ;) '... 1wreset If Err=0 Then...
nie oto mi chodziło kolego w 1 poście jest mój program chciałem żeby ktoś go poprawił. Na razie zrobiłem tak z pomocą jednego kolegi z forum ze włączyłem tablice lcd designer w bascomie i zrobiłem taki znak, ale to chyba nie oto chodzi bo profesor w szkole kazał mi go wstawić z tej tablicy która jest w dokumentacji w linku który podałem. Pozdrawiam
Odebrane znaki zapisz do tablicy a potem wybierz te które są ci potrzebne i prześlij je do PC.
Witam Chociaż nie programuję w bascomie, to według mnie będzie lepiej wyznaczyć równań prostych w pewnych przedziałach zamiast tworzyć dużą tablicę z danymi, w przypadku równań będziesz miał bardziej elestyczny program zmieninijac jedynie współczynniki prostych dostosowując zależność pwm od temperatury je do swoich potrzeb zamiast za każdym razem zmieniać...
nie przyjmie. Trzeba zapisywać po charze. A coś takiego jak string tak na prawde nie istnieje - jest to tablica charów.
Na przykład tak: Dim x(5) as byte . Tablica pięciu zmiennych.
Przed Tobą długie i wnikliwe czytanie pomocy jak definiowane, i jak obsługiwane są tablice w BASCOM.
Witam Mam dwa pytania. Ja utworzyć CRC dla tablicy zawierającej 1024 bajty. Powinno się ją podzielić na mniejsze bliki i obliczać CRC32 czy istnieje jakiś inny sposób. Jaką maksymalną wielkość może osiągnąć tablica aby można było liczyć bezpiecznie CRC32.
W przedszkolu nauczylem sie takiej przydatnej rzeczy jak czytanie ze zrozumieniem i Tobie "krzycho123" tez proponuje sie nauczyc ;-) Autor wyraznie napisal, ze ok. 300zl i programuje w Bascomie na AVR!!
Bez podania treści programu przed i po zmianie oraz podaniu, która zmienna jest naruszan to będzie "trochę" ciężko ! Jedyne co mi przychodzi do głowy to takie przypadki jak - stos programowy może włazić w obszar zmiennych przy wywołaniu podprogramu (teoretycznie powinno być to niemożliwe) - zmienna adresująca tablicę np. w pętli sięga "o jeden most...
No więc ? Tablica: DIM Odczyt(2) składa się z dwóch zmiennych typu Byte. Więc ile masz bitów razem ?
Myślałem raczej o czymś takim: [syntax=basic4gl]Do Readeeprom Tablica(licznik) , Licznik Incr Licznik Loop Until licznik >12 [/syntax] :)
Witam, dopiero zaczynam przygodę z bascom`em i mam problem: chcę wysłać z komputera do atmegi id czujnika ds18b20, jedyne co przychodzi mi do głowy to wysłać to w postaci xx;xxx;xx;xxx;xx;xx;xx;xxx; ale odczytanie tego polegało by na rozbiciu tej wartości względem ";". Może są jakieś prostsze metody przesłania takiej tablicy ??
Przy przepisywaniu danych masz jeden błąd, pierwsza dana z linii DATA nie zostanie przepisana do tablicy. Numeracja elementów w tablicy DIM zaczyna się od 1, a numeracja elementów danych pobieranych przez Lookup zaczyna się od 0 :) . W BASCOMIE od wersji 2.0.0.0 można zmienić w jaki sposób będą numerowane elementy w tablicy DIM: A gdybym chciał przechowywać...
Panowie, ekspresowe pytanie: czy w bascomie jest jakiś sposób, żeby zapisać danymi całą tablicę naraz? Chodzi mi o coś takiego: [syntax=basic4gl] Dim Tablica(5) as Byte Tablica(1) = 1 'tak można Tablica(2) = 2 . . Tablica(5) = 5 Tablica = 1,2,3,4,5 'a tak już nie można Dim A as Byte For A = 1 To 5 Tablica(A) = A 'tak też można, ale nie o to mi chodzi...
Byte to zmienna 8-bitowa, Word to zmienna 16-bitowa, Byte (1 byte). Bytes are stores as unsigned 8-bit binary numbers ranging in value from 0 to 255. Word (two bytes). Words are stored as unsigned sixteen-bit binary numbers ranging in value from 0 to 65535. nie programuje w bascomie ale zapisywanie 'większej' liczby do zmiennej o 'mniejszej pojemności'...
Ponownie chciałbym zwrócić się do kolegów z prośbą o pomoc. Chcę zrobić rejestrator czasu, zdarzeń występujących na przerwaniu. Układ miałby zapisywać do pamięci eeprom datę i godzinę wystąpienia zdarzenia. czyli zmienne _mies, _dzień, _godz, _minuta Myślę sobie tak. Skoro mam serie danych składającą się z czterech zmiennych więc muszę zarezerwować...
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)?
Witajcie ! Wiem, że temat był wałkowany na Elektrodzie wielokrotnie, czytałem chyba wszystkie, nie znalazłem jednak rozwiązania mojego problemu. Może na początek schemat : (tablica ma faktycznie 5 rejestrów i 40 kolumn, nie chciało mi sie jednak całości rysować.) http://obrazki.elektroda.net/42_12344199... teraz banalny kod : $regfile = "m8def.dat"...
Do sortowania użyj instrukcji Sort : [syntax=basic4gl]Dim A(3) As Byte ' trzy elementowa tablica A(1)= 86 A(2)= 42 A(3)= 230 Sort A(1) , 3 ' sortuj trzy elementy w tablicy zaczynając od A(1) Print A(2) ' wyświetl drugą wartość[/syntax]
Witam! chyba koledze o co innego chodzi. A tu się tak nieda. To nie C. Kolega chciałby zrobić tak jak możemy robić w C czyli np. tak: const unsigned char zmienna[3] = {1,2,3,4}; Niestety, też w BASCOMIE nie znalazłem takiego czegoś, i miałem dosyć wpisywania po kolei zaciemniając kod. Pamiętaj, że w C pierwszym elementem tablicy jest...
Witam. Podejrzewam że problem dla biegle programujących w Bascomie wyda się trywialny ale ja siedzę nad nim już od 1h i nie mogę sobie poradzić. Potrzebuję zmienić tablicę na zmienną. Poniżej jest wycinek kodu i potrzebuję wywalić tablicę 'txt' z danymi 'pozycja' i zamienić na zmienną ' txt="pozycja" ', oczywiście tak by obliczenia się pokrywały. Po...
A mógłbyś mi podpowiedzieć jak to zrobić na tablicach ?
I to jest główny problem użytkowników bascom:/ NIE MACIE POJĘCIA O SPRZĘCIE:> Poczytaj kolego o UART poczytaj o znakach sterujących, pomyśl! Nie ma wszystkiego na wyciągnięcie ręki.. (10 i 13 patrz do tablicy ascii).
Procedura getkbd zwraca 0 gdy nie naciśniesz zadnego klawisza (albo jakas inna wartosc). Musisz zrobić tak, aby po naciśnieciu dowolnego klawisza program czekal na wartosc 0 a dopiero pozniej jezeli odbierze jakas wartosc to niech zapisuje to do tablicy. Np: dim x as byte dim i as bit do x=getkbd if x= 0 then i=0 end if if x<>0 and i =0 then tablica=x...
listingi bascomie attiny13 bascomie usbasp bascomie
huawei gniazdo naprawa kleić wikol działa wkrętarka
pralka indesit kabel internetowy uziemienie
Jak zresetować robot kuchenny Klarstein Renta Rosa? Czy można jeździć na płukance Liqui Moly?