CQ-STARM (5) Virtual COM Port2008年04月27日 22時51分31秒

Virtual_COM_Port
Virtual_COM_Port を動かしてみようとサンプルをコンパイルしてみたが動かない。どのように動かないかというと USB デバイスとして認識しない。
しかし、DWM の CD にあるイメージを書き込むと動く。
Raisonance の[Ride7 & ARM Tools] がだめなのか?と思って IAR の [Embedded WorkBench] で Virtual_COM_Port のサンプルをコンパイルしてみたが、Ride7 と同じでUSB デバイスとして認識しない。


どうしてサンプルが動かないの?


● Code Start Address : 8003000
● Device : STM32F103VBT6
● Boot mode : flash
でメイクしているんだけど...


と、いろいろやっているうちに 8000000 番地に間違えて書き込んでしまった。
あたー
JTAG コースに突入か...
と思ったが試しにもう一度書き込みをするとDFU が動く。
どうやら 8000000 番地に書き込んでも DFU は保護されているようだ。


さて、Virtual_COM_Port で検索してみると、DFU and Virtual COM Port not enumerating でも同じように悩んでいる。


このフォーラムで、STM32 bootloading with UART1 を見つけた。
command line boot loader utility available?
Flash Loader Demonstrator v1.1 Alpha Posted for testing
今度試してみよう。

コメント

_ syslab ― 2008年04月30日 09時15分35秒

Virtual_COM_Port も動いた。


Code Start Address : 8003000 を変更しただけじゃだめなのね
ヘッダーファイルの一部に
#define IS_FLASH_ADDRESS(ADDRESS) ((ADDRESS >= 0x08000000) && (ADDRESS <= 0x0801FFFF))
だとか
#define NVIC_VectTab_FLASH ((u32)0x08000000)
と、直接記入してある。
ここを変更しなくちゃ


でも Code Start Address を変更すればそれが反映されるのが普通じゃないかと思うが...

_ syslab ― 2008年05月01日 18時12分54秒

ヘッダーファイルは変更する必要がなかった。
当然といえば当然か
NVIC_SetVectorTable という関数があり、ここでオフセットを指定すればよい。


NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x3000);


でもソース全て書き直すのは手間だな
リンカースクリプトで切替できればいいのだが
まだ、手さぐり

_ syslab ― 2008年05月22日 20時54分41秒

せっかくの Virtual_COM_Port だから USB-RS232 と同じような使い方ができるのではないかと思い試してみた。


...動かない。


CQ-STARM と UC-SGT を接続し、ターミナルとターミナルで動作させる分には問題ないのだが...
CQ-STARM のUSART をマイコンに接続するとうまくいかない。


何が問題なんだろう。

コメントをどうぞ

※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。

※投稿には管理者が設定した質問に答える必要があります。

名前:
メールアドレス:
URL:
次の質問に答えてください:
このブログのタイトルは?(syslab と記入してください)

コメント:

トラックバック

このエントリのトラックバックURL: http://syslab.asablo.jp/blog/2008/04/27/3416582/tb

FC2無料カウンターFC2無料カウンターFC2無料カウンターFC2無料カウンターFC2無料カウンターFC2無料カウンターFC2無料カウンター FC2無料カウンターFC2無料カウンター