1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

GoAdvent Calendar 2024

Day 20

Windowsのシリアルポートの取得

Last updated at Posted at 2024-12-19

Windowsパソコンに接続されているシリアルポートの一覧を出力するツールをGo言語で作成しました。コマンドラインなどから実行すると表示されます。zero-kb02 はもちろんRaspberry Pi PicoやArduinoなどのマイコン開発などに役立ちます。実はtinygo portsの出力とあまり変わらないのですが、他のプロセスによって使用中の場合busyと表示されます。

実行例
image.png

実行ファイル

https://github.com/rdon-key/serialList/blob/main/bin/serialList.exe
赤丸よりダウンロードしてください。
image.png

ソースコード

GitHubで公開しています:
https://github.com/rdon-key/serialList/tree/main

技術解説

すべてGo言語で記述されています。Windowsのシステム情報を取得する実装例としてご参照いただければと思います。

  1. レジストリからシリアルポートの一覧を取得
    ・SYSTEM\CurrentControlSet\Enum\USB
    ・HARDWARE\DEVICEMAP\SERIALCOMM
  2. USBデバイスの場合はVID/PID情報を取得
  3. Win32 APIで各ポートの使用可能状態をチェック
  4. 結果表示

シンプルですが、開発時の作業効率向上にお役立てください。フィードバックやプルリクエストも大歓迎です!

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?