読者です 読者をやめる 読者になる 読者になる

元派遣プログラマの自称技術系ブログです。雑記とか自作のオープンソースプロジェクトの話とか。
Javaとか組込とかできます。お仕事ください。

LPCXpresso NXP LPC1769で遊んでます。(1)

工作

先日秋月で買ったLPCXpresso NXP LPC1769の設定メモです。

CodeRedのインストールから、FreeRTOS上のUSB仮想シリアルポートでPCと通信ができるところまで持っていきます。

イメージ


現実


CodeRedのインストール

パッケージに巨大な説明書が入っているので、その通りCodeRedをインストールします。

CodeRedへのRTOSのインポート

正規の手順が判らなかったので、適当に設定してます。間違ってたらごめんなさい。

  • FreeRTOSの7.0.0をダウンロードします。http://www.freertos.org/titleからFreeRTOSV7.0.0.zip ダウンロードして、展開しておきます。
  • FreeRTOSの共通ファイルを展開します。FreeRTOSV7.0.0\DemoCORTEX_LPC1768_GCC_RedSuiteの中にある、CreateProjectDirectoryStructure.batを実行します。
  • FreeRTOSをインポートします。CodeRedからImport→FreeRTOSV7.0.0ディレクトリを選択して、先ほど共通ファイルを展開したDemoCORTEX_LPC1768_GCC_RedSuiteのみをチェックしてインポートします。
  • ビルドします。main.cで#errorが出るので、コメントアウトしてから再ビルドします。


以上で問題なくビルドできました。

LPC1769でのテスト

とりあえず、LPC1769でRTOSを起動します。

  • Ethernetの設定がまだなので、uIpタスクをコメントアウトしておきます。LCDも繋がってないので、コメントアウトしても良いかもしれません。
//    xTaskCreate( vuIP_Task, ( signed char * ) "uIP", mainBASIC_WEB_STACK_SIZE, ( void * ) NULL, mainUIP_TASK_PRIORITY, NULL );
  • 再ビルドして、Debug As.. MCU Applicationで実行します。
  • main関数の適当なところにブレークポイントを仕掛けて、引っ掛かれば動いてると思われます。

USB communications device classの有効化

USB CDCを使えるようにします。これができると、USB接続したPCとLPC1769の間で仮想シリアルポートが使えます。

工作編
インストール編

USBケーブルは、LPC-Link用とLPC1769用に2本必要です。

  • USBケーブルでLPC-LinkとPC、LPC1769とPCを、それぞれつなぎます。
  • LPC1769の電源を入れて、CodeRedからFreeRTOSを起動します。
  • Windowsがデバイスを発見します。
  • Windows7の場合、USB Serialのデバイスドライバが見つからないと怒られるので、Blog not foundのdownloadからVCOM_lib1.3.rarをダウンロードします。ダウンロードぺージは→Downloads - cortex-m3-tutorials - A place to share the knowledge about Cortex-M3 based microcontrollers - Google Project Hosting
  • Windowsのデバイスマネージャで、USBSerialに!マークがついてるので、デバイスの更新でVCOM_lib1.3.rarの中にあるusbser.infを選択してドライバを更新します。
  • デバイスをインストール後にLPC1769を再認識させると、COMポートが見えるようになります。
  • TeraTermなどでUSBタスクと通信できます。デモでは、Aを押すとBを返す、一文字づつずらして返すプログラムになっていました。

参考文献

大変お世話になりました。