mwings.utils モジュール
mwings.utils
汎用的なユーティリティ関数を格納しています。
ask_user()
ask_user(prompt, regex, on_error, ex_verifier=None, max_attempts=None)
コンソールでユーザからの入力を得ます。
引数
名称 | 型 | 内容 |
---|---|---|
prompt | str | プロンプトへ表示するメッセージ |
regex | str | ユーザの入力を検証する正規表現 |
on_error | str | ユーザの入力が不正であった場合のメッセージ |
ex_verifier | optional Callable[[str], bool] | 正規表現に加えて入力文字列を検証する関数 |
max_attempts | optional int | リトライ回数。None なら無限 |
戻り値
型 | 値 | 内容 |
---|---|---|
str | - | 検証済みのユーザによる入力文字列 |
ask_user_for_port()
ask_user_for_port()
ユーザへ使用するポートを選択させます。
引数
なし
戻り値
型 | 値 | 内容 |
---|---|---|
str | - | 指定されたポート名 |
byte_count_from()
byte_count_from(character_count)
アスキー文字列で表現されたバイト列の長さをバイナリ表現の長さへ変換します。
引数
名称 | 型 | 内容 |
---|---|---|
character_count | int | アスキー表現のバイト列の長さ |
戻り値
型 | 値 | 内容 |
---|---|---|
int | - | バイナリ表現のバイト列の長さ |
character_from()
character_from(hexvalue)
0x0
-0xF
の数値を16進数表記の文字へ変換します。
引数
名称 | 型 | 内容 |
---|---|---|
hexvalue | int | 数値 |
戻り値
型 | 値 | 内容 |
---|---|---|
int | - | 文字のアスキーコード |
find_ascii()
find_ascii(port, data, timeout, debugging=False)
指定されたアスキー文字列の受信を待機します。
引数
名称 | 型 | 内容 |
---|---|---|
port | serial.Serial | シリアルポート |
data | str | アスキー文字列 |
timeout | int | タイムアウト(秒) |
debuggign | bool | デバッグ出力 |
戻り値
型 | 値 | 内容 |
---|---|---|
bool | True | 受信を確認 |
bool | False | 受信を確認できず |
find_binary()
find_binary(port, data, timeout, debugging=False)
指定されたバイト列の受信を待機します。
引数
名称 | 型 | 内容 |
---|---|---|
port | serial.Serial | シリアルポート |
data | str | バイト列 |
with_terminal | bool | 終端データ使用の有無 |
terminal | int | 終端として扱うデータ |
timeout | int | タイムアウト(秒) |
debuggign | bool | デバッグ出力 |
戻り値
型 | 値 | 内容 |
---|---|---|
bool | True | 受信を確認 |
bool | False | 受信を確認できず |
flush_rx_buffer()
flush_rx_buffer(port)
受信バッファをクリアします。
引数
名称 | 型 | 内容 |
---|---|---|
port | serial.Serial | シリアルポート |
戻り値
なし
flush_tx_buffer()
flush_tx_buffer(port)
送信バッファをクリアします。
引数
名称 | 型 | 内容 |
---|---|---|
port | serial.Serial | シリアルポート |
戻り値
なし
get_ports()
get_ports()
使用できるシリアルポートの一覧を取得します。
引数
なし
戻り値
型 | 値 | 内容 |
---|---|---|
list[str] | - | ポート名のリスト |
hex_from()
hex_from(character)
16進数を表すアスキー文字を数値へ変換します。0
-9
,A
-F
以外の数値を入力した場合の値は不定です。
引数
名称 | 型 | 内容 |
---|---|---|
character | int | 文字のアスキーコード |
戻り値
型 | 値 | 内容 |
---|---|---|
int | - | 数値 |
is_initialized()
is_initialized(port)
シリアルポートが初期化されているかどうかを確認します。
引数
名称 | 型 | 内容 |
---|---|---|
port | serial.Serial | シリアルポート |
戻り値
型 | 値 | 内容 |
---|---|---|
bool | True | 初期化済み |
False | 未初期化 |
is_readable()
is_readable(port)
シリアルポートからデータを取得できるかどうかを確認します。
引数
名称 | 型 | 内容 |
---|---|---|
port | serial.Serial | シリアルポート |
戻り値
型 | 値 | 内容 |
---|---|---|
bool | True | 受信バッファにデータあり |
False | 受信不可 |
is_there_some_ports()
is_there_some_ports()
使用できるシリアルポートが存在するかどうかを確認します。
引数
なし
戻り値
型 | 値 | 内容 |
---|---|---|
bool | True | シリアルポートあり |
False | なし |
is_writable()
is_writable(port)
シリアルポートへデータを送信できるかどうかを確認します。
引数
名称 | 型 | 内容 |
---|---|---|
port | serial.Serial | シリアルポート |
戻り値
型 | 値 | 内容 |
---|---|---|
bool | True | 送信可 |
False | 送信不可 |
lrc8()
lrc8(data)
8ビットのLRCを計算します。
引数
名称 | 型 | 内容 |
---|---|---|
data | bytes | 計算対象のバイト列 |
戻り値
型 | 値 | 内容 |
---|---|---|
int | - | LRC8 |
millis()
millis()
現在のシステム時間をミリ秒単位で取得します。
引数
なし
戻り値
型 | 値 | 内容 |
---|---|---|
int | - | システム時間 |
open_on_system()
open_on_system(path)
指定されたパスのファイルをシステムの既定のアプリケーションで開きます。
引数
名称 | 型 | 内容 |
---|---|---|
path | Path | ファイルパス |
戻り値
なし
write_binary()
write_binary(port, data)
バイト列をシリアルポートへ送信します。
引数
名称 | 型 | 内容 |
---|---|---|
port | serial.Serial | シリアルポート |
data | int | 送信するデータ |
bytes | 送信するデータ列 |
戻り値
なし
write_in_ascii()
write_in_ascii(port, data)
アスキー表現のバイト列をシリアルポートへ送信します。
引数
名称 | 型 | 内容 |
---|---|---|
port | serial.Serial | シリアルポート |
data | int | 送信する文字 |
bytes | 送信する文字列 |
戻り値
なし