2017年11月16日木曜日

RS232対応を謳うバーコードリーダーでシリアルが使えなかったのでTTLレベルでシリアルを出せるようにしました。

タイトルが長い。

今春、Aliexpressでバーコードリーダーを買いました。


これです
https://www.aliexpress.com/item/Barcode-Scanners-NT-2012-Film-Portable-Laser-Reader-Handheld-USD-Bar-Code-Scanner-USB-Reader-Mobile/32802257553.html?spm=a2g0s.9042311.0.0.53ws4W

NETUM NT-2012って言うらしいんですが USB or PS/2 or RS232
と書いてあるのでシリアルでも出せるのかぁ。
マイコンで使えるなぁと思っていたら、シリアルが出てなかったのでバラしました。

するとすぐにRS232ドライバ(MAX232?)が載りそうなパターンがあり、USB-UARTから線を出して触れさせると読み込んだデータがbaud=19200で出てきました。
本来はここでTTLのUARTをRS232レベルに変換してコネクタに出力していたのですね。
これは当たりだということで、MAX232のデータシートを読んで、RS232レベルの信号出力のピンにこのピンをUEW線でジャンパ。




無事TTLレベルですがシリアルを出すことができました。
まあ逆に、マイコンに直接入れられるので便利ですね。

早速ESP-WROOM-02で使ってみました。
ESP-WROOM-02ではソフトウェアシリアルで受信したデータをそのままUDPでPCのIPアドレス(ポート9000)へ送信、
PC側はC# .NET でUDP受信のコードを書き、受けたデータをURLエンコードしてAmazonの検索URLに突っ込み、WebBrowserで表示させることで読んだバーコードをAmazon検索するようにしてみました。


Amazonはバーコードをそのまま検索すると商品名が出るので便利ですね。
Amazonの検索URLについては次のブログを参考にさせていただきました。
Amazon.co.jpの検索URL | oitake blog
http://oitake.jugem.jp/?eid=4