7 Replies Latest reply on Aug 8, 2018 8:46 PM by fj7875cs_1495391

    Smart I/OでのPWM信号のマスク方法

    fj7875cs_1495391

      使用するデバイスはPSoC4100Sです。

      Smart I/OにPWM信号と2つのデジタル信号を入力させます。

      出力は2つのPWM信号です。入力した2つのデジタル信号に応じてPWM信号を出力するか、マスクするかを決定します。

      要はAND回路のような働きをさせたいです。

      この際、デジタル信号はソフトウェアで切り替えたいのですが、TCPWMブロックを使う以外で何か方法がありますでしょうか。

      LUT0とLUT1の設定は同じです。

      top design.png

      configure_smartIO.png

      (6/18追記)LUTの設定が間違っていたので修正しました。

      LUT0_1.png

        • 1. Re: Smart I/OでのPWM信号のマスク方法
          hrtk

          少しディジタルコンポーネントは増えてしまいますが、Digital Virtual MuxとLogic Low, Logic High コンポーネントを利用してdata1, data2のソフトウェア制御は可能になります。

          ただ、いただいている質問の認識が間違っているかもしれないので、ぜひ追加でご質問ください。

          よろしくお願い致します。

          Hirotaka Takayama

          • 2. Re: Smart I/OでのPWM信号のマスク方法
            e.pratt_1639216

            It sounds like you want the PWM to be masked in real-time based on the two input "0" signals? The muxes don't seem to support this in hardware from what I can see. If you setup an interrupt controller ISR to handle the input data signals, and then enable/disable the PWM based on that, you might get similar functionality to an AND circuit.

            • 3. Re: Smart I/OでのPWM信号のマスク方法
              fj7875cs_1495391

              LUTの設定が間違っていたので訂正いたしました。

               

              私がやりたいことは、data1、data2が"0"のときはgpio0、gpio1はLow出力。

              data1が"1"のときgpio0からPWM出力、同様にdata2が"1"のときはgpio1からPWM出力です。

               

              ご紹介いただいたデジタルロジックはソフトウェア上で変更できないと思っていましたが、

              例えばLogic Low⇒Logic Highにソフトから変更する方法がありますでしょうか?

              • 4. Re: Smart I/OでのPWM信号のマスク方法
                ndma

                下記のLUT設定でテストできますか?

                制御信号はGPIO側で、DATA側ではないことに注意してください。

                Data0はPWM信号、gpio0とgpio1は制御信号、gpio2とgpio3は出力信号です。 LUT2とLUT3はロジック制御に使用されます。

                 

                1.jpg2.jpg3.png

                 

                Regards,

                Nada

                1 of 1 people found this helpful
                • 5. Re: Smart I/OでのPWM信号のマスク方法
                  fj7875cs_1495391

                  お返事が遅くなり申し訳ございません。

                  ご提案いただいた設定について質問があります。

                  gpio0,gpio1の制御信号は外部から入れるものということでしょうか?

                  (内部信号をソフトで変更は諦めるべきですか?)

                  • 6. Re: Smart I/OでのPWM信号のマスク方法
                    ndma

                    回答が遅くなり大変申し訳ありません。

                     

                    > gpio0,gpio1の制御信号は外部から入れるものということでしょうか?

                    はい、gpio0,gpio1の制御信号は外部から入れるものです。

                    この方法では、ファームウェア制御のデジタル出力ピンをgpio0とgpio1の入力ピンにワイヤで外部から接続します。

                    これで、ファームウェアでのデジタル出力ピンの変更はSmartIO LUTに反映されます。ただし、追加のGPIOを使用し、外部接続が必要です。

                     

                    以上、よろしくお願いいたします。

                    Nada

                    1 of 1 people found this helpful
                    • 7. Re: Smart I/OでのPWM信号のマスク方法
                      fj7875cs_1495391

                      承知しました。

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