KPIT GNU Tools (4)2008年02月04日 23時53分34秒

KPIT GNU Tools v0801
早いもので KPIT GNU Tools が v0801 にバージョンアップした。
私の環境は、まだ v0601 。
どのタイミングでアップしようかな
というのは、今のところ特に問題がないので必要性がないのだ。
それにしても、バージョンアップする度にオブジェクトサイズがでかくなっていく。


内容的にはH8で BNOT, BSET BCLR の動作が変わった。
これはいいかも


ところで、ダウンロードの項目で
GNUM16C v0801 Windows Tool Chain (ELF)
GNUM32C v0801 Windows Tool Chain (ELF)
と分けてあるので異なるものかと思っていたが、コメントを見ると同じもののようだ。
「Please note that M16C and M32C GNU tools are same tool chain」


しかし、フリーでこれだけのコンパイラが手に入るのはうれしい。


そういえば V850 の環境を HEW に組み込む件、あれも中断したままだ。
MES のように、Cbar に組み込んだ方が手っ取り早いかも...

printf sprintf (2)2008年02月15日 23時07分29秒

printf test
printf sprintf の二回目だ


%f が使える printf を探していたのだが


ftoa( ) があることが分かった。
これがあればことが足りるか?


しかし、KPIT GNU Tools には実装されてないようだ。
もし、実装されていたとしても "%4.2f" に相当する書式は得られないだろう。
ここは、作るしかないか...


でも、フルサポートの printf がないわけではない。
そう、それは NC30WA の中だ。
C:\Program Files\Renesas\Hew\Tools\Renesas\nc30wa\v542r00\src30\lib\
しかし、これはでかい。


出力先としては16×2のLCDを予定しているので "%4.2f" このような指定ができないとちょっとつらい。
この際、固定にしてしまってもよいかも、とは思っているが...


まずは BCC 5.5 で試してみよう。


ありゃ...


Microsoft に報告したら何とかしてくれるのだろうか?

printf sprintf (3)2008年02月16日 23時57分07秒

printf test
タイトルとすこし異なってきた。


ftoa というべきか


   


精度は若干落ちるがシンプルなのがよい、ただし桁数固定。
すこし不満だがLCDの設定した枠からははみ出すことがないので(はみ出す場合も、あるにはある)よしとしよう。


printf("%s\n",atof(30.3, buf));


とこんな感じで使う。


"%6.2f" 形式もあきらめてはいないのだが...


参考:というよりそのまま

printf sprintf (4)2008年02月19日 00時38分57秒

ftoa を printf sprintf に組み込む
ここまできたら、最後まで。

と言いたい所だが、まあ中途半端で
しかも、ぐちゃぐちゃになってしまった。


それでも動けばよしとして
printf に組み込んで終了。


  


でも、こんなことしなくても
int xx の値を100倍しておいて
printf("%c%6d.%02d",(xx<0)?'-':' ',abs(xx/100),abs(xx%100));
これでもいいかな...

RS232-Isolation(1)2008年02月23日 22時10分00秒

RS232-Isolation
最近のことだが
機器に組み込んだマイコンのソフトウェアを
アップデイトしようとしたが何度やっても失敗する。


しかたがないので、
原因はわからないが次のようにしてみた。
機器からマイコンボードを取り外し、単品で書き込む。
ちなみにマイコンは SH2/7045F だ。
このようにすると100%書き込みは成功する。


測定器を持ってなかったからよくわからないが
おそらく、ノイズの回り込みだと思う。


そこで、こういった場合のために
アイソレーションRS232を作ってみようと思う。


こんなものでうまくいくかな...

SPICE2008年02月26日 23時47分25秒

NI Electronics Workbench
最近、時々LTspice を触っているのだがどうにも使い勝手が悪い。
以前使っていた Electronics Workbench に慣れているからかもしれない。
久しぶりに Electronics Workbench のページをたずねてみた。
ところが、行き着くのは National Instruments


あれ、間違えたかなと思って url を見るが間違っていない。
http://www.electronicsworkbench.com/
http://www.interactiv.com/

National Instruments に吸収されたのだろうか?


それはさておき NI Electronics Workbench の評価版があったので
ダウンロードしてみた。(30日間使用できる評価版)
でかい、280Mぐらいある。


使い方は以前のままで特に問題ないが
機能の追加が半端ではない。
なんと、PICや8051のコンパイラまで付いている。
つまり、回路図を入力しその回路上で動くソフトまで作れるのだ。
しかし、肝心のSPICEライブラリは増えてないような気がする。


やりすぎという気もしないではないが
今は、こんな時代なのか

R8C/15 P4_22008年02月27日 09時12分15秒

R8C/15
ルネサスにこんな資料が...
R8C/14-15 に P4_2 がある。


TXD1、RXD1 があったぐらいだから
これも、本当かも...


確かめてみなくちゃ

RS232-Isolation (2)2008年02月27日 22時05分12秒

RS232-Isolation
回路変更だ


いまさらながら、フォトカップラには何度も痛い目にあっている。
はっきり言ってデバイスの中では遅い部類に入ると思う。


しかし、絶縁したい場合には手ごろだ。
これで115200まで使いたいが、まず無理だろう。
せめて57600位まで使えればいいんだけど


こういった用途でよく見かけるのは
6N137 であるが、5Vが必要だし...
でもこれ使ったほうがいいかな


ブロック図は、とあるメーカの RS232 アイソレータ
これだとコンバータと電源が必要だ。
やるにしても 6N137 とCRぐらいにしたい


ISO RS232 Block Diagram


参考:www.meissnerresearch.com/ Meissner Research

RS232-Isolation (3)2008年02月28日 23時50分57秒

RS232 isolator with photo-coupler
RS232 isolator 完成だ!


ちょっと部品追加(コンデンサ2個)


今回は意外とすんなりいった。
RS232-Isolation (2)の回路だと 57600 まで
それ以上になると電源が暴れて通信できなかった。
そこで、コンデンサの追加だ。(C5、C6 をフォトカップラのすぐ近くに実装)
このコンデンサの追加で 115200 まで通信できるようになった。
ちなみに 230400 だと 1/3 ぐらい文字化けする。
予想以上にがんばってくれているようだ。


あとは、回路をいかにコンパクトに組み込むか
コネクタの中に入れ込むことは不可能なので
こんな感じにしようかな


DB9x2


電源はレベルコンバータから供給しているので、外部電源不要。
しかも格安。
高速フォトカップラまでは必要なかった。
できればもう少し部品点数を減らしたいが、こんなものか?


参考:www.meissnerresearch.com/ Meissner Research


調べてみるともうすでにこのような回路で動かしている人がいた。
参考として付け加える。・・・・・・・2008年03月03日 13時59分 追記

RS232-Isolation (4)2008年02月29日 23時38分12秒

RS232 isolator with photo-coupler
こうゆうのを蛇足というのだろうか


部品点数を少しでも減らしたいので
図のような回路も作ってみた。


19200 まではいけるが、38400 になると
波形そのものが消えてしまう。
やはり部品点数が多くても仕方ない。
RS232-Isolation (3) のままいこう。