teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

データシートを調べた

2019/11/15 19:30

投稿

ikadzuchi
ikadzuchi

スコア3047

answer CHANGED
@@ -5,4 +5,18 @@
5
5
 
6
6
  ではどうするかですが、この目的ならアナログコンパレータを使うのがよいです。
7
7
  コンパレータは閾値との上下しか見ない分ADコンバータに比べ応答が速く、数μsくらいなら多分反応できます。
8
- 加えて、ポーリングでは時間的にややつらいので割り込みを使った方がよいです。
8
+ 加えて、ポーリングでは時間的にややつらいので割り込みを使った方がよいです。
9
+
10
+ ---
11
+
12
+ [データシート](http://ww1.microchip.com/downloads/en/DeviceDoc/ATmega48A-PA-88A-PA-168A-PA-328-P-DS-DS40002061A.pdf)を見てみました。
13
+ 「Table 29-15. ADC Characteristics」を見ると、
14
+ Conversion Timeは最小で13μsであり、数μsの信号を捉えるのは厳しそうです。
15
+ ただ、Input Bandwidthが38.5kHzというのがちょっと分からないところで、これが38.5kHz以上の信号は通さないということなら、それ未満の信号も鈍って13μsのサンプリングで捉えられるようになるかもしれません。
16
+
17
+ ただ、やはりコンパレータの方がよいでしょう。
18
+ 「Table 30-1. Common DC characteristics」を見ると、
19
+ Analog Comparator Propagation Delayが(Vcc=4.0V時)500nsです。詳しいことは知りませんが雰囲気的に数μsの信号を捉えるのに十分そうです。
20
+ また、ADCの入力をコンパレータに回すことができるようなので、回路の変更も外付け抵抗だけで済みそうです。
21
+
22
+ Arduinoのコンパレータの使い方は頑張って調べてください。