logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Bascom - jak dekodować ramkę UART i pobrać konkretny bajt?

grabek_radek 01 Gru 2017 09:39 1209 8
REKLAMA
  • #1 16860402
    grabek_radek
    Poziom 21  
    Witam serdecznie.
    Potrzebuje pomocy w napisaniu kawałka programu aby dekodował mi taką ramkę po uart
    Bascom - jak dekodować ramkę UART i pobrać konkretny bajt?

    oraz pobranie tylko jednej danej bajtu podkreślonej na czerwono
  • REKLAMA
  • REKLAMA
  • #3 16860526
    kamyczek
    Poziom 38  
    Pochwal się tym co napisałeś , dostaniesz rady i wskazówki . Nie licz na gotowca na forum można zdobyć wiedzę i się nią pochwalić tyle że to nie polega na tym żeby ktoś za ciebie napisał program na zaliczenie do szkoły. Ja nie jestem zwolennikiem wyręczania kogoś bo to prowadzi do generowania cwaniaków i nieuków z dyplomami . Trzeba mieć szacunek do ludzi którzy przekazują innym wiedzę ktoś prowadzi wykłady tłumaczy , połowy nie ma na zajęciach ,druga połowa śpi lub gada . Przychodzi praca na zaliczenie wszyscy na elektrodę i do sieci szukać gotowców . Nie chcesz się uczyć nie idź na studia , idź do zawodówki zamiast do technikum . Każdy chce mieć dyplom świadectwo tylko połowa nie chce włożyć w to odrobiny wysiłku .
  • REKLAMA
  • #4 16860531
    grabek_radek
    Poziom 21  
    Nie wszystko w tej chwili jest używane, bo to testy. Na przykład Dim Napis As String * 15
    Const Koniec = &HFF
    itp.

    Kod: VB.net
    Zaloguj się, aby zobaczyć kod

    Wiem, że to jest słabe, ale próbuję to zrozumieć.
  • #5 16860536
    czareqpl
    Poziom 33  
    kamyczek napisał:

    kamyczek


    Zobacz jaki jest pierwszy wynik mojego wyszukiwania...
  • #6 16860550
    grabek_radek
    Poziom 21  
    Pobieram 4 bajty z lewej strony i zamieniam na val ale to jeszcze nie to
    Kod: VB.net
    Zaloguj się, aby zobaczyć kod

    Dodano po 2 [godziny] 36 [minuty]:
    Jeszcze raz opiszę o co mi chodzi a mianowicie próbuję odczytywać dane z panela nextion
    Kod: VB.net
    Zaloguj się, aby zobaczyć kod

    wysyłam zapytanie
    Kod: VB.net
    Zaloguj się, aby zobaczyć kod

    po którym muszę zdekodowac wartość w tym wypadku mam wartość 8 w linku znajduje sie log z Saleae logic
    Link


    Ogólnie to tak wysyłam:
    Print "get n0.val";
    Printbin Koniec ; Koniec ; Koniec

    i wartość odebraną chciałbym zapisać do zmiennej X, czyli to moje 8.

    Dalej wysyłam (nie umieszczone w kodzie wyżej)
    Print "get n1.val";
    Printbin Koniec ; Koniec ; Koniec

    i zapisuje wartość do zmiennej Y.
  • #7 16861141
    kamyczek
    Poziom 38  
    Pierwsza sprawa musisz tak napisać program by rozpoznawał początek i koniec paczki , żeby móc policzyć który bajt masz sprawdzać. Możesz czekać na wartość 65 jak ją odbierzesz to odbierasz kolejny, którego nie sprawdzasz i jeszcze jeden który porównujesz z wartością poszukiwaną jak jest ok to wyświetlasz komunikat jak nie wracasz na początek programu .
    Bufor jest tu właściwie nie potrzebny
  • REKLAMA
  • #8 16867707
    grabek_radek
    Poziom 21  
    kamyczek
    Czy możesz mi pomóc?
    Testuję teraz programik (sorki za bałagan, ale próbuję to zrozumieć)
    Kod: VB.net
    Zaloguj się, aby zobaczyć kod


    Chciałem jedynie co wychwytuje na wyświetlaczu to --- gdy moja wartość n0. 'zapytanie
    Print "get n0.val";
    Printbin Koniec ; Koniec ; Koniec
    jest wartością np. =1
    to otrzymuje na wyświetlaczu
    26 209 0 0 0 200 200 200
    gdy mam wartość w n0=2
    26 210 0 0 0 200 200 200
    a dlaczego nie mam dla n0=1
    71 1 0 0 0 255 255 255?
    przechwycone dane
    Bascom - jak dekodować ramkę UART i pobrać konkretny bajt?
  • #9 18574354
    shonasz
    Poziom 15  
    Jak rozwiazałeś problem z odbiorem danych?
REKLAMA