「PIC AVR 工作室」サイトの日記的なブログです。
サイトに挙げなかった他愛ないことを日記的に書き残してます。
PIC AVR 工作室 ブログ



こないだPCBWayから届いた、F12864G25412P1701と
4方向+2ボタンのArduinoシールド
。ようやく組み立てて
みる。

4方向+2ボタンの入力を、デジタルじゃなくアナログ入力の
1ピンだけで済ますためにあれこれやったので、抵抗値が
色んなものが必要だったので、こないだ八潮に行って抵抗を
買いそろえてきた。それを投入。あと、ポキポキ折って使う
ピンソケットも投入。

組み立ててみた。



例によって、オイラ大好きゆるふわの「スルーホール
メインで組んだ基板」なので、4050を除いて、他は全部
スルーホールだけで構成。

10kΩ抵抗は、買い置きの金被抵抗なので、色がちょっと
違うんだけど、それ以外はこないだ八潮で一式買ってきた
カーボン抵抗。

LCDとSPIで接続する端子はデフォルトのD3~D7にして、
バックライトのPWMはD9に割り当てして、キー入力用の
ADC入力はA0に割り当ててみた。(それぞれジャンパー
ソケットで配線してある。ジャンパーソケット外して、
ジャンパー線とかで配線しなおせば、自由自在にアサイン
を変えられる)





SOPのHC4050は、こないだAliexで買っておいたやつ。

https://brown.ap.teacup.com/nekosan0/4283.html

1番ピンのマークがついてなくて、どっちが1番ピンか判らな
かったんだけど、まぁ普通に考えれば、文字が読めるこの
方向に置いた時に、左下が1番ピンだと思うので、この向きで
取り付けてみた。(結果、合ってた)

ハンダ付けが結構雑なのがよくわかる。





裏面。ハンダに入ってたヤニがあちこちに飛び散ってる。



さて、ハンダ付けが終わったので、動作確認をしていくわけ
だけど、いきなりLCD取り付けてスケッチを書き込むわけには
いかない。
設計レベルでも、製造レベルでも、間違いがあるんじゃないかな
と思って、先にその辺の確認を先に済ます。


まずは、5V電源を繋いで、タクトスイッチの入力周りを調べる。
5V電源繋いじゃうと、4050にも電源が供給されちゃうので、
異常発熱してないかとかは先に見ておくことにして(結果、
大丈夫だった)、ADCの入力端子に掛かる電圧をテスターで
測定してみる。

…大丈夫みたいだな。想定通り、5Vを6分割した電圧が測定
できた。ADCから入力した値を、それなりの弁別値でぶった
切ってやれば、どのボタンが押されたのかが判断できるはず。


次。4050による電圧変換。

Arduino Uno(互換)ボードなので、GPIOは5V動作なんだけど、
LCDモジュールに向かう5本のデジタル信号線を、4050使って
3.3Vに変換しているので、それぞれ0V or 3.3Vになっている
のかを確認しておく必要がある。
ちょっとしたテストスケッチを書いてみて、テスターで実験
してみた。

大丈夫っぽいな。各ピンとも、0V・5V出力がそれぞれ、
0V・3.3Vに変換されて出てきてる。


あと、バックライト用のLEDに供給する電圧。スイッチで
切り替えできるようになってて、3.3V固定にするか、D9~D11
のPWM対応端子に繋ぐかを、スイッチで選択可能にしてある。

これらを、まずスイッチのスライドに合わせて3.3V側にして
みて、3.3Vが出てくることを確認。
PWM側はあとでLCDモジュールを取り付けてから確認してみる
予定。


シールド単体での確認が一通りできたと思うので、まずは
設計レベルの間違えはなさそうだな、ということが確認
できた。
ようやくLCDを取り付けて、スケッチを書きこんで動作確認
をしてみる。



いざ動かしてみる。UC1701でST7565互換チップなので、
例によってST7565のテストスケッチを書きこんでみる。



おぉ。出た出た。

バックライトが3.3Vの最大輝度固定なので、写真撮ると少々
明るくなりすぎて、こんな感じになってしまうけど、肉眼で
見るとまぁ悪くない感じ。
(まぁ、実際ちょっと明るい。PWMでバックライトの調光を
付けたのは正解だったと思う)


LCDとのSPI通信も特に支障なく、普通に画面表示ができてる。
このへんはやっぱ、I2CのOLEDモジュールに比べて、速度的に
アドバンテージがあるだろうなと思ってるところ。
Arduino UNO程度では、4050のディレイも特に支障になる
ことはなかった。mbedとかだとどうなんだろうな?という
あたりは気になるんだけどな…。



バックライトがちょっと明るいので、PWM制御にして、輝度を
調整してみる。スライドスイッチをPWM側にして、D9端子から
「LEDホワンホワン」(Fadeing)を動かしてみると…、普通に
バックライトの輝度が調整できてる。よし。

ちなみにこのLCDモジュール、バックライト用の配線は3.3V、
5Vともokになっているので、PWM端子の出力を直接バック
ライトに入れるようにしてあるんだけど、3.3Vでも5Vでも
それほど大きな輝度の差にはならなかった。
(というか、大体同じ輝度)

ちなみに、このシールドでは、スライドスイッチでバック
ライトの調整を切り替えるように作ったんだけど、ピン
ヘッダを取り付けておけば、3.3Vとバックライト供給の
間に抵抗を挟んでやるだけで、輝度調整も思いのままに
出来るので、やっぱとりあえずピンヘッダにしておいた
ほうがよかったのかなぁ?とか、今になって思ってるところ。




そういえば、ここまで確認してみてようやく気付いたんだけど、
元々バックライトはジャンパピンの3ピンで取り付けようと
思っていたのに、気まぐれでスライドスイッチを付けてた
んだよな。

で、バックライト要らない場合のことをあまり考えてなかった。
そういう場合、どうすればいいかな?と…。

3.3V側にスライドスイッチを入れちゃうと、強制的に3.3Vが
掛かっちゃう。なので、PWM側に入れつつ、PWMピンの選択
(D9~D11)のピンヘッダを外せば、バックライトには一切
電源供給されないはずなので、そういう風にしてみた。



うん。バックライト消えた状態で表示できる。よし。


ちなみに、写真ではバックライトが無い方が綺麗に写ってる
ように見えるんだけど、実際に目で見ると、バックライトが
ないと薄暗い。
見えないことはないけど、バックライトがあった方が当然
見やすい感じ。やっぱ、PWMの輝度調整機能よかった。




ってことで、ひとまずArduino UNO(互換)ボードで確認が
出来る範囲で確認してみた感じでは大丈夫みたいだな。
リセットボタンなんかもちゃんと活きてる。期待通りに
動いてくれてよかった…。



ただし、まだ確認できてないこともあったりする。

(1)3.3VArduino互換基板で、LCDの動作や、キー入力の
   電圧値がちゃんと出るのかどうか? 特に、mbed系の
   Arduino互換形状のボードだと、IOREFは3.3Vなので、
   その辺のmbed互換基板で動くのかどうか?

(2)旧式のArduino基板(IOREFピンがないやつ)では、
   キー入力の電圧が想定通りの値で読み取れるように
   なっているのかどうか?

(3)「mbedコアながらArduino互換形状」みたいな基板で、
   GPIOの動作が速い場合に、4050の動作速度(レイテンシ)
   が間に合うのかどうか?

という3点については、とりあえずまだ動作確認がとれて
いない状態。
折を見て、確認してみよう。



なんにしても、Arduino UNOに取り付けて動かす分には、
F12864G25412P1701+4方向+2ボタンをサクッといじれる
ようになったってことで、色々捗りそうだなぁ。

例によって、入出力ピン固定にして、部品数を最小限に
するバージョンのシールドも1個作っておこうかな。
バックライトも、PWMは要らないことにして、3.3V電源を
オンオフできるだけにして、SPI関係の端子も固定に。
キー入力のADCだけは選択可能にはしておきたいな。



なんにしても、ざっくり作ってみたシールドだったけど、
思った通りに動作してくれて何よりだった。



あとついでに、せっかく半田ごて出したので、こないだ

https://brown.ap.teacup.com/nekosan0/4284.html

ハンダ付けしたときに、OLED取り付けのピンヘッダの向き
がちょっと失敗してたシールドの、ピンヘッダの向きも
手直ししておいたんだけど、ちょっと失敗があって、基板
の上に焦げ目が残ったりしてしまったけど、あまり気に
しないでおこう。

(動作確認もしてないんだけど、まぁ多分これなら動く
だろうなと)





https://www.youtube.com/watch?v=gOPGYuDTy4s

銚子電鉄、コロナの影響で本当に厳しいんだろうという
ことは容易に想像できるんだけど、本当に厳しそうだな。





https://www.asahi.com/articles/ASN7W5SR4N7NUUPI007.html

よほどおいしい話があるんだろうな。布マスク。





https://twitter.com/zo_bula_bula/status/1287539662957887488

>コロナ自粛で練習時間が減った高校球児が、むしろ体格、
>球速、打球の全てで向上傾向という話題。

精神論だの経験則だのが全否定された現代。




https://twitter.com/gorigo/status/1287877019510824963

Zoomで鬼ごっこ。面白そうだな。




https://twitter.com/chanzaga/status/1287307616478085120

Deep Learningとバ美肉。



コメント ( 0 )