Strona używa cookies (ciasteczek). Dowiedz się więcej o celu ich używania i zmianach ustawień. Korzystając ze strony wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.    X

Omówienie komend dla wyświetlacza Nextion HMI

Skoro była mowa o oprogramowaniu - Nextion Editor, teraz czas na są wyświetlacz. :) Po za dotykowym sterowaniem wyświetlaczem, można również go obsługiwać przy użyciu odpowiednich poleceń i parametrów. Zanim je przedstawię, zapoznaj się z podstawą obsługi wyświetlacza.

Podstawowa wiedza

+ Wszystkie polecenia kończy się trzema bajtami "0xFF 0xff 0xFF".
+ Wszystkie polecenia i parametry występują w ASCII.
+ Wszystkie polecenia wprowadzaj małymi literami.

Polecenia

page [id lub nazwa strony]

Służy do zmiany strony na inną.

Przykłady użycia:page 0 //przechodzi do ekranu z id 0page main //przechodzi do ekranu z nazwą main

Uwagi: Wyświetlacz automatycznie startuje z ekranem id = 0.

ref [id lub nazwa obiektu lub 0]

Służy do odświeżenia wybranego obiektu lub wszystkich na aktywnym ekranie.

Przykłady użycia:ref tTime //odświeżenie jedynie wybranego obiekturef 0 //odświeżenie wszystkich

Uwagi: Domyślnie każdy obiekt ładowany jest automatycznie podczas tworzenia i edycji komponentu w Nextion Editor. Jeśli ustawisz na ręczne ładowanie, należy użyć tego polecenia do późniejszego wywołania (odświeżenia). Najnowszy odświeżony obiekt przechodzi na pierwszą warstwę.

get [nazwa zmiennej]

Służy do zwrócenia zawartości wybranej zmiennej.

Przykłady użycia:get t0.txt //zwraca wartość t0's txtget j0.val //zwraca wartość J0's val

UWAGA:
1. W momencie zwracania typu string, zwracana wartość jest w postaci 0X70+ASCII+0xff 0xff 0xff.
2. W momencie zwracania danych liczbowych, zwracana wartość jest w postaci 0X71+4 byte binary data+0xff 0xff 0xff.
3. Jeśli zostanie zwrócony inny format danych, zapoznaj się z tabelą: Format Zwracanych Wartości, która znajdziesz w dalszej części artykułu.

sendme

Służy do zwrócenia id aktywnej strony, nie zawiera parametrów.

UWAGA: Jeśli zostanie zwrócony inny format danych, zapoznaj się z tabelą: Format Zwracanych Wartości, która znajdziesz w dalszej części artykułu.

cov [wejście zmiennej],[wyjście zmiennej],[długość]

Dla trzeciego parametru można przekazać wartość 0, która oznacza automatyczną długość, natomiast inna niż 0 określa stałą długość.

Służy do konwersji typów zmiennych.

Przykłady użycia:cov h0.val,t0.txt,0 //konwersja wartości zmiennej suwaka h0.val na liczbowy ciąg znaków t0, automatyczna długość zmiennej z ciągiem znakówcov t0.txt,h0.val,0 //konwersja ciągu znaków zmiennej t0.txt do wartości suwaka h0.val, automatyczna długość zmiennej z ciągiem znaków

UWAGA:
1. Długość zawsze reprezentuje długość łańcucha znaków, gdy wartość zamienia się w ciąg znaków, jest to długość zmiennej docelowej. Natomiast gdy ciąg znaków zmienia się na wartość, jest to długość zmiennej źródłowej.
2. Jeśli zmienna źródłowa i docelowa są tego samego typu, konwersja nie powiedzie się.

touch_j

Służy do kalibrowania ekranu, nie zawiera parametrów.

Przykład użycia:touch_j //Wykonuje funkcję odpowiedzialna za kalibrację ekranu.

UWAGA: Wszystkie urządzenia zostały domyślnie skalibrowane, to polecenie nie jest wymagane w normalnych warunkach.

cle_c

Służy do wyłączenia dotykowych obszarów na wyświetlaczu.

UWAGA: Kiedy użyjesz tej komendy, wszystkie dotykowe obszary na aktywnym ekranie pozostaną nieaktywne. Po wykonaniu polecenia page, wszystkie dotykowe obszary zostaną przeładowane.

tsw [nazwa lub id obiektu],[stan 0 lub 1]

Służy do wyłączenia obszarów na wyświetlaczu.

Przykłady użycia:tsw b0,0 //Dotyk b0 obiektu nieaktywnytsw b0,1 //Dotyk b0 obiektu aktywnytsw 1,0 //Dotyk id 1 obiektu nieaktywnytsw 1,1 //Dotyk id 1 obiektu aktywny

UWAGA: Jeśli dla pierwszego parametru przekażesz wartość 255, a dla drugiego 0 to będzie ono dotyczyć wszystkie elementy na aktywnym ekranie, czyli będą nieaktywne. Natomiast jeśli drugi parametr przyjmie 1 to wszystkie będą aktywne.

com_stop

Służy do wstrzymywania wykonywania poleceń portu szeregowego, nie zawiera parametrów.

UWAGA:
1. Nie wymaga parametrów. Należy pamiętać, że urządzenie będzie wciąż przyjmować polecenia i zapisać je w buforze. W momencie wykonania polecenia "com_star", urządzenie wykona resztę poleceń zawartych w buforze.
2. Przy użyciu tej komendy w celu wstrzymania dalszego wykonania, należy upewnić się, czy rozmiar bufora nie przekracza maksymalnej pojemności kolejki poleceń.

com_star

Po wykonaniu tego polecenia, zostaną wykonane wszystkie polecenia, które były przechowywane w buforze. Nie zawiera parametrów.

code_c

Służy do wyczyszczenia bufora, nie zawiera parametrów..

print [zmienna/obiekt]

Służy do zwracania wartości danych.

print t0.txt //zwraca wartość z t0.txt w ASCII
print j0.val //zwraca wartość z j0.val w 4-bajty szesnastkowo
print "123" //zwraca wartość ASCII dla ciągu znaków "123": 0x31 0x32 0x33
print 123 //zwraca wartość w 4-bajtach szesnastkowo "123": 0x7B 0x00 0x00 0x00

UWAGA:
1. Jeśli zmienna jest typu ciąg znaków, urządzenie zwróci ciąg znaków ASCII. Jeśli jest to zmienna numeryczna *.val, urządzenie zwróci 4-bajty danych szesnastkowych.

2. Gdy wykonasz polecenie w celu uzyskania danych, urządzenie wysyła tylko zawartość danych, brak identyfikatora startu, ani znaku zakończenia.

printh [hex]

Służy do wysłania danych szesnastkowo.

Przykład użycia:printh d0 a0 //wysłanie dwóch bajtów 0xd0 0xa0

UWAGA:
1. print i printh polecenia są wykonywane tylko na wyświetlaczu Nextion. Nie działa w symulatorze oprogramowania.
2. Podczas używania polecenia printh do przesyłania danych, urządzenie wysyła tylko określone znaki, nie ma Startu, Spacji lub znaku Końca.
3. Nie musi używać tylko małych czy wielkich znaków, oba są obsługiwane.

add [id obiektu], [numer kanału], [wartość - min 0 - max 255]

Służy do
add 1,0,30 //Dodawanie wartości 30 do kanału 0 komponentu Waveform o numerze ID 1
add 1,1,50 //Dodawanie wartości 50 do kanału 1 komponentu Waveform o numerze ID 1

UWAGA: Każda strona obsługuje do czterech elementów Waveform, każdy składnik przebiegu obsługuje do czterech kanałów. Użytkownik może transmitować dane w sposób ciągły składnik automatycznie przesuwając i aktualizując dane. W trakcie wysyłania danych, właściwości sterujące mogą być zmienione w każdej chwili, np. modyfikować kolor pierwszego planu lub tła każdego kanału.

Więcej poleceń znajdziesz tutaj.
Artykuł będzie aktualizowany w miarę możliwośi autora.
 

sprzęt programowanie hobby

Komentarze

0 nowych
kszere   3 #1 26.11.2015 08:13

:)

jabolmax   5 #2 29.11.2015 17:23

powinieneś poprawić tytuł wyświetlacza nie wyświetlacz

kszere   3 #3 30.11.2015 14:02

@jabolmax: Dzięki za uwagę. :)

  #4 20.02.2016 16:34

wiesz cos na temat tago aby wyswietlacz sie zawsiesil?
po podlaczeniu ekran swieci ale nie laduje "systemu" jest jakis reset może ?

  #5 28.02.2016 18:06

Hej, jakieś wskazówki jak przez rs232 ustawić wartość zmiennej? wszystkie komendy działają, więc z komunikacją nie ma problemów. Mogę nawet przypisywać wartości jednej zmiennej do drugiej (n0.val=n1.val), ale kiedy próbuję ustawić wartość np n0.val=123 zawsze otrzymuję kod 0x1A, czyli nieistniejąca zmienna.