Aitendoで2個500円の液晶を2つ買い、ちょっとはまったのでメモを残しておきます。
T18SPI-2P
この商品は既にAitendoのページが無くなっていて、いろいろ検索してみたところ、パターンミスがあり2ピンと3ピンをつなげる必要がありました。この情報はなかなか見つからなかったんですが、こちらのページで気がついて、インターネットアーカイブにありました。
これでArduinoのTFTのサンプルが表示位置がちょっとずれていましたが表示できました。コントローラーはST7735Bのようです。
M2P0327E-B
ネットでいろいろ調べたところ、これはSCLKとMOSIのシルクが逆でした。(2019/4 現在販売されているものは直っているようです)
こちらのコントローラーはS6D0151のようです。LCDのデータシートが画像なので書き起こしておきます。
Pin | Symbol | Description |
---|---|---|
6 | WR | In 80-Series mode, this serves as a write strobe signal (WR). |
12 | SDI | 4-wire SPI mode Serial input data. Must be tied to CDD3 or VSS level when not in use. |
mbedにライブラリがありそれをつかって表示してみました。LPC1114で実行するには以下のようにmosi,sclkを指定します。
S6D0151_TFT TFT(dp2, NC, dp6, dp18, dp11, "TFT"); // mosi, miso, sclk, cs, reset
mbedはあまり使わないんですが、これのライブラリはArduinoにはないようだったので、mbedで試してみました。貧乏性なので、製品のmbedではなくて120円の頃に買ったLPC1114の自作ボードにFTDIのチップでlpc21ispで書き込んでいます。
(2017/04/28追記:奥の方に移った処分品の中にまだこのモジュールがありました。フラットケーブルのコネクタのハンダ付けがやっかいですが、昇圧の部品付きで2個で500円はお買い得だと思います)
(2017/06/08追記:もう無くなっていました)
作った回路が動かない時に、いろいろ試しているうちに壊してしまったんではないかとか思い出しますよね。ただ最近の部品は壊れにくくなっているので、十中八九は別に原因があるが、データシートやネットの情報をじっくり調べるのが良いです。
また自分のミスでちゃんとつながってないとかもよくあるので、回路のチェックも大切です。
やっぱり激安には訳がありますね。調べる手間賃だけ安いって事でしょうか。二つ合わせて丸一日くらいかかっています。我ながら暇人ですね。
フラットケーブルのコネクタが一つは押し込むタイプで、一つは上に上げるタイプだった。
昇圧はテスターで計ってみたら6.29Vくらいになってました。
キャリー基板の角の穴が2mmと小さいです。
寸法は49.53mmx50.165mmで、角から3mmのところに穴があります。
FreeBSDのmrubyでも使ってみました。
LCD12864B11
これも残りがほとんど変換基板無しになった2個500円のワゴンにあった。一つだけ値札の無い真新しい袋に入っていて、ネットで調べたらどうも返品されたものっぽいが問題なく使えた。Arduinoのライブラリのサンプルのデフォルトのコントラストの0x18は濃すぎるので、小さな値に変更した方が良い。
上記の写真で画像の上下が逆になっています。ST7565.cppのpagemapを下記のように入れ替えると正常になりました。
const uint8_t pagemap[] = { 7, 6, 5, 4, 3, 2, 1, 0 };
このLCDはST7565でichigojam 1.2.3で表示できましたが、文字がうすいです。
電源が足りてないとかかと思って、Arduinoで動かして調べてみたらバックライト使わない状態で0.15maくらいしか使ってませんでした。
ichigojam 1.4でSWITCHコマンドの第二パラメーターで輝度設定できるようになって、SWITCH 1,28で表示できました。
M028C9325TP
これはいろいろなページに説明がありますが、出荷時に16Bitモードになていて8Bitでアクセスにするためには液晶裏の抵抗を変更する必要があるようです。
このモジュールのコントローラーはILI9325ですが、このチップはパラレルとSPIのインターフェースが使えるようです。パラレルは16Bitか8Bitなのですが、このモジュールは16Bitでしたが用途が限られるので、処分されていたのはないでしょうか。
mrubyで確認スクリプトを書いてみてIDが拾えているので、使えそうです。
電源入れてスクリプトで描画しても白いままで表示できなくなってしまったのですが、半年くらいしたら復活しました。どうも起動していろいろ処理が走ってる最中に初期化すると、信号のタイミングがまずいのか、ハングしていたようです。
TFT1N3204
これも以前処分品で買ったものです。これは電圧が3.3Vより低いためちょっと使い勝手が悪いです。kenkenさんがPIC32MXで使っています。
おまけ EVB-STM32F103C8T6
STM32評価ボードで500円のワゴンにあったのですが、これはTX/RXのシルクが逆です。TXをFTのTXに接続してRXをFTのRXに接続してboot0を1,boot1を0にしてstm32flashを実行すると以下のように認識できます。
bash-3.2$ ./stm32flash -b 115200 /dev/cu.usbserial-DA0059MQ
stm32flash 0.5
http://stm32flash.sourceforge.net/
Interface serial_posix: 115200 8E1
Version : 0x22
Option 1 : 0x00
Option 2 : 0x00
Device ID : 0x0410 (STM32F10xxx Medium-density)
- RAM : 20KiB (512b reserved by bootloader)
- Flash : 128KiB (size first sector: 4x1024)
- Option RAM : 16b
- System RAM : 2KiB
おまけ2 JJY3850
これは39円で処分していた電波時計モジュールであまり考えずに買ったのだが40kHz版でした。水晶発振子に4の文字が確認できます。Aitendoのページはなくなっているので詳細は分からないのですが、出力が正負両方あるところからC-MAX社のCME6005を使っている可能性が高いと思われます。PをGNDでHをVCCにつないで、なぜかオシロのプローブをつけているとちゃんと動き、外すと動かなくなった。どうも出力のドライブ能力が極端に低くて動作しないケースが多くて処分されたのではないかと推測される。とりああえず出力にトランジスタを入れてバッファにしたところ少し良くなった気がします。ただしやはりノイズにはかなり弱く、パソコンから離しておくなどしないとダメみたいです。
ATTiny85でデコーダー作ってみました。
このモジュールをntpdで使えるようにしてみました。
バーアンテナを大きいものに交換してみました。フェライトバーはラジオデパートの3Fのシオヤ無線で18cmのものを購入しました。LCメーターを作ろうかとも思ったのですが、周波数カウンターはあるのでピアース発振回路を作って確認する事にしました。いろいろ試した結果40KHzのバーアンテナとコンデンサーを作る事ができなかったので、元々付いていたバーアンテナの12.5KHzと同じ値になるようにバーアンテナ巻いたところ、ちゃんと使えるようになりました。
自作の計測器ロガーのさるのこしかけにピアース発振回路の周波数からインダクタの計算を入れてみました。
ATTiny85版の実装は無理矢理感満載だったので、Arduinoを使ったバージョンを作って置き換えました。(2017/12/03)
いろいろやってるうちになぜか不安定になったので、バーアンテナは元のものに戻しました。
おまけ3 USB-GPIO
久しぶりに行って入口付近に199円で処分されていたマイコンユニットを買った。帰ってきて確認したところPIC18F14K50で秋月で800円で売っているものと同じチップだった。こちらはPOPに書いてあったがC3,C4を添付のコンデンサーに付け替える必要がある。(2017/04/28)
PICkit3との接続はこんな感じ
このモジュールの左右のピンの幅はDIPからちょっとずれているようです。
(2017/06/08追記:まだありました)
(2017/06/30追記:改装後のお店に行ったら、入り口付近は整理され、もう無くなったかと思ったら、店内のワゴンに39円でありました)
このモジュールでUSB Blasterもどきを作ってみました。R1,2,3,4は外しました。
MacBookAir Originalのurjtagで4KByteの読み込みを比較してみました。
モジュール | 処理時間 | ライブラリ |
---|---|---|
USB Blasterもどき | 44秒 | FTDI |
FT232H | 26秒 | FTDI |
EZ-USB FX2 ixo | 84秒 | libftdi |
ちょっと遅いですが、10Pinで接続するときには使う事があるかもしれません。あとシリアルドライバが入っていてFTが直接使えないときには便利かもしれません。
EZ-USB FX2のモジュールはFTDIのライブラリでビルドしたurjtagでは認識しなかったのでlibftdiの方で確認しました。
ビットトレードワンさんのUSB赤外線リモコンも作ってみました。
USBコネクタを外したのだが、パターンがはがれやすく、かろうじてつながっている状態になってしまった。コネクタ外すのはあまりお勧めしない。
おまけ4 PL-2303モジュール
数年前に39円で買ってきてMacにつないでも認識できず、チップやパターンの異常がなかったので、12MHzの水晶を変えてみたところ認識できるようになりました。
おまけ5 びんぼうでいいの
かなり前に購入したのですが、自分の開発環境の雪豹ではCH340の純正のドライバがクラッシュして使えなかったので、Linuxのコードからコントロールラインの処理をぱくって、Mac OS X用のドライバを作ってみました。Arduinoのダウンロードなどに問題なく使えています。(と書いたのですが時々ダウンロードに失敗する事があります。どうもダウンロードするバイナリのサイズに依存した、問題があるような感じです。ちょっとコードをいじって、バイナリのサイズが変わると問題解消します)
おまけ6 PCB-ATMEGA16/32
ATMega16/32 Coreboardとシルクプリントのある基板で、99円で売っていました。ATMega16/32はすでにディスコンでこれと同じ足のチップは164,324,644,1284などになるようです。
おまけ7 紫色基板 in FRISK
夏休みセールで9円でした。1.0mm 1.27mm 0.636mmの10ピンの変換がありました。1.0mmはグレー色です。なぜかこの基板の中央のパターンが表と裏が同じピッチで、どうやって使うことを考えてるんでしょうか。この手の基板は表と裏でピッチが違うものがありますが。(2018/08/11)
1.0mmピッチにのせた三洋のモータードライバー。
この基板は横に二つずつホールがつながっているので要注意です。(2022/07/23)
1.27mmの基板で部品取りしたST MC34063で昇圧回路作ってみました。最初部品箱の適当なダイオードつけたらちゃんと動かなくて、手こずりました。
おまけ8 LPC1114マイコン基板 [P1114-3]
最近あまり激安がなくて、つまらないのですが、少し前に69円で買った基板でチップ(LPC1114FBD48 190円)もaitendoで入手してハンダ付けして確認したところ、VCCとGNDがブリッジしてます。2時間くらいにらめっこして、パターンミスが見つかりました。
VCCのラインとGNDのパターンがつながっています。おそらく反対の面の同じ位置のパターンを間違って貼ってしまったのではないかと思われます。やはり激安には理由があります。
パターンカットしてswddudeで認識できました。
bash-3.2$ source/release/swdprobe
Notice..: SWD communications initialized successfully.
Notice..: SWD-DP IDCODE = 0BB11477
Notice..: Version: 0
Notice..: Part: BB11
Notice..: Designer: 23B
Notice..: Scanning for connected Access Ports...
Notice..: Access Port #0: IDR = 04770021
Notice..: Found MEM-AP.
Notice..: CPU is Cortex-M0 r0p0
Notice..: Device ID = 2540102B
Notice..: Device name = 1114.../302
Notice..: Device @E00FF000
Notice..: Device is ROM table: 4096 bytes
Notice..: Device @E000E000
Notice..: Component is ARMv6M SCS
Notice..: Device @E0001000
Notice..: Component is ARMv6M DWT
Notice..: DWT comparator count : 2
Notice..: Device @E0002000
Notice..: Component is ARMv6M BPU
Notice..: Breakpoint count: 4
Notice..: Literal watchpoint count: 0
4つのコネクタの位置がDIPからずれていてあまり良い利用方法が思いつきません。普通の変換基板の方が良いような気もします。
LPC1114FBD48はDIP版よりメモリが大きいので、何か良い利用方法が出来るまでお蔵入りです。
おまけ9 IFB-254-FIRE1394
かなり前に100円くらいで安売りしてたので、なんとなく買ったのだが、某光ルーターのシリアルコンソールがIEEE 1394 4ピンで出ていてそこからケーブルをつないでこの基板でFTDIにつないでいる。
おまけ10 はんだ付け練習用基板
切り出して変換基盤にしてみました。
パターンはこうです。