TrueSTUDIOからEclipseへ乗り換える(その2)
前回いきなりシェーキーのプログラムを試してひどい目にあいましたので、もっと簡単なプログラムから始めることにしました。
まずはラジコンサーボのパルス発生です。シンクロで確認したところ、これは問題なし。
次にUSARTを使ったシリアル通信をテストしました。ここで問題発生、ボーレートが狂っています。いろいろ調べていくうちにHSE_VALUEが間違っていることに気づきました。これは外付け水晶の周波数を定義するので、8000000(8百万ヘルツ)でなければなりませんが、80000000(8千万ヘルツ)になっていました。コピペした元がそうなっていたようです。おそらくUSARTとかを使わないと気づかないのでしょう。
コレを直して試しましたが、シンクロで見るとまだおかしい。3倍くらいのボーレートになっています。そういえばこのソースコードでは3倍のボーレートをセットしています。その顛末はこの投稿を見てください。コレがいけないようです。当たり前ですがボーレートをそのままセットしたところ、無事に通信できるようになりました。
ソフトの中身とは関係ないのですが、EclipseのデバッガだとSTM32F4 Discoveryのリセットがかかりにくい感じがします。デバッガにはボードをリセットするボタンはありません。しかし、最初の実行時にはリセットがかかり、main関数の入り口でブレークするはずなのですが、ときどきHard_Faultトラップに落ちたりすることがあります。最初のうちはリセットの問題とは気づかずに、プログラムを疑って時間を無駄にしてしまいました。
どうも手動でリセットしたほうが無難なようです。トラップされた状態からリセットするには、ボードのリセットボタンを押したままデバッガの実行ボタンをクリックし、その後リセットボタンを離せばOKです。
今回はここまで。次回はsprintfとsscanfを使えるようにします。
もうちょっとまとめたら「乗り換えガイド」の加筆訂正をしようと思います。
« 残念なお知らせ | トップページ | TrueSTUDIOからEclipseへ乗り換える(その3) »
「管理人のページ」カテゴリの記事
- スパイ映画に出てきそうな高一再生検波受信機(2022.12.10)
- 「超小型」電池管再生検波ポケットラジオ(2022.11.08)
- サブミニ管5678と大型バーアンテナの再生検波ポータブル(2022.07.14)
- 電池管マイブーム到来(2022.07.01)
- グレイ・ウォルターの真空管式電子カメを作ってみる(2022.06.27)
「ロボット作ろう」カテゴリの記事
- Raspberry Pi3でturtlebotを動かしたいのだけど(2016.06.11)
- STM32F4のAD変換トラブル(その2)(2013.03.29)
- TrueSTUDIOからEclipseへ乗り換える(拾遺)(2012.07.14)
- TrueSTUDIOからEclipseへ乗り換える(その3)(2012.07.13)
- TrueSTUDIOからEclipseへ乗り換える(その2)(2012.07.07)
コメント