cancel
Showing results for 
Search instead for 
Did you mean: 

Legacy Products

MaMi_1205306
Honored Contributor

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 Likes
1 Solution
MaMi_1205306
Honored Contributor

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

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

View solution in original post

0 Likes
4 Replies
TakashiM_61
Moderator
Moderator

確認ですが、

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

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

で、宜しいでしょうか?

0 Likes
MaMi_1205306
Honored Contributor

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 Likes
MaMi_1205306
Honored Contributor

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

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

View solution in original post

0 Likes
TakashiM_61
Moderator
Moderator

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

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

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

0 Likes