Hobby Lab 趣味のモノ作り実験のサイトです。
Software OS Mint その他1
1.入出力
 (1)ttyコマンド
 (2)シリアル通信
 (3)Wineの入出力設定
2.USB
 (1)状態確認方法
 (2)CP2102
 (3)pl2303
 (4)CH341
3.ファイル
 (1)パーミッションとは
 (2)シンボリックリンクとは
4.コマンド
 (1)Python関係

Sf:OS関係
SfO:Mint 関係
 PCへMint導入
 アプリ導入
 その他1
 アイコンを作る
SfO:Ubuntu 関係
 PCへUbuntu導入
 アプリ導入
SfO:RaspberryPi 関係
はじめに
 RaspberryPiへOS導入
 アプリ導入
 Programming
シェル・コマンド関係
 LXTerminal
 sed
 i2ctools
I/O・アプリ関係
 RealVNCとViewer
 IO動作確認
 MySQL
 Python
 raspberrypiハード
Sf:Server 関係
SfS:レンタルサーバー
 CORE-X
SfS:Windowsサーバー
 XAMPPの概要と導入
 Note XAMPP
 Note XAMPP Err
 Note Apache
 Note PHP
 Note MyQSL
Sf:Programming関係
C 関係
 C言語でプログラムミング
Python 関係
はじめに
 RaspberryPi開始
 Windows開始
共通事項
 プログラミングNote
 パッケージ導入 pip
 標準ライブラリ
 Serialライブラリ
 SMBusライブラリ
HTML関係
 開始とNote
Sf:IDE 開発環境
SfI:STM32
 STM32CubeIDEでプログラム
 HALと直接レジスター操作の速度
SfI:CH32
 MounRiver Studioでプログラム
SfI:Arduino
各ボード毎の設定
 Uno 設定
 Mega2560 設定
 DUE_CH340 設定
 ESP_WROOM02 設定
 ESP12F_D1mini 設定
 ESP32 設定
 CH32V 設定
ライブラリー
 OneWire使い方
その他
 日本語リファレンス(外部リンク)
 WiFi Macアドレスを調査
Sf:AP アプリ関係
SfA:エディタ
SfA:回路図CAD
SfA:回路シミュレータ
 シミュレーションの設定
 色の設定
 電源設定設定
SfA:リモートソフト
Sf:Pt プロトコル関係
SfPt:MODBUS
Sf:Otgers その他

1.入出力

 (1)ttyコマンド

標準入出力の端末ディバイスを表示します。
端末からコマンド tty で確認します。
shobbylab@GZBOX~$ tty
/dev/pts/0 shobbylab@GZBOX~$
pts/0と表示がありました。
もう一つ端末を起動してコマンド tty で確認すると
pts/1と表示されます。つまり、ptsは端末で、/番号が端末の番号になっています。
では、端末からコマンドで文字を端末へ送ってみます

 (2)シリアル通信

Windowsでは com* を通して通信を行っています。
しかしLinuxでは tty* を通して通信を行っています。
例えば 近年のノートパソコンでは RS232C が無くなり、USB を通して通信を行っている場合は ttyUSB* が作成されています。
RaspberryPiでは、端子が決まっておりその場合は ttyAMA0 になっている。
この時に通信速度などの設定確認や変更はコマンド stty で出来、例えば設定確認は -F オプションで可能になる。
shobbylab@GZBOX~$ stty -F /dev/ttyUSB0
speed 9600 baud; line = 0;
-brkint -imaxbel
shobbylab@GZBOX~$

 (2)Wineの入出力設定

Linux などで windows プログラムを実行する場合は Wine を通して実行される。
しかしシリアル通信による入出力先としてWindowsでは com* 、Linuxでは tty* で信号のやり取りをしているため、Windowsのプログラムでは com* を通した通信が行えない。
このため Wine ではレジストリーで対応している。
使用するための手順の例はUSB接続で下記に示す

①USB変換器を接続する。
/dev/ディレクトリにUSBの入出力ファイル ttyUSB* が作成されている事を確認
hobbylab@GZBOX:~$ ls /dev/tty*
/dev/ttyUSB0
hobbylab@GZBOX:~$

Windowsでは com* *=1〜で接続するため次に ttyUSB0 を com1 とリンクさせる。
②Wineのレジストリーを起動する。
hobbylab@GZBOX:~$ wine regedit
『HKEY_LOCAL_MACHINE\Software\Wine\Port』に下記内容を追加。
③追加する内容は
『名前』に『COM1』
『データ』に『/dev/ttyUSB0』とする。
④設定が完了。関係アプリを終了する。
Wineレジストリーエディターは右上❌をマウスクリックして終了。
端末は『exit』、『Enter』で終了する。
hobbylab@GZBOX:~$ wine regedit
hobbylab@GZBOX:~$ exit

⑤mintを再起動する。
⑥USB変換器が接続されていないなら接続する
⑦再起動後、端末を起動して下記パーミッションを設定する。
hobbylab@GZBOX:~$ sudo chmod 666 /dev/ttyUSB0
hobbylab@GZBOX:~$

ーーーー これから以下はこの導入が終わった後のアプリの起動手順 ----
⑧USB変換器が接続されていないなら接続する
⑨接続した機器・装置の電源を入れる。
⑩アプリを起動する。

ということになる。





2.USB

 (1)状態確認方法

状態は端末から、コマンド lsusb で確認します。
shobbylab@GZBOX~$ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 0573:1573 Zoran Co. Personal Media Division (Nogatech) USB Audio and HID
Bus 001 Device 003: ID 056e:1084 Elecom Co., Ltd ELECOM TK-FDM063
Bus 001 Device 002: ID 0bda:c821 Realtek Semiconductor Corp. Bluetooth Radio
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
shobbylab@GZBOX~$
IDについては最初がベンダーID、次の番号をデバイスIDと言います。
ちなみにDevice 003 は Elecom の無線マウス、キーボード用USBドングル TK-FDM063 です。
ベンダーID=056e デバイスID=1084 という事が判ります。

USBとアプリをつなぐ一例とし /dev/tty* に出力するために必要なモジュールを導入します。

Windows アプリでは com で接続しているので、mintで使用するなら Wine で使用することになりますが、このときは /dev/tty* と com* を結び付けて使用することになります。
詳細は個別の項目を参照下さい。

 (2)CP2102

CP2102のUSB変換器をUSBコネクターへ接続します。
端末から、コマンド lsusb で確認します。
shobbylab@GZBOX~$ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 0573:1573 Zoran Co. Personal Media Division (Nogatech) USB Audio and HID
Bus 001 Device 005: ID 10c4:ea60 Silicon Labs CP210x UART Bridge
Bus 001 Device 003: ID 056e:1084 Elecom Co., Ltd ELECOM TK-FDM063
Bus 001 Device 002: ID 0bda:c821 Realtek Semiconductor Corp. Bluetooth Radio
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
shobbylab@GZBOX~$
Device 005が追加されていることが判ります。
プロダクトID=10c4 で会社名はシリコンラボという事が判ります。
またデバイスID=ea60 は CP210x UARTブリッジ です。
CP210Xのドライバーは標準で入っているはずです。
確認方法は端末から、コマンド find /lib/modules -name cp210x.ko で確認します。
shobbylab@GZBOX~$ find /lib/modules -name cp210x.ko
/lib/modules/6.1.0-12-amd64/kernel/drivers/usb/serial/cp210x.ko
/lib/modules/6.1.0-33-amd64/kernel/drivers/usb/serial/cp210x.ko
/lib/modules/6.1.0-32-amd64/kernel/drivers/usb/serial/cp210x.ko
shobbylab@GZBOX~$
表示されたように入っているようなので CP2102 をUSBに接続して端末から /dev/ttyUSB* ファイルの有無を確認します。
ついでにファイルのパーミッションを確認します。
shobbylab@GZBOX~$ ls -l /dev/ttyUSB*
crw-rw---- 1 root dialout 188, 0 4月 26 09:56 /dev/ttyUSB0
shobbylab@GZBOX~$
パーミッション660 で ファイル名 ttyUSB0 が追加された事が判ります。

 (2)pl2303

CP21022と同じくドライバーが最初から入っているので、pl2303のUSBを差し込めば、/dev/ttyUSB* で表示がされる。

 (3)CH341

CH341はドライバーを入れる必要が有るので、関係URLからダンロードしてドライバーを導入すれば、同じ




3.ファイル

 (1)パーミッションとは

ディレクトリーやファイルのアクセス・読込み、変更・書込み、実行の権限を言います。
権限は『所有者』『グループ』『第三者』の3つに使用者に対し個別に付与できます。
また権限についてはファイルやディレクトリーに対し
 r 読む込む事ができる(下表では『読む』)
 w 書き込む事ができる(下表では『書く』)
 x 実行する事ができる(下表では『実行』)
の3つの動作を組み合わせて下表の様に8つに分けて区別します。
番号記号読む書く実行
0---×××
1--x××
2-w-××
3-wx×
4r--××
5r-x×
6rw-×
7rwx
HTMLデータをFTPで転送したあと、ディレクトリーやファイルのパーミッションを下記の様に設定下さい。
なお番号の上位から使用者として『所有者』『グループ』『第三者』の権限を示します。
ディレクトリー705又は755
ファイル604又は644
PHPファイル705又は755
パーミッションの変更方法はコマンドの場合は
chmod *** フォイル名.属性
で変更出来ます。

 (2)シンボリックリンクとは

Windows 『で言うショートカット』の様なもの。
元のファイルやディレクトリの名前を違った場所に登録するものです。
違った場所に元のファイルやディレクトリをコピーするものと違います。
特にディレクトリーをシンボリックリンクした場合でシンボリックリンクした違った場所のディレクトリー内のファイルを削除すると元のディレクトリー内のファイルも削除されるので注意下さい。
違った場所に格納されているシンボリックリンクされたディレクトリーを確認するには
一例として端末からコマンドで ls -l などで確認が出来ます。
shobbylab@GZBOX~$ ls -l www/
lrwxrwxrwx 1 hobbylab hobbylab 13 4月 4 16:38 html -> /var/www/html
shobbylab@GZBOX~$
場所をroot / から説明すると、/home/hobbylab/www/html はシンボリックリンク元が /var/www/html であることが判ります。
ちなみにパーミッションは777になっていますが実際の動作はシンボリックリンク元のパーミッションになります。
shobbylab@GZBOX~$ ls -l /var/www/
drwxr-xr-x 14 hobbylab hobbylab 4096 4月 4 16:38 html
shobbylab@GZBOX~$





4.コマンド

 端末を使用してコマンド入力により操作することがある。
 しかし頻度が少ないため忘れるのでここで記録しておく。

 (1)Python関係

a.pythonの実行ファイルの居場所
 which python3

b.インストールしているモジュールの一覧コマンドは
 pip list

c.モジュールのインストール
 Debianパッケージではモジュールのインストールは
 『apt install python3-*****』コマンドを使用する。
 Debianパッケージを使用しない場合は違うので注意すること。
 (a)シリアル通信
   apt install python3-pyserial
 (b)MySQL
   apt install python3-pymysql

d.モジュールの削除
 apt remove ******

e.aptのヘルプ
 apt --help

  nautilus admin:/



































更新日 2025/11/25 19:37  管理者 平林 剛Hirabayashi Takeshi