(toppers-users 277) printf を使ってみました。

tetsuji okashiwa okashiwa @ potato2.hokkai.net
2001年 9月 30日 (日) 21:05:46 JST


旭川の大柏といいます。
先日、質問いたしました”画面表示用コマンド”についてご回答下さった、
もなか様、今井様、直接メールを下さった篠崎様、大変ありがとう御座いました。

すぐに実行できそうだった今井様のメールに従って試みてみました。

>CQ RISC評価キット SH-1(以下、単にキットと呼びます)に付属す
>る処理系ではprintf()などの入出力関数がライブラリに含まれてお
>り、これらの関数を使用することでデバッガ画面に文字列表示を行
>うことができます。

>キット付属デバッガ対応版JSPカーネルでは、上記の関数群に含ま
>れるputchar()を利用して文字列表示を実現しています。

>jsp/CQ_SH1/main.c 52行目

>int monitor_putc(int c)
>{
>return putchar(c);
>}

>(jsp/CQ_SH1/main.cのように)
>printf関数を含んだ部分を別ファイルにして、キット付属のコンパ
>イラでコンパイルを行い、オブジェクトファイルを生成します。
>その後、他のオブジェクトファイルとリンクして実行ファイルを
>生成します。

jsp/CQ_SH1/main.c に早速、上記をまねて

/* printf の呼び出し */
int printf();

と加え、サンプルプログラムに

while(1){
    printf("task%d is running (%3d).  %3d \n",(int)tskno, n, 2*n);
    ++n;
    for(i=0;i<80000;i++);
    }
と書いたところ問題なく表示されました。
しかし、以前のメールにも書きましたが¥nを¥rにしたところ改行されずに表示
されましたがやはり455回くらいで停止しました。

>キット付属デバッガの仕様で1行の文字数が制限されているためと
>思われます

ということですね。¥r単独では使わないことにします。

>キット付属デバッガ対応版に関してはJSPカーネル自身でシリアル
>ポートの管理を行わず、モニタ・プログラムに任せています。その
>ため、serial_open()等を使うには、以下の2つの方法があります。

>1.キット付属デバッガ「非対応」版JSPカーネルを用いる
> (デバッガなしで実行する)
>2.jsp/config/sh1/hw_serial.hを改造し、ポート2を
>  使うようにする

次は上記1番のデバッガ無しでJSPカーネルを用いたいと思います。もなか様、篠
崎様が教えて下さった
ことはデバッガ無しでやった方が僕にはわかりやすそうな気がするので、アルファプ
ロジェクト製
AP-SH2F-0Aに北海道工業試験場の堤様が公開したSH2版を載せて
試みてみたいと思います。

本当にありがとうございました。

旭川高専 大柏哲治



-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: <http://www.toppers.jp/pipermail/users/attachments/20010930/fcc1fd91/attachment.html>