[H8-ML(5605)] Re: H8 3694のシリアル
From: tommy <apollo@xxxxxxxxxx>
Date: 2005年06月30日(木)21時31分19秒
tommy です

こんな場合マルチタスクにするには

タスクマネージャーで
各タスクに重みを付け、それに従って見に行き、
終わっていて(フラグが消えている)、データーが有れば、
リングバッファから、1データーを取り、読み出しポインターを進めて、
レジスターに書き込んでフラグを立て、次のタスクに。
まだだったら、何もせずに抜ける。

データー処理側ではバッファーがオーバーフローしなければ書き込み、ポイン
ターを進める。

機能レジスタ側では、フラグが立つと処理をして、終わればフラグを消す

と言うことでしょうか?

Mitani Hiroshi wrote:
> K.Mekata wrote:
> 
>>H8 Tinyの内臓シリアル機能で質問です。
>>
>>Linuxで簡潔な表現をしますと、ブロック型か、非ブロック型か教えてほしいのです。 
>>
>>
>>一定のタイミングでポートから読み取ったデータ(1ビット)を
>>0x30か、0x31に変換し、即、シリアルで出力しようと考えています。
>>
>>H8 Tinyのシリアル機能が、8ビット分を転送しおえるまでの時間
>>待たされるのか、どうか教えていただきたいのです。
> 
> 
> それは、ハードの仕様で決まるのではなくて、
> 送信データをしかるべきレジスタに書いた後、送信完了フラグをポーリングで
> 待つ(ブロッキング)か、書いたときはさくっと抜けて(ノンブロッキング)、
> 送信完了で割込みをかけて送信完了処理をやらせるか、
> ドライバソフトの書き方次第では?
> 
> #3694の仕様書読まずに書いてるので、嘘かもしれませんが。
> --
> 三谷
> 
> 
> 
> 


スレッド概略
[5601(R)](起点)
 └[5603(U)]
   └[表示中]
     └[5606(1)]


投稿順に移動
[←前の記事へ(P)]
[→次の記事へ(N)]


リスト表示へ
[このスレッド(T)]
[本記事の前後(L)]