高木殿 東浦です 私もこれで泣きました。最初はハードウェアトラブルと思ってました。 3664FのPort Bはデジタル入力、アナログ入力の兼用です。 アナログ入力をディセイブル出来ません。(何とかして欲しい物です) デフォルトでは、0bit目はアナログ入力となっているため、 デジタル入力が使用できません(必ず0を返します) 1bit目から使用する等の逃げ技が必要です。 PortBを全てデジタル入力とされる場合には、アナログ端子設定を変えて 2度スキャンした結果をORとかANDして結果を取得する必要があります。 > 初めて書き込みさせて頂きます。高木といいます。 > > 秋月のH8/3664Fマイコンを購入して、取り組み始めたばかりです。Bポー > トの入力の方法についてお分かりの方教えて頂けないでしょうか? > > BポートはA/D変換器のアナログ入力と汎用入力ポートの兼用になっており、 > レジスタはポートデータレジスタB(PDRB)しかありません。 > > そこで、以下のようなBポート入力チエックプログラムを作ってみましたが > 、うまく入力してくれません。 > > 宜しくお願い致します。 > > −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− > −−− > #include <3664f.h> > main() > { > IO.PCR8 = 0xff; /* ポート設定 ポート > 8(P8):出力 1111 1111 */ > > if (IO.PDRB.BIT.B0 == 0) IO.PDR8.BYTE=0xfe; /* 入力: ポートB bit0 =0, 出力: > ポート8 1111 1110 */ > else IO.PDR8.BYTE=0xfd; /* 入力: ポートB bit0!=0, > 出力: ポート8 1111 1101 */ > } > −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− > −−−− > > > >