[][mobile][Homepage][BBS][Blog][YouTube][asablo]

過去の記事の検索が簡単にできるよ (・∀・) 例 ランチャー9
カスタム検索

秋月I2C接続キャラクタLCDモジュールをリカバリーできるファーム公開2012/07/11 23:59:02


秋月I2C LCDをリカバリするファーム公開

以前、秋月I2C接続キャラクタLCDモジュールをシリアル入力タイプに改造では、このLCDモジュールにはPIC16F689が搭載されていて、これを書き換えることで、I2Cのインターフェースをシリアルに変更出来る事を書いた。

電子工作においてLCDは、試作で使いまわされることが良くあるので、目的を達成したら、また買った状態に戻したいと思う事もあるだろう。

搭載PICはライトプロテクトが掛かっているので、同じファームウェアをバックアップ出来ず、PICマイコンを交換して書き込むという面倒な方法しかなかった。

いくら秋月にPIC16F687があるとはいえ、SSOPチップをハンダで交換するのはあまり簡単ではない。そこで、同じ機能に戻せられるプログラム(ファームウェア)を作ってみた。これなら、チップを交換しなくても、そのまま書き込めばOKである。

また、I2Cのデバイスを複数使う時、デバイスのアドレスが重なりあっていて、それが固定アドレスな場合でも、LCDの方のアドレスを変更が可能だ。このアドレス、24C04などのシリアルEEPROMのアドレスと同等の様であるから、変更したいニーズも多いと思われる。



内部回路図はLCD手前までは解析が終わっており、単純にPICのピンが外に出ている格好だ。
ハードウェアは16行2桁であるが、SC2004などの20行4桁など、各種キャラクターLCDに置き換えられるので、ハードウェアの互換が保てるという恩恵に授かることが出来る。



ACM1602NIのデータシートを見ると、フォーマットは意外にも明解。
アドレスは0x50、ライト固定でリード操作がない。続いてのデータはRS信号の制御。贅沢にも1ビットだけしか使用しておらず、bit7の状態がそのままRS信号となる様だ。最後は1バイトのデータで通信が終了。良くあるLCDイニシャライズやタイミング制御は、繋げる側が管理するので、一切不要。I2Cスレーブ動作だけ出来れば良いことになる。


秋月I2C LCDをリカバリするファーム公開

I2Cスレーブ動作は、きむ茶工房ガレージハウスこちらや、nobchaの電子回路日記こちらを参考に、コードを書いていった。そして、動作確認は、arduinoで行い、構想100年のサイトではarduinoの規律に則ったACM1602NIの専用ライブラリーがあるので、それを基準としてデバッグを進めていった。



パソコンにはMPLAB IDEと arduino IDEが起動と、なんとも滑稽なデバッグである。
余談であるが、arduinoは最近バージョンアップして1.0.1になり、日本語メニュー対応になった。
相変わらずシリアルのバグがあるが、対処方法が分かっているから特に問題は無かった。



これが以前にシリアル入力に改造したLCD。PIC16F687が張り替えられている。これに書いていきながらデバッグを行う。



最終的には、製品に手を加えていないACM1602NIに書き込んでテストする。
私が提供するHexファイルはPIC16F687であるため、ROM容量が倍の4KWあるPIC16F689に書き込むときは、一度プログラマでイレース処理が必要である。



追記 Ver.1.10では、ビルドし直さなくても、 ジャンパー処理だけでアドレスを変更できるように対応。通常使用では。アドレスは初期値と同様0x50(0xA0~A1)であるが、RXをGNDに落としながら電源を入れると別のアドレスが設定される。その時のアドレスは0x3D (0x7A~0X7B)になるので、一般的なI2CEEPROMのアドレス0x50を簡単に避ける事が可能となった。



ご注意:ACM1602N1の機能とほぼ同等の機能に回復になるが、全ての機能を検証しているわけではないので悪しからず。書き替えると元に戻せない。完全に購入時の通りに元に戻したい場合はチップを交換して対応。入手が容易なPIC16F687I-SSなどがある。




基板実装工場見学2012/07/12 23:07:02


基板実装工場見学

数年前になるが、とある製品の基板の工場立ち上げに行って来た時の模様を、少しばかりではあるがお見せしようと思う。場所は中国。



自動実装機。チップ部品などの殆どの部品はこの装置で搭載する。



BGAのトレー。部品はバキュームピックアップで吸い取られて、予めクリーム半田が塗られた基板に実装される。



プログラムROMメモリー。ラベルが貼ってあっても大丈夫。



ROMは地味にギャングライターで焼いていく。



焼かれたROMはマーキングされてバージョンラベルが貼られる。



自動実装機の試し打ち。試し打ちはハンダを使わずに両面テープを使って確認。



精密測定器で、仮実装されたパーツを外して値を測定する。実装機の力加減などで、パーツに歪が生じていないかを確認するのが目的である。



この様に1005とか小さいチップ部品にプローブを当てて測定。



こちらはハンダ厚み測定器。



クリーム半田の厚みも厳密にチェックされる。ラインの立ち上げは、量産してしまえばあっという間だが、この様なセットアップに時間がかかるので通常は数週間を要する。



自動実装機で乗せたものが出てきた所を、部品のズレなどがないか目視して、その場で修正。
片面ずつハンダ付けが行われる。



光学式画像検査機。略称AOI。



パーツ回転やスタンド現象などのハンダ不良やパーツ無しなどを検査。



問題がなければ、可搬ラックに収納される。



BGAのハンダ検査はX線検査機にて行われる。



不良があった場合はできるだけ修正する方向。BGAのリワーク機でリワークする。



リワークは熟練された工員が行う。そばでBGAを交換する作業を見せてもらったが、周りにカプトンテープを貼って、上手にブロアーを扱っていた。



リード部品やコネクターなどの機構部品で、どうしても人の手を介さなければならない所は手差しパーツのラインで行われる。



まずはパーツの実装状態チェック。裏表行う。



このシートはポリエチレンぽい材質で下敷きの様な厚みがあった。画像処理検査をパスしているのに、なぜまたこれを使ってチェックするのかというと、可搬ラックなどで運ばれる際、ぶつけてパーツを壊したり、外れたりする事があり、欠かせない検査の一つである。このチェックはオフラインを行き交う全てで行われている。



ハンダ付けは、この様なハンダマスキング治具がある。材質はFRPぽいガラス繊維でできており、基板をロックするノブがついている。穴の開いた部分から噴流しているハンダが当たる仕組み。



セットして、コンデンサやコネクターなどの部品を手で載せていき、



最後にハンダ飛びやフラックス飛びから基板を保護するシリコンラバーを載せている。



噴流型はんだ槽に流れていく。下から霧状のフラックスが湿布されて、決められた温度プロファイルに従ってハンダ付けされる。



装置内部。噴水みたいに下から熱いハンダが噴流している。ここを通過してハンダ付けされる。
こういうハンダを通すので、ハンダブリッジ等が起きにくいパターンを作ったり、シルク印刷でハンダのヒゲが断ち切れるようにする等はノウハウの一つである。



ハンダが揚がって、冷却されながらコンベアで運ばれてくる。



この基板は面付けが2つ。ここで初めて割られて、シリアル番号が与えられる。以降はこのシリアル番号で不良や良品を管理される。



最後の目視検査。ハンダ状態、フラックス汚れ、ブリッジなどが無いかを確認。



まずは合格おめでとう。



こちらは不良品。リペアラインに戻されて修復が試みられる。



基板は更にファンクションテストが行われる。機能試験手順書に則って試験。



電気特性試験も行われる。手書きで針の位置が書いてあるが、作業指示書には、そのように書かれている。



稼働試験。電源をある一定時間投入して正常であるかをテストする。



ここまで工程が終われば後は箱詰め。フォークリフト用パレットの上に箱が置かれ、袋詰した基板を入れていく。



今回は初出荷なので、抜き取りによる受入検査を実施。私達の今回のミッションの一つ。
1年前にマレーシアで工場立ち上げに行った時の製品を中国に移管したものなので、大きなトラブルは無く無事に終了。



各エリアへの移動は、必ず金属探知機でボディチェックを受ける。私達も受ける。パーツを持ち出さないかのチェックが主である。監視カメラも至る所に配置されている。



キャリアで引かれた基板。



梱包装置。まずは紐で縛り、ターンテーブルにパレットを置いて、ラップのでっかいやつでぐるぐる回して梱包完了。

最近の電子機器は使用される時間が短く、すぐに捨てられたりしてしまうが、基板一つ実装して出荷するだけでもこれだけの人と設備が関わっている。これらの写真から、物づくりはこの様にして出来ているという事が少しでも伝われば幸いである。






秋月I2C LCDをストロベリー・リナックスのI2C LCDにしてみた2012/07/13 23:17:19


ストリナI2C LCDの互換チップ出来るかも

前回の秋月I2C接続キャラクタLCDモジュールをリカバリーできるファーム公開では、予想以上の反響があった。どうやら、I2Cのアドレスが一般のEEPROMの0x50同じであり、それを変更出来る所に注目が集まった模様だ。
折角なので、ストロベリーリナックスで発売しているI2C式LCDも同じように互換チップが出来ないかを考えてみる事にした。



フォーマットを見ると、違いは3つあって、アドレスが0x3E(もしくは0x7C)、RSビットがbit6に割り当てられている事、リピートコマンドビットがある事だ。 リピートコマンドは無視しても、バッファを2つずつ取り込む法則は変わらないので、RSビットの処理とアドレスの変更で行けると予想。



まずは修正して書き込んでみる。I2C LCDは以前製作したインターネットラジオの部分を利用してテストしてみた。なので、詳しくはテストしていないが、結果はご覧のとおりあっけなく表示。
秋月I2C LCDがストロベリー・リナックスI2C LCDとして動作させる事が出来た。






そして、ファームを書き換えた秋月ACM1602NI。アイコン部分までサポートされないが、キャラクターを表示するだけであれば十分使用が可能だろう。



初期化した時、変なキャラクターが出たのだが、LCDを0x00(null)で初期化しているのでCGRAMの0x00が表示されただけである。タイトルが表示され始めたら波の様なキャラクターは消えてくれた。ストリナのLCDはパワーオンでリセットされている様であるが、秋月LCDはCGRAMデータが不定の様である。ということで、動作的には問題なく使用が出来た。

秋月I2C LCD ACM1602NI一本あれば、現在3種類のモードを提供しているので、試作の時に色々と役立つはずである。色々便利に使って頂ければと思う。


※ホームページが更新されていない場合は、一旦右クリックなどでフレームを再読み込みしてみて下さい。



サンリオから株主優待が来た2012/07/14 23:28:27



今年もやって来ました、サンリオの優待グッズ。去年はコレ。バスタオルが続いていたが、今回はちょっと小さいハンドタオルセットだった。


サンリオ株主優待

欲しい人は欲しいんだろうな。



キティちゃん、なんでもコラボしすぎwww



お、これは行ってみたいかも。キティロボット展




危険物取扱者免状再交付完了2012/07/15 16:02:30


危険物取扱者免状再発行

日曜日午後、郵便局が配達にやって来る。最近は日曜日でも書留を配達するのか。
届いたのは一週間以上前に再発行の手続きをした危険物取扱者免状。高校時代に化学の先生が希望者を集めて受験した試験。丙種ではちょっと使い道が見当たらない。最低でも乙4類は欲しい所。これと、これから受ける第二種電気工事士の2つ持っていれば、何らかの仕事はあるので、受験しておこうかなと思う。試験実施が多いのには驚いた

おっと、そろそろ第二種電気工事士の技能試験日まで、あと13日。年に1回しかチャンスがないから、一発合格を目指し、本腰を入れて勉強しよう。時間切れとか、ケアレスミスとか、つまらない所で落とさないよう集中して勉強しよう。


PIC32MX220F032BでLEDチカチカ2012/07/16 02:55:07



今月買ったまま放置していたPIC32MX。とりあえず何でもいい。動かす!
サイトを探していたら、EE Design LabsというサイトにLEDを光らせるチュートリアルがあったので、これをそっくり真似て動かすことにしよう。LEDチカチカでも大事な儀式だ。
※EE Design Labsのリンクが無くなってしまった様なので、Webarchiveのキャッシュのリンク
(2016/3/13)


注意:この製作例は、参考サイトを元に実験しています。例えばデーターシートと比べて、Vcapの値が小さい、水晶発振子のコンデンサが無いなどの相違があることをご了承下さい。そもそもブレッドボードで動かしている事が電気的に推奨されません。



部品はPIC32MX220F032B、ブレッドボード、10Ω、10KΩ、0.1uFx4、0.01uF、330Ω、LED、10MHzクロックと配線ジャンパーである。15分位で製作できた。


セラロックを外した状態。



まずは基板を作る。ブレッドボードでの作例があるので、それを見ながら作成。10MHzの部分水晶を使っているが、今回はセラロックを使って、この様に配線しておいた。



ピン配列を見てPICkit3と接続。1ピンがVPP、4ピンがPCD、5ピンがPGC、残る電源2本を接続。



プログラマはPICkit3。これと接続コードを使ってブレッドボードと接続する。私はICD2のコードを使用。



お次はプログラム。チュートリアルではMPLAB Xを使っての説明だが、あえてMPLAB IDEを使用してみる。



Language tools suiteは XC32を使用。別途ダウンロードが必要だ。Active tool suiteをセットするだけで普通は自動的に他のパラメータも設定される。



デバイスは上記の通りに設定。



今回のconfigはプログラムに埋めず、手動で設定していった。



チュートリアルと大体合っているはずである。でも、これを毎回設定するのは大変。もう少し調べたら、その方法がわかった。

#pragma config PMDL1WAY = OFF
#pragma config IOL1WAY = OFF
#pragma config FUSBIDIO = ON
#pragma config FVBUSONIO = ON
#pragma config FPLLIDIV = DIV_2
#pragma config FPLLMUL = MUL_16
#pragma config UPLLIDIV = DIV_5
#pragma config UPLLEN = OFF
#pragma config FPLLODIV = DIV_2
#pragma config FNOSC = PRIPLL
#pragma config FSOSCEN = OFF
#pragma config IESO = OFF
#pragma config POSCMOD = HS
#pragma config OSCIOFNC = OFF
#pragma config FPBDIV = DIV_2
#pragma config FCKSM = CSDCMD
#pragma config WDTPS = PS1
#pragma config WINDIS = OFF
#pragma config FWDTEN = OFF
#pragma config FWDTWINSZ = WISZ_25
#pragma config JTAGEN = OFF
#pragma config ICESEL = ICS_PGx1
#pragma config PWP = OFF
#pragma config BWP = OFF
#pragma config CP = OFF
configは#incleude <plib.h>の後に、この様に書くとプログラムで設定される。
設定方法はC:\Program Files\Microchip\xc32\v1.00\doc\hlpPIC32MXConfigSet.chm
を開くと、パラメーター設定値が分かるようになっている。

重要な情報はXC32がインストールされた以下の所から
document files
C:\Program Files\Microchip\xc32\v1.00\doc
setting help
C:\Program Files\Microchip\xc32\v1.00\doc\hlpPIC32MXConfigSet.chm
header files
C:\Program Files\Microchip\xc32\v1.00\pic32mx\include\proc\p32mx220f032b.h

#include <plib.h>

int main() {
	int count=0;
	mPORTBDirection(0);
	
	while(1){
		mPORTBToggleBits(BIT_7);
		while(count){
			count--;
		}
		count=1000000;
	}
	
	return (EXIT_SUCCESS);
}
プログラムは、簡単なループ。main.cは上記のプログラムを貼り付けて、ビルド。
エラーがなければ、プログラマにPICkit3を指定して、



電源を入れて、書き込む。成功すればLEDがチカチカと点滅する。


PIC32MX220F032BでLEDチカチカ

ハードウェアのHello world であるLEDチカチカができたので、EE Design Labsの次の課題として4ch USARTがあるからやってみようと思う。

※USARTの方もEE Design Labsのリンクが無くなってしまった様なので、Webarchiveのキャッシュのリンク (2016/3/13)



果たして積みプラモ(プラモデルを作らないで箱を積んでいる事からの由来)ならぬ、積みデバイス、積みPIC、積みCPUになるか (´・ω・`)

このデバイスは公式にはPICkit2では書き込めないが、pic32progなるものが存在するらしい。
あと、RetroBSD (2.11BSD) for PIC32なるものが動くとか。まだどれも試していないけど、備忘録ということで。

  → EE Design Labs
※EE Design Labsのリンクが無くなってしまった様なので、Webarchiveのキャッシュのリンク
(2016/3/13)




関東地方梅雨明け2012/07/17 18:31:18


関東甲信、東海、近畿、中国・四国で梅雨明け

海の日の翌日の今日は、朝から強い日差しになった。梅雨明けだ。



今日は認定日。朝から新宿へ。5回目の認定日。今日は人が大変混んでおり、待合室のイスなど座れない程人が溢れていた。回を重ねるごとに人が増えている気もする。
認定を無事終えて、ちょっと寄り道。西口から南口へ。外は暑いのなんのって。
南口からサザンテラス口まで歩いて、そこから高島屋、東急ハンズと寄り道。



さすがに暑いので、歩いている人もまばら。商業車両だらけの新宿の道路。
西口から南口へ行くには、小田急百貨店を突っ切ると涼んで行ける事が分かった。定期があれば改札を通って行けば早い。丸ノ内線の連絡通路を使うという手もある。



暑いので散髪屋へ行こう。ということで新宿東口に抜ける。今回の散髪は1000円カットだけで済ませる。かなり短くカット。けっこう髪の毛あったのかw 混んでいて6番目の待ちだった。女性客も普通に来るのか。


午前11時の新宿の気温は36℃

ふと温度計をみると、36度もある! まだ11時半なのに体温なみの気温。梅雨明け初日から猛暑となった。新宿は用事を済ませて午後には帰宅。閉めきった部屋に入ると、エアコンをかけていない30度もあるのに涼しい位だった。


涼しい食事2012/07/18 23:59:59



いやあ~暑い暑い。さすがにエアコンの運転を始めた。28度設定でも劇的に過ごしやすくなる。
今日は撮り溜めていた食べ物で、涼しい食べ物を紹介しようと思う。
これはひやむぎに生姜と生卵、ネギを散らしたぶっかけ系。創味のつゆをダイレクトに入れてまぜまぜして食べると美味しい。



アレンジ版。とろろを使うとまた格別。人によっては白身が苦手という方もいるので、別々に分けて、白身は卵焼きにしてしまうという手もある。



アレンジ版。納豆もOKだ。とろろ、納豆、オクラ、タマゴ全部入れても良いだろう。



変わり種の食べ方。大根おろしで頂くひやむぎ。これ、梅干しと食べると格段に美味しい。ツイッターで教えてもらった食べ方。お試しあれ。



ひやむぎがなくなって、ソーメンに切り替える。ソーメンをとろろで食べても美味しい。氷で麺をよく冷やせばなおウマイ!


夏はやっぱりソーメン

おもてなしで出すときは、これくらい気合を入れて作るw 何気ない盛り付けでも美味しそうに見えるマジックw



いつものもりそばを氷で冷やせば、ひんやり美味しくいただける。



パスタも冷やしでできる。氷はソースが薄まるので、まだまだ改良の余地あり。湯で時間は通常の1.5~2倍位は必要。



インスタントラーメンも冷やしラーメンにできる。野菜と一緒に2倍の量の水で5分間茹で、水でよく洗って、100cc程の水で溶いたスープに入れ、仕上げに胡麻油とあらびきコショーをかけるだけ。想像以上にウマイ。



さしみこんにゃくなんかもいいね。



昼にあっさりしたものは多いけど、夏バテしないように夜はしっかり食べているyo。


全然食事と関係ないが、今日の電子工作ったーなるものを作ったので、是非お試しあれ。
面白い物がでたらツイッターで呟いてね (`・ω・´) 94,306,711,147通り 診断結果日替わり。
色々仕込みすぎてるけどw


【動画紹介】勝手に入るゴミ箱作った【中の人など居ない】2012/07/19 22:19:24

【動画紹介】勝手に入るゴミ箱作った

これまたぶっ飛んだ動画を見つけてしまった。なんと、ゴミ箱がゴミを追いかけてキャッチしてしまうのである。





【ニコニコ動画】勝手に入るゴミ箱作った

凄さは、それだけじゃない。メカ部分を設計、切削機で削り出し、電子回路設計から基板設計、そしてプログラムまで全部一人でやっている。


まずはこういうイメージを元に、



メカ部分を設計してパーツを作る。この時点でもう普通ではないw



出来上がったカスタムパーツ。これを組み上げて設計図通りのものが完成!ありえん!



お次は回路図だ。一人でやっているのでお間違い無く。回路図を書いて、基板設計もやるとは。



そして、パーツを手配して載せて完成。超人。



ぷ、プログラムだと! そこまでやるのか!



仕上げに、ゴミ箱を取り付けて完成! ありえないクオリティ!



もうね、ゴミ箱がゴミを追いかけるとか。普通じゃない世界ですよ (´・ω・`) スゴス!

この動画のセンスもものすごくいい。嫉妬でため息が出るほど凄い方の動画なので、是非紹介させてもらう。こういう動画を見ると、奮起するね。凄いクールだ。





実はこの方、2年前にも一躍有名になったエアガンの自動照準を作った方でもある。

  →作者のホームページ

追記 msnにも取り上げられました!

追記9/5 インタビュー記事があります。→んなが驚くようなユーモアあふれる作品づくりをしたい!originalmind.co.jpより。

[PR]ルンバ527J iRobot ロボット掃除機アイロボットRoomba527J [ルンバ527J]【送料無料】

久々に自家製カレーを作る2012/07/20 23:36:09



いつもはレトルトカレーだが、今日はちゃんとカレーを作るよー (・∀・)
カレーの作り方は3年前にも一度行なっているけど、今回はちゃちゃーっと説明するね(・∀・)

材料は、るう、にんじん2本、じゃがいも(鹿児島産)4個、たまねぎ2個、モツ(加工済み)200gを用意。調味料として、塩コショウ、ガーリックパウダー、生姜、醤油とバター。



じゃがいも以外をガーリックパウダーと塩コショウを使って全部炒める。もつを使うので、生姜をすったものを混ぜて炒めた。ずっとまぜまぜ5分くらい。じゃがいもは、別に電子レンジで5分程加熱っと。じゃがいは最初から入れてもOKだけど、電子レンジの後ゆでの方が崩れにくくてホクホクしている。



水850mLを加え、一旦沸騰するまで待つ。沸騰したら、上に浮いたアクを取ってまずは10分中火で煮込む。そしてじゃがいもを入れて更に10分。吹きこぼれるのでフタは少し開けておいた。



火を一旦止めて、ルウを入れて、ゆっくり丁寧に暫くかき混ぜる。3分位かき混ぜたかな。



かき混ぜながら隠し味のバター10g投入。



醤油も小さじ2くらい。フタをして更に15分位コトコトと煮込む。


自家製もつカレー

完成!! もつをカレーにして もつカレー (;´∀`) 
作りたてなのでちょっと水っぽいが、味はレトルトと全然違う!やっぱりうまいね!



残りは小分けして冷凍庫へGo! タッパーは次の日の分。



次の日のカレーがすごくうまい。カレーは一晩寝かせると本当に美味しくなる。
ビーフもいいけどもつも凄くカレーとの相性がいいよ。








Google
www Blog HP BBS


air_variableサイトをまとめて検索 
カスタム検索
[][admin][mobile][Homepage][BBS][Blog][YouTube][asablo]