原稿の直し2010年01月13日 23時34分38秒

今回の記事のテーマは1ページで完結するのが難しかったため、例え話が分かりづらくなってしまいました。 手直しの依頼が来たので、これから手直しします。

レジスタ設定ではまる2010年01月14日 23時59分30秒

組込みの「醍醐味」のひとつである、ワンチップマイコン内蔵コントローラを動作させるためのレジスタ設定にはまっています。

「モジュールスタンバイ」解除

SHは内蔵コントローラの単体のモジュール単位で省電力設定が出来るようになっています。シリアルコントローラ0,1,2とあるとそれぞれについて設定できます。リセット後はこの設定が全て省電力状態として動作しない設定になっています。

スタンバイを解除してからでないとそれぞれのコントローラのレジスタへの書き込みが全て無効になってしまいます。 こちらも同様にはまったようですね。

本家の情報はこちら

割込みが入らない

I2Cバス用コントローラで送信側の割込みとして「送信エンプティ割込み」と「送信完了」割り込みの2種類があります。 今回、エンプティ割込みは入るものの完了割込みが入らなくて悩んでいます。現在試行錯誤中です。

はまったレジスタ設定の根本原因2010年01月16日 23時21分34秒

はまった話ですが、根本的な原因は二つでした。

  1. ハードウェア設計ミスでプルアップすべきポートがプルアップされていなかった
  2. SHのI2Cバス3コントローラのビット同期回路の機能の問題

Nチャネルオープンドレイン出力はプルアップしないと通信利用不可

今回はまったコントローラの出力ポートはNチャネルオープンドレイン出力になっています。Nチャネルオープンドレインの解説はこちらにお任せ。 汎用入出力ポート設定にしてもデータが出力されなかったためよくよくデータシートを見直して気付くまでに2日もかかりました。

ビット同期回路なんて今回は余計だった

コントローラ的には送信レジスタにデータを書いたらデータは出力されるもの、という考えが間違いでした。今回のコントローラは非常に用心深い賢い回路が搭載されていて、クロックマスターとして動作する場合でも自分が出力したはずのクロックをモニターして、そのクロックに同期してデータを転送する仕組みになっていたのです。

なので、プルアップされていないNチャネルオープンドレイン出力ポートのクロックはずっと0のままでデータ送信がいつまでも完了せず、送信完了割込みも発生しない、ということです。

USBオーディオ基板キット2010年01月20日 20時51分26秒

現在請けている仕事で動作検証する必要があって、なぜか個人で購入してみました。

欲しいのはI2S出力できるテスト用の環境でした。

いくつか検索してみてぴったりなのはツール工房さんのキットでした。

到着した基板の表は以下。
USBオーティオ基板表

基板の裏は以下です。

USBオーティオ基板裏



他にも以下のような情報があります。

エレキジャックオーディオ工房
若松通商のキット

IP電話F契約への切り替えの後遺症2010年01月21日 20時08分56秒

30円の通話料に対する請求書

以前、NTTコミュニケーションズとの関係を絶つためにIP電話CからIP電話Fへの契約変更をした時の後遺症が今月になって明らかになってしまいました。

契約変更の隙間でメンテナンスの関係でIP電話を使っていない時期があったのですが、その間だけ、フュージョンの回線を使った発信になってしまったようです。マイライン契約を東京電話にしていたらしいです。大昔のことなのですっかり忘れていました。

それにしてもフュージョンの請求事務手数料315円は悪質ですね。 30円の通話に対して請求する神経が分かりません。 もちろん、契約事務手数料が必要だという通知も貰っていたかもしれないのですが、それまで使っていなかったので気にせずに対応しなかったようです。