自分でなんでもやります。[DIY電気]電子工作で小型の表示器が必要になりAmazonでOLED表示器を買ってみました。OLEDの0.91インチディスプレイ」という商品で表示面積がかなり小さなものとなっています。届いた商品を開けると本体と接続ケーブルが2セット、広告っぽいチラシ一枚です。ひとつ手にとってます。赤いのは保護シートを剥がす端っこです。Arduinoのu8glibライブラリを使えと書いてあるだけです。私は、PICマイコンで使用するつもりなのでArduinoと言われてもピンと来ないのです。勉強不足でついて行けません。調べると、一番重要なキャラクターROMが入ってないということが判明したのであります。やられました!まあ、購入前からキャラクターROMが入ってないというのは薄々わかっていましたが、案の定そうだったわけです。文字フォントはマイコン側に持たせてI2C通信によりビット情報を流し込んでドットで書け!というものです。今回の工作では主に時刻情報を表示させたいので、一歩譲って最悪数字とコロンと+αがあればいいということにします。チラシにはメインチップがSSD1306だと書かれていますので、早速ネットで仕様書をダウンロードして入手。コントローラであるSSD1306は128*64の解像度のOLEDを制御するとのこと。縦の64ドットは8ブロックに分かれ、ページと呼んでいます。1ページの縦は8ドットです。全面を全て書くには、8ビットを128回書くのを8回繰り返すということです。それは理解できたんですけど、今回購入した表示器は128*32なので仕様書に書かれている縦のドット数が半分なのです。あたって砕けろ!ということでブレッドボードでテストしてみました。PICマイコンは16F88です。データを流し込んだら、わ~綺麗な水色表示!でも、なんか変んな表示!どういうこと?砕けかけそうです。それからそれから、あれこれ遊んでいるうちに発見しました。奇数ビットだけ表示しているようなんです。おいおい、偶数ビットは無視かよ。(DAh)」という項目に目が止まりました。0xDAコマンドの次の1バイトデータで設定できるようです。今回初期値でテストしていましたので、0xDAに続いて0x02を設定することにより表示に成功しました。左は猫のシルエットを4文字分で表示されています。数字は、自作の7セグメント風フォントです。ビットマップフォントは1文字12*16にしています。横12ドットだと10文字で120ドットなので水平方向は8ドット余る計算。縦はフルで32ドットなので、その半分の16ドットにしました。表示できる文字数は10*2ということになります。その後、テストを繰り返しているうちに別の場所のACコンセントにさすと、OLED画面の初期化に失敗しているようで、画面が反転モードだったり、砂の嵐だったり、一部が横線だったり、勝手にスクロールしたりなんです。数分完全放電させると正常になったりするので、動作モードが予期せぬモードにラッチしているような感じです。ラッチが抜けにくいというか。Configuration」の項目があり初期化のフローが書いてありました。12ステップですが、仕様書どおりに初期化ルーチンを書いて様子見しましたが改善せず。結果的には商品が不良っぽいです。2つのうちもうひとつは安定動作することがわかりました。i2c_stop();}このデバイスを使った電子工作が完成したら記事にしたいと思います。[DIY電気]若いころこNECのTK-85というマイコンボードを買ってきてマイコンのプログラミングトレーニングをしました。トレーニングじゃなく半分遊び道具だったかもしれません。そのTK-85が蔵から出てきました。箱から出てきたものにはマニュアルがありませんでした。テンキーみたいなキーボード改造した痕跡。1982年頃に買ったのではないかと思います。プログラミングの方法は、アセンブラ言語をノートにコーディングして、その右に、命令に対する16進数を書いてという具合に。ジャンプ命令は、特にやっかいなもんでした。命令を増やしたりすると番地が変わるのでその都度ジャンプ命令の部分も書き換えが必要だったのです。アセンブラ学習中は7セグメントLEDを光らせたりするぐらいのことしか学習課題がなく、時計の秒のような数字の変化を見て少し喜び、人が見てたら変です。しているとYAMAHAからシンセサイザDX-7が発売になると知ったのです。音楽的に興味があったわではなく、MIDIという信号を入れてあげると音が鳴るということに興味を惹かれました。独身貴族だった私はすぐさま秋葉原のラオックスでDX-7ゲット(20ン万円)。TK-85とDX-7をつなぐインターフェイス回路(パラシリ変換)を作ってプログラミングに臨んだわけです。DX-7は16音が同時に発音できる仕様ですので、プログラムも16チャンネル出力できるようにしました。DX-7と接続するための改造が写真の手配線です。プログラミングが終わってからは、ひたすら譜面を16進数に落とし、自動演奏を完成させることができました。我ながらこれはすごいもんだと感心したもんです。ビバルディの春を20小節ぐらいかな、とても全部はメモリ不足で入りません。ビバルディの春の次は、ギターの譜面でディアハンターをデータ化して演奏させた記憶があります。当時はインターネットも、Nifty-Serveもなく、シェアして他の方にお披露目させることもなかったです。今思えばオーディオテープにでも取っておけばよかったと後悔しています。FileAlpacaを使って作成したので、忘れないように覚書です。※写真素材をスタンプにする手順。ver2.1.19(1)FileAlpacaを起動して新規作成を始める[ファイル][新規作成]用紙サイズ[LINEスタンプ×1](2)写真素材を取り込む[ファイル][画像をレイヤーとして開く]写真素材を選択して[開く](3)用紙サイズに対して写真が大きいので表示している写真が、写真の左上部を拡大したものになっている。[Ctrl][T]を押す左上のアンカーを右下にドラッグを繰り返して写真サイズを小さくして行き希望の大きさになったら、下部の[OK]を押す(4)作業レイヤーを写真のレイヤーにして、[消しゴム]や[自動選択]を駆使して不要部を消していく。[消しゴム]はマウスを使って根気よく消しゴムのように消していく[自動選択]は上の[許容値]の数値を(20前後)に設定し「アンチエイリアス」はオンにする。消したい中心付近をクリックすると自動選択されるので問題なければ、[Delete]キーで画像を消していく。[Ctrl][D]を押して選択解除しながら作業する。(5)綺麗に消したかの確認[表示][透明背景]のチェックを外して、[表示][背景色の指定]で色付きの背景にして背景色を変えたりしながら、不要部がきれいに消えているか確認する。(5)画像を見栄え良くする画像が暗い場合は、[フィルタ][トーンカーブ]斜めの線をドラッグして画像を調整する。(6)画像に付けるセリフを入れる作業。右側にある、新規レイヤーボタンで新規レイヤーを作る。[ツール][テキスト]写真の真ん中をクリック[HG丸ゴシックM-PRO][太字][色-黒]文字入力する[レイヤー][変換][カラーレイヤーに変換]レイヤを複製する複製した下側のレイヤーを白の文字縁取りにするので、そのレイヤーを選択して、[選択範囲][レイヤーを元に作成/不透明度][選択範囲][拡張][3]色を[白]選択[Ins]キー押す(7)画像はキャンバスの最外周から10Px程度の余白が必要なので余白を作ります。写真が置かれているレイヤーを選択[選択範囲][全て選択][選択範囲][収縮]10[OK][選択範囲][反転][Delte]キー押す(8)完成したら、[ファイル][書き出し][PNG(透過PNG)]→[OK]スタンプ画像は、370×320(最大)ですが、メイン画像は240×240、タブ画像は96×74なので、メイン画像やタブ画像は用紙サイズを変更して作成。濱男ナベちはるぷちずん♪Lanai最近のコメントご訪問&nice、ありがとうござい..こんばんは。