夏休みの工作のノリで、インタフェース誌9月号の付録マイコンの組み立て。
とは言っても、表面実装部品はすべて実装済みなので、RJ45レセプタとかDCジャックを半田付けするだけで、余計なポストを付けなければ19箇所(うち2箇所はリセットSWにリード線を付ける所なので、基盤上は17箇所)の半田付けで完了。
この基盤、サイレントシステムという会社で作っている、SilentCというインタプリタ(簡易httpサーバ&tftpサーバが組み込まれている)をファームに積んでいるので、クロスコンパイルとかアセンブラの類をいじらなくても十分楽しめる。
インタプリタなので対話型実行もできるため、telnetでつないで
{ int k,i; k=0; for(i=1;i<=10;i++){k=k*i;} PrNum(k); }
と打てば120が表示される。
再帰で書くなら、ファイルMainに
5 f(int a){ if(a<=1){return a;} return a*f(a-1);}
と書き足しておけば、
PrNum( f(5) );
で120が表示される。調子に乗ってやってるとf(16)で-32768になったり、f(20)でハングしちゃったりするあたりはワンチップにナニ期待してんだよということで。
手軽にいろいろ試せるのはいいね。
その他のライブラリやSilentCの言語仕様については、SilentC組み込み製品のOS-1プログラミングマニュアル[PDF]に色々載っている模様。
うーん、これWindowsに載らないかなあ。ちょっと細かい事書くのに便利そうなんだけど。
とは言っても、表面実装部品はすべて実装済みなので、RJ45レセプタとかDCジャックを半田付けするだけで、余計なポストを付けなければ19箇所(うち2箇所はリセットSWにリード線を付ける所なので、基盤上は17箇所)の半田付けで完了。
この基盤、サイレントシステムという会社で作っている、SilentCというインタプリタ(簡易httpサーバ&tftpサーバが組み込まれている)をファームに積んでいるので、クロスコンパイルとかアセンブラの類をいじらなくても十分楽しめる。
インタプリタなので対話型実行もできるため、telnetでつないで
{ int k,i; k=0; for(i=1;i<=10;i++){k=k*i;} PrNum(k); }
と打てば120が表示される。
再帰で書くなら、ファイルMainに
5 f(int a){ if(a<=1){return a;} return a*f(a-1);}
と書き足しておけば、
PrNum( f(5) );
で120が表示される。調子に乗ってやってるとf(16)で-32768になったり、f(20)でハングしちゃったりするあたりはワンチップにナニ期待してんだよということで。
手軽にいろいろ試せるのはいいね。
その他のライブラリやSilentCの言語仕様については、SilentC組み込み製品のOS-1プログラミングマニュアル[PDF]に色々載っている模様。
うーん、これWindowsに載らないかなあ。ちょっと細かい事書くのに便利そうなんだけど。