Witam, Czy istnieją biblioteki do BASCOM do Parsowania danych tekstowych? Dajmy na to mam taki string: aaaaaaaaaa,bbbbb,ccccc,dd Potrzebuje zapisać z tego tekstu aaaaaaaaa do jednej zmiennej bbbbb do drugiej zmiennej ccccc do trzeciej i dd do czwartej, przy czym długość tych znaków może się w programie ciągle zmieniać. Pozdrawiam i czekam na odpowiedź.
Tak, ESP8266 coś jeszcze dosyła. Właściwie to powinienem wysłać na UART dopiero jak przyśle tekst "CLOUSED". Nie mniej w tym przypadku chodzi tylko o sprawdzenie walidacji, bo docelowo to będzie się pytał raz na dobę serwera, a odebrane dane wysyłał ( jako zmienne typu Byte ) do odbiorników przez RFM12 ( może go zamienię na RFM69CW - pasuje "pinowo",...
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...
Z ciekawości - czy kolega ogarnął może w drugą stronę - tzn na stronce jest do wpisania np SSIS i Password i to ma wrócić przez uC do ESP8266 :) ? chciałbym zrobić taką stronkę w bascom z konfiguracją ESP8266 przez stronkę internetową, bo w internecie wszędzie przykłady jak coś z ESP8266 wysłać np na Thingspeak ale w drugą stronę to mniej przykładów...
Najpierw musisz zdekodować warstwę fizyczną - czyli musisz mierzyć impulsy. Najlepiej by było, gdybyś to zrobił na timerze capture, mierzysz czas odstepu miedzy zboczami, i tyle... Kazdy bit po bicie wpychasz do fifo... w petli głównej masz pętlę która rozbiera tą kolejkę, i zamienia bitstream na ramki. Takie ktore mają zdefiniowany początek i koniec,...
Sam się dopiero uczę. A le co mogę to pomogę. Z tego co piszesz w pierwszym poście to twoje przełączniki działają na podobnej zasadzie jak u mnie więc może tobie podejdzie moja wersja programu. Włącza się poszczególny przekaźnik komendą złożoną ze znaków - które sa parsowanie przez mikrokontroler u ciebie 0111 a u mnie 101.001.001 w sumie to samo. Jeżeli...
Coś namieszałeś w tym podprogramie odbioru z UART. Najpierw czytasz do zmiennej F, potem to Case 0 to 4 (?). Jeśli używasz ASCII to skąd niby mogły by się odebrać takie wartości ? Potem nagle ni z tego i owego pojawia się zmienna E bez związku z odczytem. Myślę, że ciągle mylisz kod ASCII z liczbami i przez to masz problemy. Możesz też przed parsowaniem...
Można sprawdzać czy string zawiera "+CCLK:" [syntax=vbnet]Helpb = Instr(Somestring , "+CCLK:") If Helpb > 0 Then Helpb = Helpb + 6 Helpstr = Mid(Somestring , Helpb) 'odetnij +CCLK: End If[/syntax] Potem w samym stringu mozna szukać spacji lub przecinka poprzez CHARPOS i sprawdzać czy > 0 albo zrobić tablice stringów i na tym SPLIT dzieląc przecinkiem...
Trochę trudno zrozumieć ten kod bo pewnie robi coś innego niż zamierzasz. Kiedy włączysz odbieranie znaków do bufora to odbierane są "w tle" w "ukrytej" obsłudze przerwania. Teraz o tym że w buforze czekają znaki możesz się dowiedzieć albo testując funkcją Ischarwaiting() albo ustawiając trigger na jakiś konkretny znak własnie poprzez Bytematch Kiedy...
Może gubisz przesyłane znaki bo gdzieś pętla jest za wolna. Jeśli taką komunikację wrzucisz do większego programu to problem się tylko pogłębi. Lepiej skonfiguruj bufor i Bascom będzie odbierał wszystkie znaki w przerwaniu. Nie przegapi żadnego znaku. ->Config Serialin0 Widać, że dodajesz Enter na końcu stringów. Możesz to monitorować i parsować dane...
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...
Gwałt na parserach. Parser powinien przetwarzać od tokena do tokena, a nie konkretną ilość znaków. Dopiero wtedy może sprawdzić, czy to, co jest pomiędzy tokenami, jest akceptowalne, czy nie. Parsowanie po ilości znaków prędzej czy później kończy się katastrofą - raz rozjechany parser już nigdy nie zsynchronizuje się z ciągiem danych które ma sparsować.
Przykłady parsowania danych tekstowych masz w helpie - keyword reference - string. Np polecenia typu LEFT, MID, RIGHT itd. wraz z opisem działania masz przykłady.
Wstęp: Przedstawiam taki skromny raczej projekt, ale dla mnie o sporym znaczeniu. Celem projekty było umożliwienie uC z rodziny avr, pracy w sieci Lan a w zasadzie zbudowanie takiego oprogramowania dla uC, które przypomina działaniem serwer http. Aby było to możliwe, sam avr-ek nie wystarczy. Trzeba go uzbroić w jakiś moduł sieciowy. Zazwyczaj opieram...
No tak tylko, że zdarza mi się oczekiwać na bardzo długą linię np. 80 bajtów czyli bufor musiałby też tyle mieć i zmienna stringdo której kopiuję bufor po odebraniu CR też, to jest juz 160 bajtów, a poza nimi muszę mieć kilka innych zmiennych potrzebnych do parsowania. I inne do innych celów, i SRAM na obsługę stosów i ramkę. Więc zdecydowałem, że nie...
Całą obsługę modemu masz źle, ponieważ opierasz się na stałych opóźnieniach a powinieneś po wysłaniu komendy AT oczekiwać jej rezultatu ("OK"," ERROR") a w przypadku wysłania komendy AT+CMGS="+48..." lub AT+CMGS=+48...: 1. Zaczekać na znak zachęty (">"), 2. Wpisać treść SMS'a i zakończyć znakiem CTRL+Z ({026}) bez RETURN'a ({013}) na końcu, 3. Poczekać...
I to jest problem ?? Czyż pusty wiersz to nie jest CRLF ? Poczytaj angielski help o Config input i ustaw CRLF Po drugie aby odebrać drugą linie możesz zastosować tak Input Todczyt noecho 'ta pierwsza nie potrzebna pusta Input Todczyt noecho 'ta druga z danymi co Ci są potrzebne do parsowania I już masz swoje dane :) Po drugie po co Ci podprogram "czysc_bufor"...
1. " dlatego ", 2. wyrozumiałość ... oczywiście z MAX3232 Na wyrost. Masz 5V i kilkadziesiąt kbaud, więc max232 wystarczy Jeden procesor wystarczy do tego zastosowania, nawet atmega8 jest tu już trochę na wyrost. W szczególności, że zgodnie z twoimi założeniami tekst parsuje człowiek, nie procesor. Jak się za to zabrać? Kupić: 2x PCF8574, 1x ATmega8,...
Ja nie chcę zapisywać w eeprom nadlatujących SMSów tylko fragmenty ramki PDU. które będę wysyłał. A chcę je tam zapisać by mieć możliwość szybkiej zmiany, kiedy sobie napiszę program do zmiany zawartości eeprom. Staram się napisać program tak elastycznie, by zmiana danych w eeprom, była przez program w uC "do przełknięcia, Czyli jeśli nawet zmienię...
Jak będzie w jezyku Basic wyglądał załączony wyżej plik definicji? Witaj! Zrozumiałem, że chcesz przekształcić zawartość pliku definicji do języka BASIC. Aby móc Ci pomóc w jak najbardziej efektywny sposób, potrzebowałbym dodatkowych informacji dotyczących struktury oraz zawartości tego pliku definicji. BASIC, jako język programowania wysokiego poziomu,...
Będzie w stanie zastąpić. Jednego nie rozumiem - przecież litery to też liczby...Cieżko po prostu wysyłać ascii? Jest lepiej - zauważ, że w rc5 masz bit, ktory xoruje się dla każdej "nowej" ramki, a nie xoruje sie dla ramek powtórzonych. Dzięki temu możesz odbiornikowi jasno wskazać kiedy transmisja się zaczyna. Oczywiście musisz opracować protokół,...
Poszukaj na forum opisu komend AT do Siemensa. Potem podłącz telefon do komputera np. przez Putty i podpatruj co się dzieje kiedy dzwonisz. Jeżeli nic się nie dzieje to poczytaj uważnie opis komend AT i włącz CLIP na konsoli. Po zadzwonieniu powinien się pojawić numer na konsoli. Przyjrzyj się dokładnie co i jak i napisz program parsujący i analizujący...
Wydaje mi się, że to forum elektrody jest używane głównie przez amatorów lub okazyjnych programistów . ..Bullshit. Jesli wszyscy byliby tutaj dorywczymi lub poczatkujacymi programistami, to kto by pomagał w rozwiązywaniu problemów? "pomagał głuchy ślepemu". Racz zauwazyc, ze na tym forum wypowiadają się ludzie, którzy pracują już w zawodzie związanym...
A jaki miał być skoro to był jednocześnie system :) Nie wyobrażam sobie by można w ten sposób posługiwać się C, stąd pewnie nikt nawet nie próbował. Pythona wtedy nie było (bo gdyby był to pewnie on by siedział w tych mikrokomputerach). Było C na osmiobitowcach. Zależnie który komputer, taśma magnetofonowa, albo dyskietka, wolny, wieloprzebiegowy,...
Witam Mam płytkę Loggera GPS + SD + PCF8563. Jeśli chodzi o GPS i zapis na SD wszytko jest OK. Problemem jest ( i to pierwszy raz się z czymś takim stykam ) odczyt danych z z układu PCF8563. Otóż dla pewnych wartości sekund, odczytana wartość czasu - godziny jest większa o 40 ( czterdzieści ). Czyli jeśli czas jest 22:40:02 to jest wyświetlany poprawnie,...
Może więc warto by było napisać co zrobiłeś, że Ci zadziałało, w jakich konkretnych warunkach ten błąd wystąpi (np wersja Windows/Linux, wersja Ecplise) i pomóc innym? Sam walczyłem z Ecplipsem jak jeszcze nie był dla ARMów tak popularny, były z pluginami problemy ale trzeba było je zwalczyć np. zmienić wersje Eplipsa, zainstalować ponownie, poszukać...
Witam Do istniejącego i działającego "urządzenie" chciałem dodać możliwość odbioru, parsowania i odesłania SMS'a zwrotnego z danymi. Cały kod: Linia1 - to wyświetla Uart_numer - Linia1 Linia2 - to wyświetla Komanda - Linia2 czyli działa OK Ale jak podepnę modem GSM ( SIM900D ) to Uart_numer jest puste, a Komanda pokazuje ( czasem ) jakieś teksty z pierwszej...
Przerobiłem tak, żeby wysyłał testowo tylko jedną wartość ( losową ) co 8 sekund Dodano po 18 Dołożyłem Clear Serialin0 Com1_str = "" czyli [syntax=vbnet] $regfile = "m328pdef.dat" $crystal = 8000000 $hwstack = 100 ' rozmiar stosu sprzętowego $swstack = 100 ' rozmiar stosu programowego $framesize = 128 $baud = 19200 '************ Uart 0 Config Serialin0...
Walczę i walczę z tym programem ale nie daje rady.... :cry: Wrzucam cały kod, jest on zrobiony na bazie jak wspomniałem wcześniej: Projekt powiadomienia o alarmie by Xury wersja 2.0 [syntax=basic4gl] '***************************************... 'Projekt powiadomienia o alarmie by Xury wersja 2.0 'Działanie na przerwaniach...
Witam w Nowym Roku Postaram się jak najlepiej opisać problem, jak że kod duży - musiałem go dać w załączniku. Całość opiera się na Case i odpytywaniu po kolei każdego czujnika, na koniec zapis i wysłanie do klientów przez RFM12. Część czujników jest już zamontowana w "terenie", więc na czas testu ich odpytywanie jest wyłączone, a żeby to ładnie wyglądało...
Witam Mam program, który, po dokonaniu pomiarów, wysyła dane przez RFM12 i zapisuje na karcie SD. Chcę dołożyć wysyłanie danych do Domoticz po każdym pomiarze. Problem w tym, że po dopisaniu obsługi ESP8266 i Domoticz ( zmienne miałem już wcześniej zadeklarowane ) to pojawiają się błędy w zapisie na karcie SD. No i wysyłanie do Domoticz przestaje działać,...
parsowanie danych parsowanie plików parsowanie ciągu
schemat wycieraczki szyby tylnej zabezpieczenie spawarka alkoholem izopropylowym
sterownik movera sterownik movera
Przystawka do czyszczenia kostki brukowej myjki Kinzo Iveco Stralis - brak prądu w gniazdach zapalniczki 12V