日記帳だ! with Tux on Libserver

二度目の大改造!! 日記帳…か?を継承し、より柔軟でパワフルなBlogに変身しました。

RSSに対応しています。リンク・コメント・トラックバックは自由にしていただいてほぼ問題ありません。
RSS購読方法、僕のリンク・コメント・トラックバックについての考えを読むことをおすすめします。

デバッガ用のピンを転用する

マイコンにデバッガを接続するためにはそのためのピンが必要だ。

というわけでデバッガ用のピンは他の機能に使わず、基板から取り出せるようになってるわけだが、

そのピンをデバッグのための信号を出すのに転用したいという話があった。

マイコンのピンがデバッガ用のピンぐらいしか空いていないので、これを使わざるを得ないという話だった。

確かにデバッガ用のピンを他の用途に使うことはできるが、デバッガが全く使えなくなっては困る。さてどうしよう。


考えた結果、製品自体が持っている通信インターフェースから指示を出してピンの機能を切り替えることにした。

特定の指示を送るとデバッガ用のピンをデバッグ用の信号出力に切り替えて、また別の指示を送るとデバッガ用のピンに戻すといった具合。

マイコンのピンの機能はレジスタを操作すれば変えられるので、

特定の指示が来たら、デバッガ用ピンを無効にしてGPIOとして使うように設定すればよいということだ。

ちなみにGPIOってGeneral Purpose Input/Output、普通の入出力ポートって意味ですね。


今回、デバッガとは別に通信インターフェースがあったので、このような方法が取れた。

ただ、そういう方法がなければ難儀したかも知れない。

マイコンがデバッガを失うということは、簡単にはマイコンのプログラムを書き換えられないということだ。

デバッガ用のピンを転用するためにデバッガ用ピンを無効にするプログラムをデバッガから送り込んだらもう最後、

もうデバッガは使えなくなってしまい、プログラムを書き換えるのに難儀することになる。

とはいえ、デバッガ以外でもプログラムを書き換える方法はあるから、どうにもならないわけではないんだけどね。

本当に必要ならデバッガ以外の方法でプログラムを書き換えることにしてデバッガを完全に無効化してしまうことはあると思う。


そういう通信インターフェースなどない場合に取り得る方法もいろいろあるんだろうが、

まず思いつくのはデバッガ用ピン以外のピンを1つ確保できるのなら、そこを切替スイッチとして使う方法かな。

どちらかというとデバッガ用のピンにも機能を割りあてて、必要に応じてデバッガも接続できるようにする設計向きかもしれないけど。

いずれにしても、何らかの方法でプログラム上でデバッガの有効無効を切り替えられるようにすれば、

デバッガと他の機能は両立する余地があるわけだ。


最初にデバッガ用のピンぐらいしか空いていないと書いたけど、

デバッガ用のピンのピンをデバッグ用にあけておく程度の余裕はあるとも言える。

おかげでデバッガ用のピンを他のデバッグ用途に転用する余地があったのだ。

とかなんとかで、デバッガ用のピン+少しの余裕があれば、かなり開発の助けになるなと感じている。


Author : Hidemaro
Date : 2016/03/04(Fri) 22:19
電気・数学・物理 | Comment | trackback (0)

Tools