次ページへ »
電子工作においてパソコンとUSBを使ったシリアル通信をするためには、専用のケーブル(USB-TTLシリアル変換ケーブル)が必要となります。まともなケーブルであれば1500円前後しますし、Amazonで200円程度で売っている激安変換ケーブルは公式のドライバーが古く、Windows 10などの最新のOSでは導入できなくはないのですが、いろいろと手間がかかってしまいます。

ところが、Arduinoがあれば、これ単体でUSBシリアルケーブルを代用することが出来ます。わざわざ単体を強調したのは、特別なスケッチを書き込む必要が一切無いからです。

一般的なArduinoにはAVRマイコンが搭載されていることは多くの方がご存じだとは思いますが、Arduino Unoを始めとしたシリアルモニターが可能なモデルには、マイコンのすぐそばに小さなIC(Arduino Uno R3であれば「ATmega16U2」)が搭載されています。

ATmega16U2

このチップにはUSBコントローラーが搭載されており、このチップを介することで、USBによるシリアル通信を実現します。つまり、このチップを単体で稼働させることができれば、ArduinoがUSB-TTLシリアルケーブルの代替品になるというわけです。

ここからは海外の情報をもとに編纂した内容であることを前提にお読みいただきたいのですが、単体で稼働させるには基本的にメインのAVRマイコン(UnoならATmega328P)を抜くだけでOKです。シリアル通信ができる機種であれば、理論上はArduino互換品でも同様の効果が得られるはずです。

とはいうものの、使うたびにチップを抜き差ししているとピンが欠けてしまうリスクもあります。そこで、より簡単な方法としてArduinoのRESETピンとGNDピンをショートさせてしまう方法があります。こうすることで、マイコンが機能しなくなり、マイコンを抜き取った状態と同じ状況を作ることが出来ます。

最小配線図
[最小配線図]


UARTを使った通信が利用されるケースとして、ワンチップマイコンのデバッグや、Raspberry Piでのドライバーモニターなど、もっぱら電子工作プログラミングのデバッグが挙げられます。ですが、ジャンク大好き人間にとって有名な活用方法があります。

それがこのチェーン店のリサイクルショップでなら捨て値で買える、某通信会社のデジタルフォトフレーム(私はブックオフで780円で買いました)。このフォトフレームの基盤にはUART端子があり、これを介してカスタマイズされたAndroidアプリをインストールすることで、B-CASカードのみで、フルセグのデジタル放送を視聴できるようになるのです。

某社フォトフレームの基盤

それでは実験をしてみましょう。やり方はほかの方のブログなどで語り尽くされているので、ググって得られた情報をもとに、基板上のTX、RX、GND端子をArduinoのRX、TX、GNDピンにそれぞれ接続します。この写真では、単線ワイヤーを半田付けしたその先に、鰐口クリップをかませています。

配線例

Arduino IDE(シリアル通信ドライバーが含まれている)をパソコンにインストールしているのを確認して、オープンソースプロジェクトの通信ソフト「Tera Term」を起動しましょう。ここでArduinoのCOMポートを接続先として指定し、転送レートを調整すれば、このようにバッチリとデータを送受信できます。

シリアル通信の成功例

もちろん、改造は自己責任で。

カスタムアプリ導入結果
 | 2017年8月7日
Windowsのエクスプローラーをタブ化して単一のウィンドウで編集できるようになるEJIE TECHNOLOGYのユーティリティーソフト・Cloverの日本語化パッチをアップデートしました。これにより、新しく追加されたショートカット編集ページなどでも日本語が正しく表示されるようになります。TNKソフトウェア版はClover日本語化パッチの先駆けであるとともに、導入補助ツールが同梱されており、どなたでも簡単に日本語化を行えます。

2017年8月3日
Visual Studio 2017のJavaScriptクロスプラットフォームプロジェクトはCorodovaの技術を用いてビルドされています。従来のCordovaではNode.jsを導入して、コマンドラインよりゴリゴリビルドするのが定石でしたが、Visual Studioならそういった面倒な手間を一手に担ってくれるので、開発効率が格段に上がります。

UWPのAPIの大部分もJavaScriptとして、そのまま利用することができます。しかしながら、画像やビデオのサムネイル画像を作成してくれるFileThumbnailサンプルなど、ローカルファイルを参照するプログラムをそのまま移植しても、Corodovaプロジェクトではエラーになってしまいます。

これはVisual Studioが作製するHTMLテンプレートにXSSの危険性を抑えるためのメタタグ「Content Security Policy(CSP)」がUWPの仕様を定義していないために起こります。この問題を解決するには、UWPのローカルファイル参照プロトコルである「blob」を許可するコードを追加すれば良いことになります(青色の文字が追加した箇所)。

<meta http-equiv="Content-Security-Policy" content="default-src 'self' data: gap: blob: 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *">

これにより「URL.createObjectURL」で変換したファイルをHTMLファイルで自由に使うことができるようになります。

2017年7月19日
マウスカーソルのすぐそばでIMEが有効になっているかの状態を一目で確認できるユーティリティ「IMEステータス」のVer 2.17を公開しました。このバージョンでは、半角状態の判定を有効にした場合、64bit OSで識別時にエラーが発生することがある問題を修正しています。

2017年7月19日
ホームセンターの浴室コーナーで知ったネタですが、今時の浴室の壁は断熱材として金属板を使っており、その上から防水壁紙を貼っています。そのため、タイルではない今時の浴室の壁であれば、磁石がひっつきます。既存のよくある吸盤タイプは素材が劣化しやすく、吸着力がすぐ落ちてしまいますが、100円均一で売っているネオジム磁石なら大抵のものを半永久的に固定することができます。DIYの際の参考にいかがでしょうか。

2017年7月12日
マウスカーソルのすぐそばでIMEが有効になっているかの状態を一目で確認できるユーティリティ「IMEステータス」のVer 2.16を公開しました。このバージョンでは、Windows 7で起動しない問題を修正しています。

普段はベクターでの公開に合わせてアップロードするのですが、今回のは深刻な不具合のため、例外的にTNKソフトウェアサイト内にて先行で公開いたしました。

2017年7月5日
モトローラ社のDSDS対応SIMフリー「Moto G4 Plus」の中古を購入したのですが、近所に専用の液晶保護フィルムが売っていなかったので100円均一の保護フィルムを切って自作してみることにしました。結論から言えば、カッターナイフだとボタンの周辺が自然に浮き出てしまい、それが気泡の原因となってしまうので断念しました。おそらくカッティングマシンなどの正確に切断できる機械を使えば、ちゃんと使えると思うのですが、それならネットで市販品を買った方が安いので、供養の意味を込めて私が独自に作成した型紙を無料で配布します。SVG形式なので、InkScapeをはじめとするベクターグラフィック作成ソフトで再編集が可能です。


ダウンロードはこちらから
2017年7月5日
マウスカーソルのすぐそばでIMEが有効になっているかの状態を一目で確認できるユーティリティ「IMEステータス」のVer 2.15の機能限定版となる無料版を「オールフリーソフト」で取り上げていただけました。

詳細な解説を書いていただいたことに、この場を借りてオールフリーソフトの管理人様にお礼を申し上げます。


(※スクリーンショットは完全版のものです)
2017年6月26日
マウスカーソルのすぐそばでIMEが有効になっているかの状態を一目で確認できるユーティリティ「IMEステータス」のVer 2.15を公開しました。このバージョンでは、Windows 8.1より前のOSでは、タスクトレイのアイコングループにおけるアプリのアイコンが見づらいとの指摘がありましたので、Windows 10より前のOSでは従来の黒縁のアイコンを表示するように修正しました。

 
※スクリーンショットはイメージです
2017年6月22日
ボタンやスクリーン、キーボードと言った、操作に必要なレイアウトのデザインが自由にできるリモートデスクトップアプリ「デスクトップPCコントローラー for Windows」および「デスクトップPCコントローラー for Windows 10」のスキン作成ソフトとクライアントソフトをアップデートしました。最新版では、コマンド実行時において、起動引数のためなどの空白文字が含まれていると異常終了する問題を修正しています。


2017年6月3日
次ページへ »