[Uclinux-h8-devel] Re: CSCR、SCR2、whileループで?です。

Back to archive index

Yoshinori Sato ysato****@users*****
2005年 3月 7日 (月) 16:36:46 JST


At Fri, 04 Mar 2005 15:00:41 +0900,
Nobuyuki Maruyama wrote:
> 
> 佐藤様、寺脇様、早速のお返事を有り難うございました。
> 
> >get_push_SWのprintf止めたらどうなりますか?
> > fflush(stdout) を入れる
> 
> どうもwhile関数内での処理の問題のようで、
> 
> int main(void)
>  {
> 	   int i = 0;
> 	   int SW = 1000;
> 
> 
>  	   while(SW--)	
> 
> 		{
> 		   printf(" while loop : %d times\n", i ++);
> 	  	   fflush(stdout);
> 		}
> }
> 
> としても250回ほどで止まってしまいます。
> 
> 
> PA0自体も初期化がうまくできていないのか
> CPUの93番pinでSW-ON:4.92V/OFF:0V となっているにもかかわらず
> PADRの読み出し値は0のままです。
> 
> ???が多く、もう少し頑張ってみます。

止まる方はバージョンの問題らしいので、IOの方だけ。

PAは何も初期化していないので(多分)どこかで使っていなければ読めるはず
ですが…回路図が今手元に無いので詳細不明。ごめんなさい。

これに関連して、前回書くのをすっかり忘れていましたが、"cat /proc/gpio"で
I/Oポートの利用状況を見れます。

これで"-"になっていれば誰も使っていません。それ以外("I","O","X")の場合
は誰かが使っているので、ユーザー側で触ると何が起きるか判りません。

> >えーっと、動かしているボードはH8MAXですよね。
> >ということであれば、CSCR = 0x0fは無理です。
> >RedBootの方で初期化しているので、単純にI/Oポートを使うだけなら、設定する必要は
> >ありません。
> >SCR2もドライバが管理しているので、注意しないと勝手に書き換わります。
> >こっちは使わないようにカーネルを作りなおせば、自由に使えるようになります。
> 
> 有り難うございます。
> 元々はAKI-H8/3069にCFカードを付けて使っていたのですが
> 11月にH8MAXの存在を知って以来嵌ってます。(素晴らしいボードですね。)
> 
> ただ、OS上での組み込み系のプログラムは初めてで、
> ドライバが何を行っているのか、未だ勉強不足で理解し切れていません。
> 素人な質問ばかりするかとは思いますが今後ともよろしくお願い致します。
> 
> *この話題はここではなく、H8MAXのsupport forum でした方が良いでしょうか?

ここでもいいと思いますが。
ハードウエアの詳しい所になると、私は答えられる自信がありません…
ということで誰かくわしい人お願いします。

-- 
Yoshinori Sato
<ysato****@users*****>



Uclinux-h8-devel メーリングリストの案内
Back to archive index