Systemparameter-Einstellungen (Touchscreen-LUA - Skript-Tutorial3)

kostenlosKostenloses technisches Material

Dieser Inhalt ist direkt lesbar und eignet sich für das Grundlagenlernen und die Suche.

Systemparameter-Einstellungen (Touchscreen-LUA - Skript-Tutorial3)

In diesem Artikel wird beschrieben, wie Sie Systemparameter über ein LUA-Skript festlegen. Wie übliche Baudrate, Buzzer, RTC, Hintergrundbeleuchtung Helligkeit usw. In diesem Abschnitt geht es um die verwandten Funktionen wie

1. Funktion: on_control_notify(screen, control, value): Die Funktion hat drei Parameter:

  • screen: Darstellt BildschirmID
  • control: Darstellt die Nummer des Steuerelements
  • value: Gibt den Wert des Steuerelements an.

2. Legen Sie die Baudrate für die Serienübertragung ein: uart_set_baudrate (baudrate)

  • Baudrate: Gibt den festgelegten Baudrate-Wert an. 232 / TTL unterstützt 1200 bis 961200 bps, typischerweise 115200 bps. 485 Unterstützt 1200 ~ 115200bps, typischer Wert von 9600bps

3. Einstellung der Hintergrundbeleuchtung: set_backlight (level)

  • level: Gibt den Hintergrundbeleuchtungssatz aus, der im Bereich 0 bis 100 ist. Je höher der Wert, desto heller wird die Hintergrundbeleuchtung

4. Setze die Dauer des Buzzers: beep(time)

  • time: Zeigt die Dauer des Buzzers, in ms, nicht die Ein - / Deaktivierungsteuerung des Buzzers

5. Setze die Bildschirm-RTC - Zeit: set_date_time (year, month, day, hour, minute, second)

  • year: Jahr
  • monat: Monat
  • day: Tag
  • hour: Stunden
  • Minute: Ausdruck
  • second: Sekunden

Hinweis: Weitere Informationen zu LUA finden Sie im AbschnittLUA Script API Function Interfaceund auf der Website: www.runoob.com/lua

Anwendbarkeit: M-Serie, W-Serie, X-Serie, F-Serie (Firmware-Version > = V4.2.401.0)

Routine Download-Link:Systemparameter-Einstellungen(Klick auf Sprung)

3.1 Modifizierung der Baudrate

Bildschirmkonfiguration

Hinzufügen zwei Tastensteuerelemente (ID1, ID2), die die Baudrate auf 19200, 115200, bzw. ein Textsteuerelement (ID14) zur Anzeige der Baudrate hinzufügen. Wie folgt

  • zwei Tastensteuerelemente: Inner Befehl für gegenseitig ausschließenden Effekt konfiguriert, die Bedienungsstil ist die Einstellung, wobei der Anfangszustand der ID1 - Taste ist gedrückt, der Anfangszustand der ID2 - Taste ist ein Sprung
  • Textsteuerelement: Die Eingabe ist eine Systemvariable und die Systemvariable ist die Baudrate
Systemparameter-Einstellungen (Touchscreen-LUA - Skript-Tutorial3)Abbildung

LUA Script

Wenn der Benutzer auf die Schaltfläche [19200] oder [115200] klickt, wird die Rückruffunktion on_control_notify(screen, control, value) ausgelöst, die Art_set_baudrate (baudrate) aufruft, um die entsprechende Baudrate einzustellen, wie folgt:

--[[***************************************************************************
** Function name: on_control_notify
** Descriptions:  用户通过触摸修改控件后,执行此回调函数。
                  点击按钮控件,修改文本控件、修改滑动条都会触发此事件。
                  注意:回调函数的参数和函数名固定不能修改
** Input value :  screen 画面ID
                  control 控件ID
                  value  控件值(包括文本控件输入的值)
***************************************************************************--]]
function  on_control_notify(screen,control,value)
    ......
    if screen==0 and control==1 and value==1        --按下第0页、编号1按钮
    then
        uart_set_baudrate(19200)                    --设置波特率为19200

    elseif screen==0 and control==2 and value==1    --按下第0页、编号2按钮
    then
        uart_set_baudrate(115200)                   --设置波特率为115200
    end
    ......
end

PS. Die Funktion uart _ get _ baudrate () ermittelt die aktuelle Baudrate, z. B. local baudrate = uart _ get _ baudrate ()

Ausführen des Effekts

Basierend auf dem oben beschriebenen Code wird der Effekt wie folgt ausgeführt

Systemparameter-Einstellungen (Touchscreen-LUA - Skript-Tutorial3)Abbildung1

3.2 Einstellung der Hintergrundbeleuchtung

Einstellung der Hintergrundbeleuchtung, Schiebeanpassung mit Fortschrittsleiste und Schiebereglern

Bildschirmkonfiguration

Ein Schieberegler-Steuerelement (ID4) und ein Fortschrittsleiste-Steuerelement (ID3) als Hintergrundbeleuchtungsteuerung hinzufügen, die entsprechenden Steuerelementeigenschaften wie folgt konfiguriert:

  • Schieberegler: Setzen Sie den Startbereich von 20 bis 100 (wenn die Hintergrundbeleuchtung auf 0 oder niedriger ist, kann der Bildinhalt nicht klar gesehen werden). Unter den Einstellungen der Hintergrundbeleuchtung der LUA-Skripte unterstützt 0 - 100
  • Fortschrittsleiste-Steuerelemente: Setzen Sie [Slide-Benachrichtigung] assoziierte Schieberleiste, hinzufügen entsprechendes Hintergrundbild
Systemparameter-Einstellungen (Touchscreen-LUA - Skript-Tutorial3)Abbildung2

LUA-Skript

Wenn der Benutzer klickt / Schieberleiste, Hintergrundbeleuchtung und Fortschrittsleiste folgen auch Änderungen. Die Schiebevorgang löst das LUA-Skript on_contrl_notify(screen, control, value) aus, das den Hintergrundlichtwert bei dem Aufruf set_backligt(level) festlegt, wie folgt

--[[***************************************************************************
** Function name: on_control_notify
** Descriptions:  用户通过触摸修改控件后,执行此回调函数。
                  点击按钮控件,修改文本控件、修改滑动条都会触发此事件。
                  注意:回调函数的参数和函数名固定不能修改
** Input value :  screen 画面ID
                  control 控件ID
                  value  控件值(包括文本控件输入的值)
***************************************************************************--]]
function  on_control_notify(screen,control,value)
     ......
     if screen==0 and control == 4        --滑动第0页、编号4滑动条
     then
        set_backlight(value)             --设置背光为value
     end
     ......
end

PS: Die Funktion get _ backlight erhält den aktuellen Hintergrundlichtwert, z. B. local cur _ backlight = get _ backlight ()

Ausführen der Vorschau

Hier wird der virtuelle Bildschirm-Effekt nur als Kontrollveränderung Demonstration, die tatsächliche Einstellung der Hintergrundbeleuchtung-Effekt, die Notwendigkeit, um zu kompilieren Download auf den physischen Bildschirm Erfahrung

3.3 Einrichten von Buzzer

Bildschirm Konfiguration

Platzieren einer Taste-Steuerung (ID ist 5), Taste-Eigenschaft in der Ereignis Benachrichtigung Auswahl "Ja". Wie unten gezeigt

Systemparameter-Einstellungen (Touchscreen-LUA - Skript-Tutorial3)Abbildung3

LUA-Skript

, wenn Sie die Taste drücken, löst die Ereignis-Benachrichtigung on_contrl_notify(screen, control, value) Funktion aus, nachdem die entsprechende Steuerung ausgelöst wurde, ruft die Funktion beep(500) auf, um den Buzzer zu klingeln 500ms, Code-Snippet wie unten gezeigt

--[[***************************************************************************
** Function name: on_control_notify
** Descriptions:  用户通过触摸修改控件后,执行此回调函数。
                  点击按钮控件,修改文本控件、修改滑动条都会触发此事件。
                  注意:回调函数的参数和函数名固定不能修改
** Input value :  screen 画面ID
                  control 控件ID
                  value  控件值(包括文本控件输入的值)
***************************************************************************--]]
function  on_control_notify(screen,control,value)
     ......
     if screen==0 and control == 5 and value == 1    --滑动第0页、编号4滑动条
     then
        beep(500)                                    --设置蜂鸣器鸣叫500ms
     end
     ......
end

Ausführen Vorschau

Download auf den seriellen Bildschirm, klicken Sie auf die Schaltfläche "Knock" und hören Sie "Knock"

3.4 Set up RTC

Im Bildschirm legen Sie ein RTC-Steuerelement auf zwei Tasten, die jeweils unterschiedliche Zeiten festlegen.

Systemparameter-Einstellungen (Touchscreen-LUA - Skript-Tutorial3)Abbildung4

LUA-Skript

löst die Funktion on_contrl_notify(screen, control, value) aus und ruft die Funktion set_date_time () auf, um die RTC-Zeit einzustellen. Der Code lautet:

--[[***************************************************************************

** Function name: on_control_notify
** Descriptions:  用户通过触摸修改控件后,执行此回调函数。
                  点击按钮控件,修改文本控件、修改滑动条都会触发此事件。
                  注意:回调函数的参数和函数名固定不能修改
** Input value :  screen 画面ID
                  control 控件ID
                  value  控件值(包括文本控件输入的值)
***************************************************************************--]]
function  on_control_notify(screen,control,value)
     ......
     if screen==0 and control == 6 and value == 1    --滑动第0页、编号4滑动条
     then
         set_date_time(2019,1,1,1,1,1)               --设置当前时间为2019/01/01 01:01:01
     end
     ......
end

PS. Die get _ date _ time-Funktion erhält den aktuellen RTC-Wert, z. B. local cur _ backlight = get _ backlight ()

Ausführen der Vorschau.

Laden Sie auf den seriellen Port-Bildschirm, klicken Sie auf "Zeit eins" oder "Zeit zwei" Schaltfläche, um die RTC-Zeitänderung auf der linken Seite zu sehen. Beachten Sie, dass der virtuelle Bildschirm keine Änderung der RTC-Steuerelemente unterstützt, da es sich um die Zeit auf der PC-Seite des Computers handelt

Relevante Etiketten
Sollte man diese Informationen für ein echtes Projekt verwenden?

Gehen Sie zum Tool Center, um Nachrichten zu analysieren, CRC-Prüfungen und Geräte-Debugging zu erledigen, oder senden Sie Anforderungen für Auswahl - und Zugangsvorschläge.

Ingenieur Mitglied

Verwandeln Sie diesen Artikel in ein umsetzbares Debuggermaterial

Erweiterte Nachrichtenanalyse, Paket-Downloads, Codebeispiele, Engineering-Szenarien und Priority-Technischer Support sind für die Real-Projekt - Bereitstellung möglich.

Unbegrenzte Werkzeuge
Datenpaket und Codepaket
Vollständige Engineering Case-Basis
Vorrangiger Zugang zum technischen Support

Antwort veröffentlichen

Ihre E-Mail - Adresse wird nicht öffentlich gemacht. Erforderliche Elemente wurden verwendet * markiert.