CH559のデータシートを読んで見る+日本語化 その7 I/O、xBUS、タイマ

概要

前回はシステムクロックと割り込みを訳しました。今回はI/OとXBUS、タイマになります。

I/Oポート

上記に日本語化したドキュメントがあります。CH559は比較的GPIOが多いので、いろいろな用途に使えそうですね。

10.1 GPIO概要

ピン数はいろいろありますが、特定の機能を利用しようとすると用途別に利用できるピンが指定されています。その用途で利用しない場合には汎用ピンとして利用できるようです。

10.2 GPIOレジスタ

いろいろなレジスタがありますが、比較的一般的な構造のようです。今後実際にピンを利用するときの初期化時に中身を確認していきたいと思います。CH551/2用であればArduino開発環境があるのでpinMode()実装も参考になると思います。

おっ、今見たらCH559もサポートに追加されていますね。今度確認してみたいと思います。

10.3 P4ポート

出力専用ポートなので、ちょっと別で記述されていますね。

10.4 GPIOマルチプレックスとマッピング

一部だけマルチプレックスやマッピング機能がありますが、それほど多くはありません。SCK_のようにアンダーバーがついている機能がこれにあたります。標準的にはアンダーバー無しの記述があるピンを利用するのですが、アンダーバー付きの他のピンにも割り当てることが可能です。

11.xBUS外部バス

UARTを含む拡張バス用の設定です。UARTなどの個別のページを見たほうが良さそうです。

12. タイマ

非常に大きなページになります。タイマの機能を利用してPWMも実装しているため、いろいろ記述が多いです。がんばればDACにも使えると書いてありました。

12.1 Timer0/1

16ビットタイマ/カウンタで比較的自由に使えそうです。

12.2 Timer2

16ビットのオートリロード対応のタイマ/カウンタですが、UART0のボーレート発生器として利用することが多いと思います。

12.3 Timer3

通常のタイマ以外に、DMAやPWM、キャプチャ用途にも利用できます。

12.4 PWM機能

8ビットPWM(1/2)が2つと、Timer3を利用した16ビットPWM(3)の合計3つのPWMが使えます。

12.5 タイマ機能

タイマとして利用するときの細かい設定方法が書いてありました。

まとめ

やっとなんとなくの全体像が見えてきました。ざざっと翻訳してから全体の修正をするのと、実際に利用しながら動作確認をするのをそろそろ準備してきたいと思います。

コメント