システムパラメータの設定タッチスクリーンLUAスクリプトチュートリアル3

無料無料技术资料

这篇内容可直接阅读,适合用于基础学习和検索引流。

システムパラメータの設定タッチスクリーンLUAスクリプトチュートリアル3

この記事では、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スクリプトチュートリアル3插图

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のように、現在のボーレートを取得します。 ↩

効果の実行

上記のコードセグメントにより,実行効果は以下のようになる.

システムパラメータの設定タッチスクリーンLUAスクリプトチュートリアル3插图1

3.2バックライトの設定

バックライトの調整、プログレスバーとスライダーを組み合わせてスライド調整可能

画面の設定

バックライトを制御するためにスライダコントロール(ID4)とプログレスバーコントロール(ID3)が画面に追加され、関連するコントロールプロパティは以下のようになります。

  • スライダーコントロール:値の開始範囲を20~100に設定します(バックライトを0以下に調整すると、画面内容がはっきり見えません)。LUAスクリプト設定のバックライトレベルは0 ~ 100をサポートします。
  • プログレスバーコントロール:[スライド通知]を設定し、スライドバーを関連付け、対応する背景画像を追加
システムパラメータの設定タッチスクリーンLUAスクリプトチュートリアル3插图2

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スクリプトチュートリアル3插图3

​

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スクリプトチュートリアル3插图4

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制御の変更をサポートしていません。

この資料を実際のプロジェクトに活用しませんか?

ツールセンターで電文解析、CRCチェック、デバイスデバッグを行うか、要件を送信して選定と接続のアドバイスを受けましょう。

エンジニア会員

この記事を実行可能なデバッグ資料に

登録すると、高度な電文解析、資料パックのダウンロード、コード例、エンジニアリングケース、優先技術サポートが利用可能に。実際のプロジェクト納品に最適です。

高度なツール無制限
資料パックとコードパック
完全なエンジニアリングケースライブラリ
優先技術サポート窓口

发表回复

あなたのメールアドレスアドレス不会被公开。 必須項目已用 * 标注