2 Replies Latest reply on Apr 22, 2020 6:10 PM by JuyoungJ_06
      • 1. Re: Community Translation - Controlling SPI I/O Pins Through Firmware for PSoC 6 MCU Devices - KBA226844
        NoTa_4591161

        Original KBA: KBA226844

        Controlling SPI I/O Pins Through Firmware for PSoC 6 MCU Devices - KBA226844

         

        Translated by Kenshow

        ==============================

         

        タイトル: PSoC 6 MCUデバイスのファームウェアを介したSPI I/Oピンの制御 - KBA226844

         

        バージョン:**

         

        質問:

        PSoC®6 MCUデバイスのSPIピン(CLK、MOSI、MISO、SS)は、ファームウェアのランタイム中にどのような制御ができますか?

         

        回答:

        SCB_SPIコンポーネントをTopDesignに配置した後、SPIマスター/スレーブ機能をその場で無効/有効にすることができます。以下のソリューションはファームウェアのピンを制御する手順を提供し、コードスニペットはAPIを使用して推奨されるソリューションを実装しています。

         

        ファームウェアのソリューション:

        一般に、ピンはファームウェアまたはハードウェアのいずれかで制御できます。デフォルトでは、すべてのSPI I/OピンはSCBハードウェアブロックによって制御されます。そのため、ファームウェアで制御できるようにするには、SCBブロックからSPIピンを切断する必要があります。

        次の手順に従って、SPI I/OピンとSPI SCB間のハードウェア接続を切断し、ファームウェアで制御を有効にします。

        1. SPI I / Oピンに対応するHSIOM_PRTx_PORT_SELxレジスタのビットに「ビット0」を書き込みます。
        2. GPIO_PRTx_CFGレジスタを変更して、SPI I / Oピンの駆動モードを設定します。

        詳細については、 Architecture Technical Reference ManualおよびRegister Technical Reference ManualのI/Oシステム(HSIOM)を参照してください。次のコードスニペットを使用して、APIを使用して推奨されるソリューションを実装できます[SPI CLKピンをP10.2にすることを検討してください。これはファームウェアで制御されます]。

         

        コードスニペット:

         

        // デフォルトのSCB_SPI構成設定を格納する変数

         

        uint32 temp;

         

        // アプリケーションが必要とする新しいドライブモード設定を格納する変数

        // 設定する駆動モードが高インピーダンスの場合、drive_mode = 0xFFFFF0FF

         

        uint32 drive_mode;

         

        // SCB_SPIHSIOM構成を保存します

         

        temp = CY_GET_REG32(CYREG_HSIOM_PRT10_PORT_SEL0);

         

        // SPI CLKピンをファームウェアで制御されるように設定します

         

        CY_SET_REG32 (CYREG_HSIOM_PRT10_PORT_SEL0, temp & 0xFFE0FFFF);

         

        // SPI CLKピンの駆動モードを設定します

         

        CY_SET_REG32 (GPIO_PRT10_CFG, drive_mode);

         

        / /デフォルトのSPI機能をロードします(つまり、CLKピンがSCB_SPIハードウェアブロックに接続されています)

         

        CY_SET_REG32 (CYREG_HSIOM_PRT10_PORT_SEL0, temp)

         

        注意:

        すべてのSCBブロックとTCPWMなどの他の周辺機器も、HSIOMとドライブモードレジスタを変更することにより、ファームウェアで制御できます。

         

        ==============================

         

        14-Apr-2020

        Kenshow

        • 2. Re: Community Translation - Controlling SPI I/O Pins Through Firmware for PSoC 6 MCU Devices - KBA226844
          JuyoungJ_06

          Hello, Kenshow-san

          We receive your translation, it will be published to KBA to Community.

          It will be reviewed internally.

          After upload, You will receive the points as the word of KBA.

           

          Due to the current volume of works (waiting review, etc.), Please bear with me for the delayed the response.

          It could be delayed, but it will be processed soon.

           

          Thanks for your contribution to CDC!

          Will keep you update the status.

           

          Thanks,

          Jenna Jo