この記事では、LUAスクリプトによるシステムパラメータの設定について説明します。一般的なボーレート、ブザー、RTC、バックライトなど。本項では関連する機能を扱う。
1.ユーザーのタッチでコントロールを変更するコールバック関数on_control_notify screen control value関数には3つのパラメータがあります。
- screen:画面IDを表示
- controlコントロールを表す番号
- value:コントロールの値を表します。
2.シリアルポートの通信のボーレートを設定します。uart_set_baudrate baudrate
- baudrate:設定されたボーレートの値を表します。232/TTLは1200~ 96 1200 bpsをサポートし、標準値は115200bpsです。485は1200~115200bps、標準9600bpsをサポートします。
3.バックライトのset_backlight
- レベル:設定されたバックライト値を示し、値の範囲は0~100です。数値が高いほどバックライト輝度が明るくなる
4.ブザーが鳴る時間の長さを設定する:beep time
- time:ブザーが鳴る時間の長さを表し,単位ms,ブザーの有効/無効制御ではない.
5.画面RTC時刻を設定しますset_date_time year、month、day、hour、minute、second
- year:年を表す
- month:月を表す
- day:日を表す
- hour:時間を表す
- minute:分を表す
- second:秒を表す
注:LUAの詳細はこちらLUAスクリプトAPI関数インタフェース{{LUAすくりぷとAPIかんすういんたふぇ ーす}} チャプターとウェブサイト:w w w.runoob.com/lua
対象範囲Mシリーズ、Wシリーズ、Xシリーズ、Fシリーズファームウェアバージョン= V4.2.401.0
ダウンロードリンク:システム·パラメータ設定”クリックジャンプ
3.1ボーレートの変更
画面の設定
ボーレートを19200、115200に設定する2つのボタンコントロールID1、ID2を追加し、ボーレートを表示するテキストコントロールID14を追加します。次のように
- 2つのボタンコントロール:対内命令は相互排他効果として設定され、操作スタイルはすべてセット位置で、その中にID1ボタンの初期状態は押し、ID2ボタンの初期状態はポップアップです。
- テキストコントロール入力はシステム変数、システム変数はボーレート

LUAスクリプト
ユーザーが[19200]または[115200]ボタンをクリックすると、on_control_notify(screen、control、value)コールバック関数が起動され、対応するボタンの押下に応じてuart_set_baudrate(baudrate)が呼び出され、対応するボーレートが設定されます。
--***************************************************************************
** Function name on_control_notify
** Descriptionsユーザーがタッチでコントロールを変更した後に、このコールバック関数を実行します。
ボタンコントロールのタップ、テキストコントロールの変更、スライドバーの変更によってトリガーされます。
注意:コールバック関数のパラメータと関数名は変更できません。
** Input value screen 画面ID
Control IDコントロールID
valueコントロール値テキストコントロールの入力値を含む
***************************************************************************--]]
function on__noscreen value
......
画面==0、制御==1、値==1の場合 --ページ0、番号1ボタンを押す
そして、Then
uart_set_baudrate 19200 ボーレートを19200に設定する
elseifスクリーン==0、制御==2、値=1 --ページ0、番号2ボタンを押す
そして、Then
uart_set_b115200 --ボーレートを115200に設定
End of Endシングル
......
End of EndシングルPS. uart_get_baudrate関数は、local baudrate = uart_get_baudrateのように、現在のボーレートを取得します。 ↩
効果の実行
上記のコードセグメントにより,実行効果は以下のようになる.

3.2バックライトの設定
バックライトの調整、プログレスバーとスライダーを組み合わせてスライド調整可能
画面の設定
バックライトを制御するためにスライダコントロール(ID4)とプログレスバーコントロール(ID3)が画面に追加され、関連するコントロールプロパティは以下のようになります。
- スライダーコントロール:値の開始範囲を20~100に設定します(バックライトを0以下に調整すると、画面内容がはっきり見えません)。LUAスクリプト設定のバックライトレベルは0 ~ 100をサポートします。
- プログレスバーコントロール:[スライド通知]を設定し、スライドバーを関連付け、対応する背景画像を追加

LUAスクリプト
ユーザーがスライダーをタップ/スライドさせると、バックライト値とプログレスバーも変化します。スライド処理は、LUAスクリプトon_contrl_notify screen control valueを起動し、set_backligt level呼び出しでバックライト値を設定します。
--***************************************************************************
** Function name on_control_notify
** Descriptionsユーザーがタッチでコントロールを変更した後に、このコールバック関数を実行します。
ボタンコントロールのタップ、テキストコントロールの変更、スライドバーの変更によってトリガーされます。
注意:コールバック関数のパラメータと関数名は変更できません。
** Input value screen 画面ID
Control IDコントロールID
valueコントロール値テキストコントロールの入力値を含む
***************************************************************************--]]
function on__noscreen value
......
画面==0、制御== 4の場合 --ページ0、番号4スライドバーをスライドさせます。
そして、Then
set_backlight value --バックライトを値に設定
End of Endシングル
......
End of EndシングルPS . get_backlight関数は、local cur_backlight = get_backlightのように、現在のバックライト値を取得します。 ↩
プレビューの実行
ここでは、仮想画面実行効果は、制御変更デモとしてのみ使用され、バックライト効果の実際の調整は、実際の画面体験にコンパイルする必要があります。
3.3ブザーの設定
画面の設定
ボタンコントロール(ID 5)を設定し、ボタンのプロパティのイベント通知で[はい]を選択します。次のように

LUAスクリプト
ボタンが押されると、イベントがon_contrl_notify screen control value関数に通知され、対応するコントロールがトリガ成立するとbeep 500関数が呼び出され、ブザーが500ms鳴ることを示し、コードセグメントは以下のようになります。
--***************************************************************************
** Function name on_control_notify
** Descriptionsユーザーがタッチでコントロールを変更した後に、このコールバック関数を実行します。
ボタンコントロールのタップ、テキストコントロールの変更、スライドバーの変更によってトリガーされます。
注意:コールバック関数のパラメータと関数名は変更できません。
** Input value screen 画面ID
Control IDコントロールID
valueコントロール値テキストコントロールの入力値を含む
***************************************************************************--]]
function on__noscreen value
......
画面==0、制御== 5、値== 1の場合 --ページ0、番号4スライドバーをスライドさせます。
そして、Then
beep 500 --ブザーを500ms鳴らします。
End of Endシングル
......
End of Endシングルプレビューの実行
到
3.4 RTCの設定
画面では、RTCコントロールを設定し、2つのボタンはそれぞれ異なる時間を設定します。コントロール関連プロパティの設定は次のとおりです。

LUAスクリプト
トリガイベント通知on_contrl_notify screen value关数。対応するコントロールトリガが成立した后、set_date_time关数を呼び出してをする。コードは次のとおりです
--***************************************************************************
** Function name on_control_notify
** Descriptionsユーザーがタッチでコントロールを変更した後に、このコールバック関数を実行します。
ボタンコントロールのタップ、テキストコントロールの変更、スライドバーの変更によってトリガーされます。
注意:コールバック関数のパラメータと関数名は変更できません。
** Input value screen 画面ID
Control IDコントロールID
valueコントロール値テキストコントロールの入力値を含む
***************************************************************************--]]
function on__noscreen value
......
画面==0、制御== 6、値== 1の場合 --ページ0、番号4スライドバーをスライドさせます。
そして、Then
set_date_time(2019,1,1,1,1,1,1) --現在の時刻を2019/01/01 0 1:0 1:0 1に設定します
End of Endシングル
......
End of EndシングルPS . get_date_time関数は、local cur_backlight = get_backlightのように、現在のrtc値を取得します。 ↩
プレビューの実行
到仮想画面はPC側の時間であるため、RTC制御の変更をサポートしていません。
发表回复