- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- Permalink
- 印刷
- 不適切なコンテンツを報告
開発中のシステム内でADCを同時に4本以上使用したいのですが、
ADCは3chしかないということでレジスタ設定しなおして使用する予定です。
気にしているのが、pinの処理に関してです。
例えば、
・ポート1~4をADCとして使用。
・ポート1:ADC0、ポート2:ADC1、ポート3:ADC2を割当て(*1)
ポート1の処理完了後ポート4:ADC0に設定
という使い方をした場合、
*1であればポート4がADCではないわけですが、
この時もポート4のピンには任意の電圧がかかっています。
マイコン5V駆動の際に、ポート4に2.5V印加されていた場合、
GPIOのままですと素子に悪影響が出かねないので対策が必要と考えています。
この時にポート4のピン機能をADCに設定(GPIOではなくペリフェラルとして使用)したまま、
chを割り当てない、ということは可能でしょうか。(以下☆のような処理)
また、そうした際に素子への悪影響は防がれると考えてよいでしょうか。
☆ FM4_GPIO->PFR1_f.P0 = 1; // P13を周辺機能に設定する
☆ FM4_GPIO->ADE_f.AN00 = 1; // P13をAN03(ポート4)として設定する
☆ のみ設定、対応chのSCISレジスタは切り替え時に設定。
よろしくお願いいたします。
解決済! 解決策の投稿を見る。
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- Permalink
- 印刷
- 不適切なコンテンツを報告
先ずPinの設定ですが、32-Bit Microcontroller FM4 Family Peripheral Manual
CHAPTER 12: I/O ポート、Figure 2-1 I/O ポートの構成を参照ください。
アナログは特殊端子なので、ポート機能設定レジスタ(PFR)は無効です。
ピンの設定は、ADEの設定だけで青色のADC(アナログ)入力になります。
次にADCの設定ですが、アナログ入力になっている端子はTRMのADCの章の下記ブロック図、アナログ入力になっています。
32-Bit Microcontroller FM4 Family Peripheral Manual Analog Macro Part
CHAPTER 1-2: 12 ビット A/D コンバータ Figure 2-1 12 ビット A/D コンバータのブロックダイヤグラム 参照。
所望のピンをアナログ入力ANxとしADC Unit 0/1/2の何れかでA/D変換を行ってください。
最後に、今回の場合アナログ入力以外の設定にしてはいけません。(何かデジタルのペリフェラルの入力にしたら貫通電流が流れる可能性があります。)
デジタル入力(アナログ入力以外の設定)にしなければ、2.5Vが入っていても何の問題もありません。
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- Permalink
- 印刷
- 不適切なコンテンツを報告
先ずPinの設定ですが、32-Bit Microcontroller FM4 Family Peripheral Manual
CHAPTER 12: I/O ポート、Figure 2-1 I/O ポートの構成を参照ください。
アナログは特殊端子なので、ポート機能設定レジスタ(PFR)は無効です。
ピンの設定は、ADEの設定だけで青色のADC(アナログ)入力になります。
次にADCの設定ですが、アナログ入力になっている端子はTRMのADCの章の下記ブロック図、アナログ入力になっています。
32-Bit Microcontroller FM4 Family Peripheral Manual Analog Macro Part
CHAPTER 1-2: 12 ビット A/D コンバータ Figure 2-1 12 ビット A/D コンバータのブロックダイヤグラム 参照。
所望のピンをアナログ入力ANxとしADC Unit 0/1/2の何れかでA/D変換を行ってください。
最後に、今回の場合アナログ入力以外の設定にしてはいけません。(何かデジタルのペリフェラルの入力にしたら貫通電流が流れる可能性があります。)
デジタル入力(アナログ入力以外の設定)にしなければ、2.5Vが入っていても何の問題もありません。
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- Permalink
- 印刷
- 不適切なコンテンツを報告
ご回答ありがとうございました。
ADE設定を常にAvailableにしておき、アナログ入力扱いにしておきます。
以上です。