LPC1343 USB Virtual COM (USBシリアル変換 : Example pjt使用)

出来た事

1.Example Pjtを利用してLPC1343でUSB-シリアル変換を実現

開発Listへ戻る

Exampleコードを利用してLPC1343でUSB-シリアル変換機能を実現します。
要はLPC1343がFT232RLと同じ機能を持つということです。

こんな感じ

検証はFT232RLを使って行います。


接続
新しく Mini USBのコネクタを準備しなければなりません。
秋月電子Mini USB→DIP 変換の部品があり購入しました。便利です!

USB接続はlpcxpresso.getting.startedのPage45/49参照です

USBとFT232RLの実際の接続


プロジェクトのインポート

-CMSIS バージョン1.3で作成
Example プロジェクトはCMSISの1.3で作られているのでCMSIS1.3にリンクしたプロジェクトとして実行するとすんなり出来ます。
 
 1)Import archived projects (zip)をクリック

2)Browseからインポートするzipファイルを選択。Pathは下の図参照

 3)CMSISv1p30_LPC13xx をインポート
  もう一度1),2)を行い
  examples.lpc13xx.newをインポート
  目的のプロジェクトはusbcdcです。
  じゃまっけなのでusbcdcのみを選択し他はインポートしないようにするとよいでしょう。

 4)Buildする。とエラーなく出来るはずです。
  なんなくDebug(ダウンロード)出来るはずです。


-CMSIS バージョン2.0で作成
 Example プロジェクトはCMSIS1.3にリンクしています、設定でCMSIS2.0に変更する方法がわからないので
 (あるのかないのかも知らないので)New projectから実現します。

 1)New project作成する。このときリンクはCMSIS2.0にする。
 

 2)作ったプロジェクトのsrc内のmain.cは消す
  cr_startup_lpc13.cは残す


 3)Example プロジェクト usbcdcの srcからcコードをコピーし作ったプロジェクトのsrcフォルダへペースト
  このときcr_startup_lpc13.cはコピーしない。
  (下図の青矢印は作ったプロジェクト内にあったものを使う)
  usbcdcのincからhファイルも同様にコピーする。

 4)メインファイル vcomdemo.cにコード追加
 #include
__CRP const unsigned int CRP_WORD = CRP_NO_CRP ;

 5)Buildする。とエラーなく出来るはずです。
  なんなくDebug(ダウンロード)出来るはずです。


動作確認
USBケーブルを差し込むとドライバインストールの要求があります。
ドライバはusbcdcのフォルダにあるのですが、どうやら私のPC win7x64では動きません。

そこでnxpのサイトから入手します。

このリンクでsoftwareにチェックしてlpc13xxでサーチすると出てくる
下の図のファイルをダウンロードし、中のUSBCDCのフォルダから入手します。

 
検証の図のように接続して
Teratermで動作確認したところBardrate 230400まで動きました。
それ以上は文字化けしていましたのでスピードが間に合っていないのでしょう。

ダウンロードするサンプルコードはたぶんkeilコンパイラー用だと思います
LPCXPRESSOではそのまま使えなかったのでドライバだけ頂きます。

2012.3.13追記
FT232RLをはずしてLPC1343のUART Rx,Txを直結して速度を確認したところ
Teratermのmaxだった921600まで通信できました。
FT232RLがよろしくなかったようです。