忍者ブログ
日々の活動記録や、暇つぶしなどなど
[182]  [181]  [180]  [179]  [178]  [177]  [176]  [175]  [174]  [173]  [172
2024/11/22 (Fri) 04:40
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

2008/09/22 (Mon) 00:34
なんとなく今日はH8のプログラムしてました。理由は特に思い出せないんですが爆

なにやってたかってと、マイコンカーでよく使われてるI2CのEEPROMを使えるようにするということ。
前に基板は作ってサンプルプログラムは入れたんだけど動かないから投げていたものをきちんと検証してみました。

と言っても動かないサンプルプログラムほど理解しにくいものはない。
なんせ中で何やってるか理解してないからデバッグのしようがない。

ということで24LC256のデータシートを読む。
なんだ簡単じゃないか。これならサンプルプログラムなんて必要ないやん。

そんなかんじでさくっと自前のプログラムを書いてみた。
いろいろくだらないミスはあったものの、最終的にはきちんと動くものが出来た。
しかもサンプルプログラムよりは動作が速い。と思う。

で、このプログラムをまとめてライブラリにしようとしているのが現在のところ。
H8/3048はI2Cのハードウェアを搭載していないのでソフトウェアI2Cをやっているわけだけども、書き込みに時間を食ってしまい、本来のプログラム実行に支障をきたしてしまうので、バッファに保存データを溜め込みつつゆっくりEEPROMに書き込んでいく必要があるわけですね。
そのためにリングバッファ用意して…という状態で思案中。コードサイズはそんなに気にしないで済むはずだから、たらたら書いてしまえばいいかなぁ。
これがうまく動いたらSCIもリングバッファ化しよう。
いま使ってるprintfって送信終わるまで待ってるからマイコンカーのメインループ内にprintfを書いたとたんにちっとも動かなくなる。これを改善したいという話。
さらにさらにこれもうまくいったらキャラクタLCDの関数も整備するか。

ソフトウェアI2Cを使ってるので他のマイコンにも転用しやすいかなぁと。
できるだけハードウェア依存しないようにプログラム書いてるつもりなんで簡単にAVRに移植できるかな?
まぁ一応の目的としては相撲ロボットに乗っけようかなぁと思ってたりするんだけども。

PR
この記事にコメントする
お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード   Vodafone絵文字 i-mode絵文字 Ezweb絵文字
無題
そこまでするならRTOS使う方がいいんじゃ‥‥。
長船 2008/09/22(Mon)22:56:27 編集
RTOSのイメージ
RTOSって遅いイメージがあるんですが、実際はどうなんでしょう^^;

マイコンカーはH8/3048を24.576[MHz]で使ってるんですが、制御周期500[uSec]なので結構きつきつなんです。

と思っているんですが、この程度の制御周期なら問題ないRTOSとかってあるんですかね。調べてみますか。
使ったことないし検討したことも無いので何もわからんです^^;
strv URL 2008/09/23(Tue)03:01:02 編集
RTOS
タイムティック500μsなら、μITRON系のRTOSなら普通にいけるんじゃないかな。
あと、μITRON系だとTOPPERSとかHOSとかオープンソースのやつも多いから、いざとなったらカーネルに手を入れて最適化することもできる(大概はすでに十分にチューニングされてるけど)。

RTOSってプリエンティブマルチタスクOSと言われてるけど、一般的なRTOSはプリエンティブなのは実行タスクより上位の優先度を持つタスクが起床した時だけで、タスクスイッチングも基本的にはユーザー指示です。
タスクスイッチング許可(待ち状態遷移、あるいは明示的タスク起床)をしないと原則として勝手には実行権を持って行かれないので、クリティカルルーチンのハンドリングに関してはシングルタスクコードとほぼ同程度でいけますね。
長船 2008/09/24(Wed)23:14:05 編集
タスク
RTOSの最大の利点はマルチタスクかと思っていたんですが、そうでもないんですね。

タスク分割とかどうすればいいんだろう。
なんの処理を分割すべきなのか、まとめるべきなのか。
とりあえず制御周期で呼び出される処理はまとめるしかないだろうけど、後の割り込み要因(コースのマーカー検知とか)をどう起動させるか。
結局メインのタスクを無限ループさせておいて、割り込み要因がでたら割り込みタスクを起動させるって感じなんですかね。

実はTOPPERSのキット持ってるんで実験してみますか爆
去年、学内のロボコンで3位になって、景品でもらったんですが未開封でした^^;
strv URL 2008/09/25(Thu)23:55:17 編集
この記事へのトラックバック
この記事にトラックバックする:
カウンター
委託案内
アンプ基板や同人誌を委託販売しています.リンクからどうぞ.(外部サイト)
HA10mini基板セット
HA10mini終段基板
HA10miniハイパワーキット
HPA&Analog vol.6冊子版
同人誌DL委託
同人誌DL委託(旧サークル名)
ブログ内検索
カレンダー
10 2024/11 12
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
最新コメント
[03/08 NONAME]
[01/19 gun534]
[12/14 NONAME]
[12/12 mike]
[12/06 mike]
最新トラックバック
SilverLight
アクセス解析
広告
忍者ブログ [PR]