/

mwings.utils モジュール

mwings.utils

汎用的なユーティリティ関数を格納しています。

src/mwings/utils.py

ask_user()

ask_user(prompt, regex, on_error, ex_verifier=None, max_attempts=None)

コンソールでユーザからの入力を得ます。

引数

名称内容
promptstrプロンプトへ表示するメッセージ
regexstrユーザの入力を検証する正規表現
on_errorstrユーザの入力が不正であった場合のメッセージ
ex_verifieroptional Callable[[str], bool]正規表現に加えて入力文字列を検証する関数
max_attemptsoptional intリトライ回数。Noneなら無限

戻り値

内容
str-検証済みのユーザによる入力文字列

ask_user_for_port()

ask_user_for_port()

ユーザへ使用するポートを選択させます。

引数

なし

戻り値

内容
str-指定されたポート名

byte_count_from()

byte_count_from(character_count)

アスキー文字列で表現されたバイト列の長さをバイナリ表現の長さへ変換します。

引数

名称内容
character_countintアスキー表現のバイト列の長さ

戻り値

内容
int-バイナリ表現のバイト列の長さ

character_from()

character_from(hexvalue)

0x0-0xFの数値を16進数表記の文字へ変換します。

引数

名称内容
hexvalueint数値

戻り値

内容
int-文字のアスキーコード

find_ascii()

find_ascii(port, data, timeout, debugging=False)

指定されたアスキー文字列の受信を待機します。

引数

名称内容
portserial.Serialシリアルポート
datastrアスキー文字列
timeoutintタイムアウト(秒)
debuggignboolデバッグ出力

戻り値

内容
boolTrue受信を確認
boolFalse受信を確認できず

find_binary()

find_binary(port, data, timeout, debugging=False)

指定されたバイト列の受信を待機します。

引数

名称内容
portserial.Serialシリアルポート
datastrバイト列
with_terminalbool終端データ使用の有無
terminalint終端として扱うデータ
timeoutintタイムアウト(秒)
debuggignboolデバッグ出力

戻り値

内容
boolTrue受信を確認
boolFalse受信を確認できず

flush_rx_buffer()

flush_rx_buffer(port)

受信バッファをクリアします。

引数

名称内容
portserial.Serialシリアルポート

戻り値

なし

flush_tx_buffer()

flush_tx_buffer(port)

送信バッファをクリアします。

引数

名称内容
portserial.Serialシリアルポート

戻り値

なし

get_ports()

get_ports()

使用できるシリアルポートの一覧を取得します。

引数

なし

戻り値

内容
list[str]-ポート名のリスト

hex_from()

hex_from(character)

16進数を表すアスキー文字を数値へ変換します。0-9,A-F以外の数値を入力した場合の値は不定です。

引数

名称内容
characterint文字のアスキーコード

戻り値

内容
int-数値

is_initialized()

is_initialized(port)

シリアルポートが初期化されているかどうかを確認します。

引数

名称内容
portserial.Serialシリアルポート

戻り値

内容
boolTrue初期化済み
False未初期化

is_readable()

is_readable(port)

シリアルポートからデータを取得できるかどうかを確認します。

引数

名称内容
portserial.Serialシリアルポート

戻り値

内容
boolTrue受信バッファにデータあり
False受信不可

is_there_some_ports()

is_there_some_ports()

使用できるシリアルポートが存在するかどうかを確認します。

引数

なし

戻り値

内容
boolTrueシリアルポートあり
Falseなし

is_writable()

is_writable(port)

シリアルポートへデータを送信できるかどうかを確認します。

引数

名称内容
portserial.Serialシリアルポート

戻り値

内容
boolTrue送信可
False送信不可

lrc8()

lrc8(data)

8ビットのLRCを計算します。

引数

名称内容
databytes計算対象のバイト列

戻り値

内容
int-LRC8

millis()

millis()

現在のシステム時間をミリ秒単位で取得します。

引数

なし

戻り値

内容
int-システム時間

open_on_system()

open_on_system(path)

指定されたパスのファイルをシステムの既定のアプリケーションで開きます。

引数

名称内容
pathPathファイルパス

戻り値

なし

write_binary()

write_binary(port, data)

バイト列をシリアルポートへ送信します。

引数

名称内容
portserial.Serialシリアルポート
dataint送信するデータ
bytes送信するデータ列

戻り値

なし

write_in_ascii()

write_in_ascii(port, data)

アスキー表現のバイト列をシリアルポートへ送信します。

引数

名称内容
portserial.Serialシリアルポート
dataint送信する文字
bytes送信する文字列

戻り値

なし