Daily Archives: 2012年9月12日

[HEW]コンパイル時,gcc -Wallのように全ての警告メッセージを表示させる方法

2012年9月12日 (カテゴリ: C:)

H8の統合開発環境であるHEWの話です。 C言語のコンパイラとして、例えばgccを指定する場合だと-Wallオプションを使用することで、未使用変数のチェックなどの数多くの警告を出してくれます。 一方、H8マイコン開発環境のHEWでは、デフォルトでは上記のような軽微な問題に対してメッセージを出してくれません。ですが、このふるまいはコンパイルオプションを変更する事で変えることが出来ます。 変更の手順は以下の通りです。 メニューバーより、ビルド->H8S,H8/300 Standard Toolchainを選択します。 オプション項目の欄から、インフォメーションメッセージを選択します。 &#8220…


続きを読む

12ステップで作る組込みOS自作入門: 1stステップの作成結果

2012年9月12日 (カテゴリ: C, H8, 読書メモ:)

読み始めた「12ステップで作る組込みOS自作入門」の本ですが、gccだと書籍の内容そのままで楽しくないので、H8の製造元であるルネサスが出しているIDEのHEWを使用して同じものを作ってみる事にします。 ターゲットのマイコンも,書籍ではH8/3069Fで説明していますが、H8/3694Fをターゲットに作成します。 このチップを使用する理由は、”たまたま手元にあったから”というだけです。 3069FはフラッシュROMが512Kbteなのに対して、3694Fのほうは32kByteしかないので途中で容量不足になりそうな気もしますが、出来るところまで作ってみて足りなくなったらそ…


続きを読む

変数の特定ビットだけを0に落とす時に、条件式を簡単に書く

2012年9月12日 (カテゴリ: C, C#, Java:)

※本記事の例はC言語ですが、java,C#などのビット操作が出来る言語に共通した話です。 まずは、ビット操作の基本的な考え方です。 たとえばcharがたの変数dataから、5bit目だけ0に落としたい場合を考えます。 この場合のコードをシンプルに書くと、以下のようになります char data = xxx; char ans = data & 0xDF;char data = xxx; char ans = data & 0xDF; これは、以下の論理式演算(ビット単位のand)を行って、特定ビットを落としています。 (data) xxxx xxxx and (0xdf) 11…


続きを読む

マイコンで使わないI/Oピンを,出力モードにすべき理由

2012年9月12日 (カテゴリ: 電子回路基礎:)

PICなどのワンチップマイコンを使ってプログラムを作る際、場合よっては全ポートを使用しない場合もあるかと思います。 未使用のI/Oポートがある場合、該当のピンをinputとoutputのどちらにするかという疑問がありました。 どちらでも問題ないかと思っていたのですが、出力にしておいたほうが良いらしいです。 理由ですが、出力にしておくと、ピンの先を何も接続していないオープンな状態でも良くなります。 でも、入力ピンにする場合は、ピンの先をプルアップorプルダウンする必要があります。 これは、入力をオープンにすると、ノイズによる動作の危険があるためです。 回路上、使わないピンをすべてプルアップorプ…


続きを読む