« センサーICが入ってこない! 旭化成の工場が火災! | トップページ | PWM方式D/Aコンバータのローパスフィルタ »

2020年11月12日 (木)

Arduino UNOでデューティー比測定回路 ケースに入れて完成

2020年8月24日:Arduino PWM波形のデューティー比測定 これで完成形か?
2020年8月18日:Arduino デューティー計測のためのインプットキャプチャータイミング
2020年1月28日:Arduinoから「タイマー0」を取り上げる(ユーザーが使う)
これの続き。

Arduino UNO基板を引っ張り出さなくても、「手軽」に
デューティー比を測定できるようにと、回路をケースに
入れました。

オシロを使えば、周波数や周期も表示してくれるし、
デューテューやパルスのH幅、L幅(時間系の測定機能)
も計ってくれます。

でも、「正確になんぼやねん?」にはちょい桁数不足。
  ※周波数や周期は周波数カウンタを使えば
   良いんですが・・・

せっかくだし、ということで実験していた回路を
ユニバーサル基板に組んで、ケースに入れました。

こんな回路。
Dutyck1
単3電池2本で動かします。

ケースの様子。
11_20201112162301

高い周波数の測定を目指したんじゃなくって、入力クロックの
H区間とL区間を調べようというのが目的。

デューテューは t1/(t1+t2) * 100で「xx.xx%」と表示。
周波数は clk / (t1+t2) で表示。
t1とt2はタイマー1のインプットキャプチャー機能で
数えたT1クロックの数。
T1クロックは16MHz~0.1MHzまでスイッチで選択
できるように。
最大クロック数が16bitで65535。
それ以上は(つまり低い周波数)はカウンターがオーバー
フローしてしまいます。

こんな表示になります。
12_20201112162301
0.1MHzのT1クロックで、t1+t2が50000カウント。
だから周波数は2.00Hz。
デューティーは49955 / 50000 = 99.91%。
  ※H/Lsetというスイッチで、t1とt2を入れ替え
   できるようにしています。
   負論理信号のデューティーを読めるように。

基板の様子。
13_20201112162301

片面基板に配線。

14_20201112162301
ハンダ面への部品取り付け(コネクタとVR)はこの↓応用。
2020年9月26日:手組みするときは片面基板で:1kHz PWM発生回路

液晶の下にATmega328P。
15_20201112162301

入力にいれたシュミット 74HCT14は無くてもok。
  ※ちょいスレッショルドを下げたかったんで。
入力プルアップ抵抗のon/off機能(ジャンパーピンで)
付けておくほうが良いかもしれません。

※スケッチ:ダウンロード - duty_ck1.c
  ファイルタイプを「.ino」ではなく
  「.c」にしています。

|

« センサーICが入ってこない! 旭化成の工場が火災! | トップページ | PWM方式D/Aコンバータのローパスフィルタ »

電子工作」カテゴリの記事

ツール」カテゴリの記事

Arduino」カテゴリの記事

割り込み処理」カテゴリの記事

コメント

おっと。 回路図、間違ってますわ。
検図能力が・・・

投稿: 居酒屋ガレージ店主(JH3DBO) | 2020年11月12日 (木) 19時32分

コメントを書く



(ウェブ上には掲載しません)




« センサーICが入ってこない! 旭化成の工場が火災! | トップページ | PWM方式D/Aコンバータのローパスフィルタ »