Armadilloフォーラム

I2C(CON14)のPU抵抗値

pingtaro

2017年8月21日 18時10分

Armadilloを初めて使用するため、マニュアルを読んでいます。
420をI2Cマスタとして、スレーブデバイスを制御しようとしています。

CON14のI2CのPU抵抗値に関し、マニュアルにさまざまな記載があり、
420内でのI2C(CON14)のPU抵抗値がわからないのでご教示ください。

マニュアルの記載
ハードウエアマニュアル付録B→100kΩPU(全ての信号について、出力電流をstd)。
ソフトウエアマニュアル→22kΩPU、[c]RTCオプションモジュールで1kΩPU。
実践開発ガイド→A/DコンバータとのI2C利用例で420外部で10kΩPU。

コメント

at_yashi

2017年8月25日 10時39分

> マニュアルの記載
> ハードウエアマニュアル付録B→100kΩPU(全ての信号について、出力電流をstd)。

プルダウン (PD)でしょうか。

マニュアルに記載のある通り、SoC の「リセット解除後の信号状態」です。ソフトウェアが
なにも動いていない状態では、 SoC 内部のデフォルトで 100 kΩ でプルダウンされています。
初期化が終わるまでこの状態なので、それを考慮してハードウェアを設計してください。
この時間を短くしたい場合は、ブートローダーなどで設定を変更しても良いと思います。
ただし、どうしても変更までの時間はできてしまうので、ハードウェアでの考慮は必要です。

> ソフトウエアマニュアル→22kΩPU、[c]RTCオプションモジュールで1kΩPU。

Linux が I2C として使うときに I/O の設定を 22 kΩ のプルアップに変更しています。
設定いているのは、↓このファイルです。
linux-3.14-at/arch/arm/mach-imx/armadillo4x0_extif.c

また RTC のオプションモジュールでは、この信号線上に 1 kΩ のプルアップ抵抗がついています。

> 実践開発ガイド→A/DコンバータとのI2C利用例で420外部で10kΩPU。

作った基板に 10 kΩ のプルアップ抵抗がついているということです。

使う機能に合わせて、SoC の内部抵抗と外部抵抗の値を決めてください。