スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

PIC18F14K50と2.4インチカラーLCD(その2)

全体の回路とUSB firmwareについて。

 カラーLCDモジュール(YHY024006A)が3.3v動作のため、電源周りは、USBのバスパワーをLDOレギュレータで3.3Vにして、18F14K50とYHY024006Aに供給しています。LEDバックライトにのみUSBの5Vを電流制限抵抗(100Ω)を介して供給しています。
 ここで心配になるのが、18F14K50のVDDに3.3V供給でUSB IF 部分が動作するかです。私の知る限りでは、みなさん18F14K50には5Vを供給してやっておられるようです。とりあえず、内部で生成されたUSBの動作用電圧VUSB(Pin17)を調べてみたところ、3.2Vほどの電圧が出ているようでした。この後で触れるUSB firmwareの実装で確認できている事は、USBのコンフィグレーションがうまく行っている事と、CDCクラスで簡単なデータのやり取りをしている分にはこれといったトラブルは未だ出ていないという事です。

 USB firmware には、Microchip Application Libraries v2010-04-28(MCHPFSUSB v2.7)を流用させて頂きました。usb_device.c(firmware 本体)、usb_function_cdc.c 等といくつかのファイルをそのままMPLAB IDEのワークスペースにコピーするだけで、意外と簡単に動作させる事ができました。ただ一点だけ、私の環境ではうまく行かなかったところがありましたので、メモ代わりに:

usb_function_cdc.c の108行目近辺で

     #pragma udata usbram2

となっている部分を

     #pragma udata //usbram2

のように、usbram2 という SECTION名をコメントアウトするように変更しました。

このようにしないと、この #pragma の後に宣言されている変数(CDC関係の送受信バッファ等)のセクションが、USB DATA用デュアルポートメモリ:0x200-0x2FFの範囲にマップされず、CDC クラスの機能を使用できませんでした。

コメント

コメントの投稿

管理者にだけ表示を許可する

トラックバック


この記事にトラックバックする(FC2ブログユーザー) URL

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。