
PWMジェネレーターを使用したADCトリガー

DSPIC33C MPデバイスのPWMとADCの使用方法を学ぶLab 7:DSPIC33CKおよびDSPIC33CHデバイスのコード例ADC入力をトリガーするPWMジェネレーターの基本的な構成を示すデバイス。 ADC割り込みサービスルーチン(ISR)の内部では、ユーザーがトリガー応答の遅延を観察できるようにテストピンを切り替えます。また、初期の割り込み生成、コンパイラ属性を備えた代替作業登録、およびサンプリング時間調整最適化機能を使用して、トリガー応答時間を調整します。
それぞれの製品Webサイトの最新のデータシートを常に確認してください。

デバイスがプログラムされ、MCUが起動した後、PWM1Hは専用のADCコア0をトリガーします。約277NSトリガー応答遅延後、ADCコアO ISRテストピンインジケーターTP55トグルは画面キャプチャを参照してください。 ADCコア0の初期割り込みジェネレーターが有効になるため、トリガー応答遅延が最適化されます。
デジタルパワー開発ボードのオンボードプッシュボタンユーザーを押すことにより、PWM2Hは専用のADCコア1をトリガーします。 Trigger Response Delayはさらに削減されます。なぜなら、初期割り込みジェネレーターが有効になっていることを除けば、ADC Core 1 ISRはコンパイラのコンテキスト属性を使用してISRを代替レジスタセットに関連付けました。
オンボードプッシュボタンユーザーを再度押すことにより、PWM3Hは共有ADCコア6をトリガーします。約335NS後、ADCコア6 ISRテストピンインジケーターTP50トグルは、以下の画面キャプチャを参照してください。共有ADCの構成は、共有ADCサンプリング時間が8タドコアに設定されていることを除いて、専用のADCコア1と同じです。以前の専用ADCコアとは異なり、共有ADC Core 6には専用のアナログピンがありません。これには、サンプリング時間を延長して、ADCがアナログピンに接続し、変換前に入力信号を適切にサンプリングすることが必要でした。ただし、このサンプル時間はトリガー応答遅延を追加します。
初期化プロセスとコード構造の詳細については、以下のセクションファームウェアのクイックスタートガイドを参照してください。

このコード例は、マイクロチップコードコンフィギュレーター(MCC)を使用してデバイスクロックドメインをセットアップする方法を示す以前のコード例に基づいて構築されています。 MCCはPWMおよびADCモジュールの構成ツールもサポートしていますが、この例のPWMおよびADC構成は、一般的な周辺ドライバーに基づいて、ユーザーが特定の構成と操作モードの末梢アーキテクチャと重要な側面をよりよく理解できるようにします。各PWMおよびADCのサンプルコードプロジェクトでは、PWMおよびADC構成手順はユーザーファイルPWM.CおよびADC.Cにあり、特定の関数または対象モードを達成/有効にするために必要な各レジスタビットが設定され、その関数がコメントで説明されています。ユーザーがアーキテクチャ、機能、機能に精通したら、両方の構成オプション(一般的な周辺ライブラリまたはMCC)を使用できます。
このプロジェクトには、4つのサブディレクトリが含まれています
ハードドライブでは、mplab xプロジェクトディレクトリにMain.c/Hがあります。他のすべてのユーザーファイルを含む。末梢ドライバーは、サブディレクトリのソースにあります。 MCCによって生成されたファイルは、常に独自のサブディレクトリMCC_Generated-Filesにあります
PWMおよびADC周辺ドライバーは、P33C_PWM.C/HおよびP33C_ADC.C/Hをファイルします。PWMおよびADCインスタンスの特殊機能レジスタ(SFR)セットを表すデータ構造、およびPWMおよびADCベースモジュールを提供します。これらの「仮想」PWMおよびADCオブジェクトは、ハードコーディングされた命令を必要とせずにPWMおよびADC構成のロード、読み取り、変更に使用されます。これらの例では、PWMとADCの構成を簡素化するために、関心のあるユーザー構成が設定される前に、各レジスタは既知のデフォルト状態にリセットされます。したがって、特定の機能/関数にとって本当に重要なレジスタ設定のみが表示されます。
一般的なPWMおよびADCドライバー、そのサポートされた機能、および意図したユースケースの詳細については、p33c_pwm.cおよびp33c_adc.cのコメントをお読みください。
このコードは、目的の関数を自動的に起動して実行するために記述されています。ファイルmain.cの上にデモの指示をお読みください。コードの例、テストポイント、予想される信号、デモモード操作の詳細をご覧ください。
©2020、Microchip Technology Inc.