PICでUSBを!(知識ゼロからのスタートです)
PIC18F14K50のUSB機能を100%自前のソフトで制御する試みです。しかもアセンブラで!
当記事は2009年12月から「TTLでCPUをつくろう!」というタイトルの もとにほとんど毎日連載をしてきたものを再編集したものです。 |
2011.7.8 次へ 目次へ戻る ホームページトップへ戻る |
☆プロローグ 今までUSBを使ってパソコンと通信をする部分にはFTDI社のFT232RLかまたはFT245を使って、RS232C−USB変換をしておりました。 ところがUSBコントローラを内蔵しているPICがあることを知りました。 PICは232C通信をするためなどに使っています。 それならそのUSBコントローラを内蔵したPICを使えばFT232RLを使わなくても済んでしまいそうです。 FT232RLはなかなかに便利なICですが、ただ難点はフラットパッケージしかないことです。 それを使わなくても済むということならば、ここは一番ぜひとも挑戦してみるべきでありましょう。 さっそくPIC18F4550のマニュアルをダウンロードして読んでみたのでありますが…。 |
[第1回]
●プロローグ
しかし当方今までUSBについての知識は全くゼロ。
PICではRS232Cを使ってプログラムを作ったりしていますから、USBもそれと似たようなものだろう、と軽く考えたのが大間違いでありました。
さっそくMicrochip社のサイトからPIC18F4550のマニュアルをダウンロードして読んでみたのですが、全くチンプンカンプンさっぱりわけがわかりません。
PICUSBを使った通信はRS232Cなどの比ではなく、難解なことこの上もないことを思い知りました。
インターネットでそのあたりの情報をさぐってみますと、たいていはMicrochip社が用意してくれているUSB制御モジュール(ファームウェア)をダウンロードしてそれをそのまま組み込んで、そのほかの部分はアセンブラではなくてC18コンパイラで作ってしまうという類のもののようです。
それじゃあUSBについては結局わからないままじゃありませんか。
やっぱり自分の頭で考えて、自分で理解しないことには使いこなすことはできません。
そもそもPICのプログラムをCで書くというのが第一全く気に入りませぬ。
やっぱりPICのプログラムはアセンブラで書きたいのですよねえ。
そもそもPIC18F4550マニュアル(PIC18F4550に限りませんが)は、アセンブラでプログラムを書くことを前提にして説明がなされています。
内蔵USBコントローラを使ったUSB通信のための仕組みについても例外ではありません。
それなら、マニュアルをしっかり読んで理解すれば、アセンブラでプログラムできるはず。
まあ、しかし。
PICアセンブラで内蔵USBコントローラを介してパソコンとの間でUSB通信を試みるなどということはおそらく非常識のきわみでありましょう。
しかし、しかし。
人様がやらないことをやってしまうというのが中日電工の身上なのであります。
かくして苦難の船出となったのでありました。
[以上2011.7.8記]
●いよいよ近況報告の開始です
ここ数日説明をしておりました、regWR回路などのテスト作業は先月(2009年11月)の中頃におこなったものでした。
それから本日まで3週間のタイムラグがあります。
なにをいったいやっていたのか、といいますと、とにかく大変なことになっていたのです。
その間、4ビットCPUの作業は完全に棚上げ状態でした。
で、その大変なことについて、これから3週間前にさかのぼって、順をおって説明をしていくことになるのですけれど、なにしろ内容は非常に濃いものですから、多分3週間やそこらでは片付きそうにありません。
当分の間、このお話しが続くことになってしまいます。
まあ、その間にも、4ビットCPUキットやらND80ZVやらの進展があれば、それも時折はさみながら進めていきたいと思います。
まるでごった煮状態で、それもなかなか煮え切らないという、お読みいただく方にとってもまことにもどかしいお話しの展開になろうかとも思います。しばし我慢いただいてお付き合いをお願いいたします。
私は単細胞で、同時にはひとつのことしかできない、シングルタスク仕様でありまして、いまどきの若いかたのようにマルチタスクはもっとも苦手です。
当然間口をしぼって各個撃破しなければとてもやっていけないのですけれど、ことこころざしに反して、当局の不拡大方針にもかかわらず戦線を拡大してしまった関東軍よろしく、みごとに泥沼にはまってしまいました(なんともたとえが古いですなあ)。
ああ、またしても、本日も時間切れになってしまいました(とにかく多忙なのです)。
泥沼と化したところから這い出さねばなりませぬ。
でも、なんとか少しずつですが、道が明らかになってきつつあるようです。
具体的なお話しは次回からということになりますが、ここでキーワードだけ挙げておくことにいたします。
この3週間に私がかかわることになったキーワードです。
USB、PIC18F4550、MPLAB、C18コンパイラ、PICプログラマ(PIC WRITER)、ATTINY2313
いつものことなのですが、お話しは突然に意外な方向に展開を余儀なくされていくことになります。
キーワードのうち、USB、PIC18F4550については3週間前の時点で、知識ゼロからのスタートです。
その状態から一気に深く深く掘り下げていきます。
いかなる展開になりましょうか、乞うご期待。であります。
CPUをつくろう!第393回(2009.12.5upload)を再編集
PICでUSBを![第1回]
2011.7.8upload
次へ
目次へ戻る
ホームページトップへ戻る