PICでUSBを!(知識ゼロからのスタートです)
PIC18F14K50のUSB機能を100%自前のソフトで制御する試みです。しかもアセンブラで!
当記事は2009年12月から「TTLでCPUをつくろう!」というタイトルの もとにほとんど毎日連載をしてきたものを再編集したものです。 |
2011.7.9 前へ 次へ 目次へ戻る ホームページトップへ戻る |
☆プロローグ 今までUSBを使ってパソコンと通信をする部分にはFTDI社のFT232RLかまたはFT245を使って、RS232C−USB変換をしておりました。 ところがUSBコントローラを内蔵しているPICがあることを知りました。 PICは232C通信をするためなどに使っています。 それならそのUSBコントローラを内蔵したPICを使えばFT232RLを使わなくても済んでしまいそうです。 FT232RLはなかなかに便利なICですが、ただ難点はフラットパッケージしかないことです。 それを使わなくても済むということならば、ここは一番ぜひとも挑戦してみるべきでありましょう。 さっそくPIC18F4550のマニュアルをダウンロードして読んでみたのでありますが…。 |
[第12回]
●PICプログラマ復活(その直後のお話です)
前回、秋月のPICプログラマに搭載してあるPICの複製を作って、それをPICプログラマに実装したところ(つまりオリジナルのPICの代わりに複製したPICを実装したところ)、みごとにPICプログラマが復活しました、というところまでお話をしました。
試しにPIC16F628に書き込みをしてみたところ、ちゃんと書き込みOKになりました。
と、ここまでは、めでたし、めでたし、というお話の展開で、なんの問題もありません。
苦労してパラレルポート使用のPICライター用に、PIC18F用の書き込みプログラムを作りあげ、それがさっそく役に立って、普通なら壊れてしまったPICプログラマはそのまま廃棄処分になってしまうところを、みごと復活させてしまったのですから、これはもう祝杯ものです。
ところが、話はそう簡単に終わってはくれないのですよね。私の場合。
これはもう、おきつね様かお狸様かわかりませんけれど、なにかが私をたぶらかしているのですよ。
PIC16F628がうまく書き込めたものですから、いよいよ本番ということで、PIC18F4550をセットしてみたところ。
あれま。
認識できません。
んな、ばかな。
PIC18F2550もやってみましたけれど、やっぱりだめ。
いや、それはおかしいでしょう。
だって、Vppもクロック端子もデータ端子も、それは16Fでも18Fでもソケットは違い、ピン位置も違うとはいえ、もとは同じ配線でつながっていますから、ハード的には相違はないはず。
あるとすればソフトウェアの違いだけ。
そこがおかしいじゃないのさ。
ハードについては、壊れたはずのPICを外して、まっとうなはずのPICに交換したのだから、問題はないはず。
ソフトだって、コピーがうまくいったからこそ、複製のPICを使ってでも、正しく書き込み動作までできたのだから、これまた問題はないはず。
なんなのだ、いったいこれは?
してみると、ひょっとして、私はPICが破損したと思い込んでしまっていたのですけれど、そうではなくて、たとえばVpp電圧の発生回路にダメージが加わって出力が低下して、16Fならいいけど18Fに対しては駄目だとか、そういうPIC以外の原因で書き込みができなかったのかもしれない…。
でもねえ。
オシロで確認してみた限りでは、Vppにも異常はないようなのですよねえ…。
なんだ、これでは、ぬか喜びではないか。
で。オシロのプローブを外したり、PICプログラマをひっくり返して、配線を調べてみたり。
ふと、気がつくと、なんと。いつの間にやら、PIC18F4550が認識できているではありませんか!
だって、確かに、さっきまで、だめだったんですよお。
ううう。
なんなのだ、いったい。
PIC18F4550に書き込みをしてみましたら。
ちゃんと、書けてしまいました。
できちゃったじゃないの。
なんだか、気持ちがわるいけど…。
まっ、いいか。
………。
ひょっとして…。
いや…。
…まさかねえ。
んでも、ここは魔物の棲む世界だから…、つまり、なんでもありかも…。
壊れたはずのPICをもう一度、もとのPICプログラマに戻して、つまり秋月から購入したときの状態に戻して、まさかねぇ、んなことはねぇ、とつぶやきながら、PIC18F4550をソケットに差してみたところ…。
あれま、ちゃんと認識できちゃったじゃないの。
んな、ばかな!
書き込みをやってみましたところ、ちゃんと、書き込めてしまいました!
直っちゃったんですよお。元通りに!
こういうのを狸かきつねに化かされる、というのです。
白昼堂々、都会の真中で。
あ、いや。名古屋はやっぱり田舎か。
なんだか割り切れないなあ。
ほんと、釈然としないなあ…。
おかげで、PIC18F用のライタープログラムを作ってしまったじゃあないの。
苦労してライターソフトを作り上げたというのに、そのとたんに直ってしまうなんて、ひとを馬鹿にするのもいいかげんにしてほしいよお、まったく。
思うに、おそらく、PICを逆差ししたときのショックで、どこかの回路がハングアップ状態になってしまっていたのが、PICをとっかえひっかえ差し替えたりしているうちに、またなにかのはずみで、もとの正常な状態に戻ってしまった、のでしょう。
(そうじゃあないのですよ。違うのですよ。ええ。あれです。魔物のしわざだったのですよ。きっと)
CPUをつくろう!第404回(2009.12.19upload)を再編集
PICでUSBを![第12回]
2011.7.9upload
前へ
次へ
目次へ戻る
ホームページトップへ戻る