RXマイコン DMA or DTCを使ったI2C通信

はじめて投稿します。

RXでDMAかDTCを使ったI2C通信を行うことになりました(接続先はEEPROM)。
実装するために参考になるアプリケーションノートやWebサイトがありましたら
お教え頂けないでしょうか。よろしくお願いします。

Parents
  • こば さん、こんにちは。NoMaYと申します。

    そのものズバリでは無いですけれども、以下のFITモジュールリストのウェブページを開いてEEPROMの文字列を検索すると、以下の3つのFITモジュールが見付かります。この辺りが、取っ掛かりではないかな、と思いました。(実は、ルネサスドキュメント検索、CS+のスマートブラウザ、e2 studioのスマートブラウザ、と試してはみたのですけど、あまりパッとしない検索結果になりましたので、このFITモジュールリストのウェブページの方が良そうそうです。)

    ただ、取っ掛かり、とは書きましたけれども、初心者の方であれば、FITモジュールを改造することは困難かと思いますので、EEPROMの方をI2C方式のものではなくSPI方式のものに変更した方が得策かも知れない、とも思います。

    FITモジュールリスト
    www.renesas.com/jp/ja/software-tool/fit-modules-list

    EEPROMアクセス クロック同期式制御モジュール    ← SPIですがDMA/DTC対応です、RX23T対応です
    EEPROMアクセス I2Cバスインタフェース(RIIC)モジュール    ← I2CですがDMA/DTCは非対応です(そもそもRIIC操作レイヤが非対応なのです)、RX23T非対応です
    EEPROMアクセス 簡易I2Cモジュール    ← I2CですがDMA/DTCは非対応です(そもそも簡易IIC操作レイヤが非対応なのです)、RX23T非対応です

     
    あと、ルネサス社のEEPROMを採用されるのであれば、以下のウェブページも参考になるかな、と思います。(ただ、こちらもDMAやDTCは非対応です。アプリケーションノートの中でDMAの文字を検索しても見付かりませんでした。)

    I2CシリアルEEPROMドライバ
    www.renesas.com/jp/ja/software-tool/i2c-serial-eeprom-driver

    上級者の方ですと、RXスマートコンフィグレータのCGコンポーネントで、あるいは全て自前の手書きで(例えば、DMAやDTCは未使用だと思いますけど、以下のウェブページなど)、実現することも出来ると思いますが、グーグル検索してみても、初心者向け/上級者向けを問わず、近そうなもの(DMAやDTCを使うもの)は無さそうでした。

    RX23TのIICを使い、EEPROMを制御
    esyokunin.dee.cc/13x_MpuGakusyuu2/241_Rx23tRiic_EepRom/241_Rx23tRiic_EepRom.html

    [関連リンク]

    Google検索: Renesas RX EEPROM IIC
    www.google.com/search?q=Renesas+RX+EEPROM+IIC
     

  • こんにちは。NoMaYです。

    FITモジュールリストのウェブページによると、以下のモジュールはRX110/111/113/65Nのみ対応となっていますが、ソースコードをざっと見た感じでは、それらのデバイスのみに制限されるような記述は無さそうな印象ですね、、、

    EEPROMアクセス I2Cバスインタフェース(RIIC)モジュール    ← I2CですがDMA/DTCは非対応です(そもそもRIIC操作レイヤが非対応なのです)、RX23T非対応です
    EEPROMアクセス 簡易I2Cモジュール    ← I2CですがDMA/DTCは非対応です(そもそも簡易IIC操作レイヤが非対応なのです)、RX23T非対応です

     

  • チョコです。

    RXのIICの割り込みがどうなっているか分かりませんが、IICは1バイト転送ごとに判定を行うのが普通なので、DMAやDTCとかはあまり使わないですね。

    スレーブをEEPROMに限定すれば、データの転送に限定することで、使えないことはないかもしれませんが、EEPROMとの通信を十分に理解していないと実現は難しいでしょうね。

    EEPROMへの書き込みでは、その容量によって一度に書き込みができる最大バイト数が異なり、容量が小さいものでは16バイト程度からとなるので、それらにわざわざDMAやDTCを使うかの問題もあります。

    なぜ、DMAやDTCが必要かをよく検討されることをお勧めします。

    以上

Reply
  • チョコです。

    RXのIICの割り込みがどうなっているか分かりませんが、IICは1バイト転送ごとに判定を行うのが普通なので、DMAやDTCとかはあまり使わないですね。

    スレーブをEEPROMに限定すれば、データの転送に限定することで、使えないことはないかもしれませんが、EEPROMとの通信を十分に理解していないと実現は難しいでしょうね。

    EEPROMへの書き込みでは、その容量によって一度に書き込みができる最大バイト数が異なり、容量が小さいものでは16バイト程度からとなるので、それらにわざわざDMAやDTCを使うかの問題もあります。

    なぜ、DMAやDTCが必要かをよく検討されることをお勧めします。

    以上

Children
No Data