シリアルOLED その3

カウンタを使用した高速シリアル通信の仕組みがわかりましたので、少し説明します。

CTRA を NCO・FRQA=0 として、PHSA の MSB をピンに直接出力し、
CTRB は NCO・FRQB=$40000000 で 4 サイクル毎のクロックを生成します。

手続きは以下のようになります。

  1. 転送する値を PHSA に読み込む
  2. FRQB設定
  3. ビット順を整えるように rol/ror を連続発行(転送ビット分)
  4. FRQBリセット

OUT レジスタの特定ビットを上げ下げするには演算が必要なのですが、
この手法により1命令で任意のビットを特定ピンへ出力できるようになります。

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。