MB96F6B6R : I2C Master クロックストレッチ

Tip / ログイン to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
MiNe_85951
Level 7
Level 7
Distributor - TED (Japan)
50 likes received 500 replies posted 50 solutions authored

MB96F6B6RのI2C Masterについて確認させて下さい。

ハードウェアマニュアルを参照したところ、

CLKP16MHz以上の場合はSCLストレッチ非対応と受け取れる文章がありました。

(MN704-00011-2v0-J P.624) 

現在の設定はCLKP1=4MHz設定で使用しており、ビットレートは100kbps想定です。

 ・CLKMC = 8MHz

 ・CLKPLL = CLKMC 2逓倍

 ・CLKS1 = CLKPLL

 ・CLKP1 = CLKS1 / 4 = 4MHz

 ・ICCR1NSF=1CS4:0=2

その時、 SCL周波数 = 4MHz / 2*12+17 = 97.56kHz

この場合、SCLストレッチは暗黙的に有効となりますか?

I2C SlaveデバイスはPSoC4Sを使用しているのですが、

I2CHWコンポーネントではMB96F6B6Rと通信ができなく、

EZI2Cコンポーネントのクロックストレッチを無効にしても通信が確立しません。

ただ、PSoC1のCY8C22345-24PVXA とMB96F6B6Rであれば通信が確立しています。

0 件の賞賛
1 解決策
MiNe_85951
Level 7
Level 7
Distributor - TED (Japan)
50 likes received 500 replies posted 50 solutions authored

実際の動作を確認し、自己解決しました。

MB96F6B6Rはクロックストレッチに対応していました。

元の投稿で解決策を見る

0 件の賞賛
4 返答(返信)
Takashi_M
Moderator
Moderator
Moderator
1000 replies posted 500 solutions authored 750 replies posted

確認ですが、

1)MB96F6B6RとPSoC4Sの通信ではクロックストレッチ有効/無効に関わらず、通信ができない。

2)MB96F6B6RとPSoC1のCY8C22345-24PVXAでは通信ができる。その際にクロックストレッチは無効。

で、宜しいでしょうか?

0 件の賞賛
MiNe_85951
Level 7
Level 7
Distributor - TED (Japan)
50 likes received 500 replies posted 50 solutions authored

1)MB96F6B6RとPSoC4Sの通信ではクロックストレッチ有効/無効に関わらず、通信ができない。

PSoC4SではI2CHWコンポーネント(クロックストレッチ有効のみ)、

EZI2Cコンポーネント(クロックストレッチ有効/無効のどちらでも)、

MB96F6B6RとI2C通信する際にI2C Masterのアドレスに対してACKを出力できていません。

ただ、PSoC4SはPCエミュレータ(Bridge Control Panelなど)では

正常にI2C Masterのアドレスに対してACKを返し、I2C通信が確立しています。

2)MB96F6B6RとPSoC1のCY8C22345-24PVXAでは通信ができる。その際にクロックストレッチは無効。

波形を確認したところ、

PSoC1とMB96F6B6RとのI2C通信ではクロックストレッチが有効になっているように見受けられ、

また、PSoC1のアプリケーションノートからも100kHz以上であればクロックストレッチに対応しているとの記載があり、MB96F6B6Rと正常にI2C通信が確立しています。

SlaveのACKが問題となっているので、

I2C Master側による問題ではないだろうと思っていますが、

MB96F6B6RとPSoC4Sのどちらに問題があるのか分からなくなり、

このような質問をさせて頂いております。

0 件の賞賛
MiNe_85951
Level 7
Level 7
Distributor - TED (Japan)
50 likes received 500 replies posted 50 solutions authored

実際の動作を確認し、自己解決しました。

MB96F6B6Rはクロックストレッチに対応していました。

0 件の賞賛

ご連絡、ありがとうございました。

自己解決されたとのこと、安心いたしました。

マナ何かございましたら、CDCにお問い合わせください。

0 件の賞賛