2009年11月21日土曜日

IAR KickStart Kit STM3210E-SK を試す。



 STMicroelectronics のご好意により、先日ET2009で入手したIAR KickStart Kit STM3210E-SKを試します。

1.準備、キットの情報を調べる。
 1)「ST ARM Core-Based Microcontrollers and IAR KickStart Kit」(
リーフ)から。
  ・キット本体の構成 STM32F103ZE-SK+IAR J-Link (On Boad debug Interface)
    IAR J-Link(ARM 用USB 接続JTAG ICE)がキット本体にすでに乗っている。    
  ・IAR Embedded Workbench のコードサイズ制限 32KB (exsample application も32KB以下)
 2)IAR KickStartKit CDを調べる。
   環境 Windows VISTA 64
  ①CDをPCにセットする。
    自動起動 Start.exeを実行を許可する。[WinVISTA]
  ②IAR KickStartが立ち上がる。
  ③「QuickStart Guide and product Information」
    ・Guides and Manuals
     ・IAR Kit QuickStart Guid(.pdf)
    ・STM32F103 Information
     ・Reference manual
     ・Data sheet
    ・Boad schematic

  ※マイクロコントローラ:STM32F103ZE(LQFP144)  

2.IAR Embedded Workbench のインストール。
 引き続き、IAR KickStartの作業
  1)「Software installations」
   ①IAR Embedded Workbench のインストール
     KickStart Editionをクリック
   ②「Welcome to IAR Systems IAR Embedded Workbench Installation」
   ③Install IAR Embedded Workbenchをクリック
     ・Get a license
       ・IAR ホームページ 「Product Registration」でユーザ登録
           メールアドレス等を登録
           会社名、HPは適当に入力
       ・IARからメールが届く
       ・そこに登録確認用のhttpアドレスが記載、これをクリック
       ・IAR ホームページ 「Registration Confirmed」
           License Number と License Key が記載
     ・IAR Embedded Workbenchのインストール 
       ・ライセンスNo. License Key IARのホームページの記載のものCopy/Past
     ・IAR J-Link On Board のインストール
      ・PCとボードをUSBで接続(ステッピングモータの脇のUSBコネクタ)
       ・PWR_LED 点灯
       ・LED点滅
       ・STAT4(LED)点滅
       ・カラーLCDにIARのロゴ表示
     ・PCに「新しいハードうえあの検出」=>ドライバのインストールを実行
       ・ディレクトリC:\Program Files(x86)\IAR Systems\Embedded Workbench 5.0 Kickstart\arm\drivers\JLink\を指定
      ・評価ボード設定
        PWR_SEL Pin3-4 closed - power from J-Link
        JTAG_SEL Open, J-Link-OB is used
3.Example Application の実行
  1)Embedded Workbenchの実行
    ・スタート>すべてのプログラム>IAR Systems>IAR Embeded Workbench for ARM KickStart>IAR Embeded Workbench で実行
  2)Example アプリケーションの実行
    IAR Embeded Workbench IDE起動で「Embedded Workbench Start」ダイアログ表示
    ①Example アプリケーションをクリック
     ST>STM32F10x>IAR-STM32F103ZE-SKを選択しOpen
    ②「Choose destination folder」のダイアログが表示
     適宜なフォルダ ”IAR-SK-Work”を作成し、それを選択
    ③「Workspace」ウインドウで ”LCD_demo Flash Debug”を右クリック選択 「Set as Active」
   (④「LCD_Demo」タグを選択)
    ⑤Workspace」ウインドウの上部コンボボックスに”LCD_demo Flash Debug”が表示
    ⑥Exampleアプリケーションのメイク
     Project>Make 実行
    ⑦Exampleアプリケーションのダウロード
     Project>Download and debug
    ⑧Exampleアプリケーションのデバッグ実行
     評価キットのLCDにカラーパターン表示

3.Example Application LCD_demo について
 1)動作
  ①立ち上がり
    IARのロゴ表示
    カラーパターン表示
  ②実行中
   ・Push Button[USER]でバックライト調整モードに切り替え
   ・Push Button[WKUP]でコントラスト調整モードに切り替え
   ・TRIMMER[AN_TR]でバックライト、コントラストの調整を行う。
 2)解析
  ①Push Button[USER]
    ・CPUピン No.93
    ・ピン機能 PG8
  ②Push Button[WKUP]
    ・CPUピン No.34
    ・ピン機能 PA0、[WKUP]、USART2_CTS(8)、ADC123_IN0、TIM2_CH1_ETR、TIM5_CH1、TIM8_ETR
  ③TRIMMER[AN_TR]
    ・CPUピン No.44
    ・ピン機能 PC4、ADC12_IN14
  ④Graphic LCD
    CPU Pin Func.
    -------+------------------------------------------------------  
    No.42 SPI1_MISO、PA6、TIM8_BKIN、ADC12_IN6、TIM3_CH1、TIM1_BKIN
    No.41 SPI1_SCK、PA5、DAC_OUT2、ADC12_IN5
    No.42 SPI1_MOSI、PA7、TIM8_CH1N、ADC12_IN7、TIM3_CH2、TIM1_CH1N
    No.29 (LCD_CS)、PC3、ADC123_IN13
    No.75 (LCD_RS)、PB14、SPI2_MISO、TIM1_CH2N、USART3_RTS
    No.135 (LCD_BL)、PB5、I2C1_SMBA、SPI3_MOSI、I2S3_SD、TIM3_CH2、SPI1_MOSI

  ⑤Exampleアプリケーションの標準出力はこのLCDに行われる。
   (printf関数で文字が表示される。)

4.Example Application Acc_demo について
1)動作
  評価ボードの傾きを表示し、その傾きに合せてステッピングモータが回転する。
5.Example Application MassStrage について
  サイズ制限に引っかかる。
6.Example Application Temp_demo について
1)動作
   温度表示
7.Example Application USBMouse について
1)動作
   5V電源ジャック側のUSBコネクタとPCを接続
   ジョイステックと2プッシュボタンでマウスとして動作する。
8.Example Application AudioDevice について
1)動作
   5V電源ジャック側のUSBコネクタとPCを接続
   オーディオミニプラグでスピーカーにつなぐとUSBスピーカとして音声出力。
9.Example Application VirtualCom について
  サイズ制限に引っかかる。
10.RTOSを試す。
 1)インストール
  再び、IAR KickStartの作業
  ①「RTOS/middleware」をクリック
  ②「Boad support package」をクリック
    フォルダSTM_HDが表示される。 このフォルダを適宜なフォルダにコピーする。
  ③IAR Embedded Workbenchで ワークスペース[Start_STM32_HD.eww]をOpenし、メイク/ダウンロードする。
 2)実行 2つのLEDが 異なる周期で点滅する。
   2つのタスクを登録し、各タスクごとにLED点滅させる。

感想としてサンプルアプリケーションのソースコード、特にSTMicroelectronicsのライブラリ コードソース[stm32f10x_XXX.h stm32f10x_XXX.c |stm32f10x_systick stm32f10x_systick stm32f10x_systick....等 ]が充実している。
評価ボード自体、カラーLCD、SDカード、シリアルポート、おまけ的に温度センサ、傾斜センサ、ステッピングモータ等々多彩な機能を搭載している。 Ethernetが無いのが残念。
IAR Embedded Workbench の製品版を入手できれば、短期間で目的のアプリケーションが作成できると思われます。
ただ、後は、STMicroelectronics のダウンローダーDfuSe でWorkbench で開発したアプリケーションをどうやって実機にダウンロードするかが、これからの課題です。
一応、考えうる手順を書き留めます。

1)IAR Embedded Workbenchのアプリケーション作成。
 ①hexファイル出力設定
  ・Project>Optionsで「Option for node "XXXX"」ダイアログが表示される。
  ・Output Convert で Generate additional output のチェックボックスをチェックし、Output formatでIntel extendedを選択
 ②アプリケーションをメイクする。 XXXX.hexファイルが作成される。
2)DFUファイル作成
 ①DFU File Managerを立ち上げる
  ・スタート>すべてのプログラム>STMicroelectronics>DfuSe>DFU File Managerで起動
 ②”I want to GENARATE a DFU file from S19,HEX,BIN files”を選択
 ③[S19 or Hex...]で XXXX.hexファイルを開く
 ③Generate実行 ファイル名を指定する。
3)ダウンロード実行 
 ①DfuSe Demonstrationを立ち上げる。
  ・スタート>すべてのプログラム>STMicroelectronics>DfuSe>DfuSe Demonstrationで起動
 ②Upgrede or Verify Actionの[Chose...]でDFUファイルを選択する。
 ③[Upgrade]で書き込み実行

4)ダウンロードについて。調査課題
 ・IAR KickStart Kit STM3210E-SKにはJTAGコネクタが2つのUSBコネクタの間にある。このコネクタはSTM32F103ZEのJTAGデバッグポートに直結 STMicroelectronics STM32F20x用のJTAGケーブル(USB)が有ればいいのですが。現時点で、純正品で存在するのか、サードパーティで、Cortex-M3対応のJTAGデバッガツールでダウンロード可能なのか不明。
 また、自作について調べるが今だ情報にたどり着けない状況です。
 ・今まで、各種マイコンについて評価ボード、スタータキット、あるいは雑誌付録基板を使ってきました、何れの場合も、PCとUSB接続し、必要に応じて、PCに対応ドライバをインストールするだけで、事足りていました。マイコンチップ自体にどの様にアプリケーションをダウンロードしているのか考えもしなかった。この機会に少し調べてみようと思います。

※追加 
これまで、開発したアプリケーションを何とかして、コードサイズ制限のあるIAR Embedded Workbenchを使わずに、IAR KickStart Kit STM3210E-SKに書き込むことを考えてきたが、その手法案についてまとめる。

案1.JTAG書き込み1 前述のとおり、なんとかJTAGケーブル(USB対応)を調達し、このキットのJTAGコネクタを経由して開発アプリケーションを書き込む。

案2.JTAG書き込み2 このキット自体 IAR J-LinkというARM 用USB 接続JTAG ICEが搭載されている。IAR Embedded Workbench と同じ手法で開発アプリケーションを書き込む。
 (以下、案2についての試行錯誤)
 ・JLink.exeと言うツールをSEGGER社のサイトから取得する。
 ・このキットをUSB(JTAG)コネクタ経由でPCにつなぐ。
 ・JLink.exeを起動する。>> 一応 キットとの接続が確かめられた。
  (J-Linkによる、PCと、キットSTM32F103ZEの接続を確認)
 また、JLink.exeのダウンロード時に JFlashARM.exeも併せて取得した、STM32F103ZEにアプリケーションの書き込みには、JFlashARM.exeを使用するようですが、こちらのほうは接続に失敗した。

案3.DFU書き込み 案1、案2何れかの方法により、このキットの STM3210ZEにフラッシュROMにDFU(USBダウンローダー)を書き込む。(多少、DFUの修正は必要と思われる。)開発アプリケーションはDFU形式へのファイル変換を行い、DfuSeを使って、書き込む。

案3改 DFU書き込み 「案1、案2何れかの方法により、」というより、IAR Embedded Workbenchで書き込んでしまえばよいのではないのか、 DFU(USBダウンローダー)のサイズは12KBだから可能と思われる。。。。?

だんだん、手法は見えてきたが。IAR社がこのキットについて、IAR Embedded Workbench以外でのアプリケーションのダウンロードを阻止する意図があった場合。無駄な努力に帰することになる。




0 件のコメント:

コメントを投稿