PMC0のシンボル定義が見つかりません。

マイコンはRL78/G13 48ピンのR5F100GEです。

搭載されている評価ボードはRM-RL78-G13です。

LチカさせようとP00からHi/Loを出力させようとしたのですが

うまくいきませんでした。

最初、

P0_bit.no0 = 0 // 出力Lo(念のため)

PM0_bit.no0 = 0 // 出力モードに設定

としてから、1秒周期で

P0_bit.no0 = 0 or 1 // 出力ラッチ設定

としていたのですが、Lチカできていません。

ソフト的な設定は他に何か必要でしょうか?

→P00に関しては、PMCレジスタの設定で「デジタル入出力」に設定する必要がありますか?

PMC00はリセット値はアナログ入力です。

これを試そうとしたのですが、PMC0のシンボル定義がなく困っています。(←タイトルの質問です。)

PMC12と14だけ定義されているのですが、なぜPMC0がないのか理解できません。

48ピンにはあると思うのですが違うのでしょうか?

 

Parents
  • チョコです。

    >PMC12と14だけ定義されているのですが、なぜPMC0がないのか理解できません。

    iodefine.hのバグだと思います。64ピンで確認すると以下のようにPMC0もきちんと定義されています。

    #define PMC0         (*(volatile __near unsigned char  *)0x60)
    #define PMC0_bit     (*(volatile __near __bitf_T *)0x60)
    #define PMC12        (*(volatile __near unsigned char  *)0x6C)
    #define PMC12_bit    (*(volatile __near __bitf_T *)0x6C)
    #define PMC14        (*(volatile __near unsigned char  *)0x6E)
    #define PMC14_bit    (*(volatile __near __bitf_T *)0x6E)

    とりあえずは、iodefine.hにこのPMC0関係の定義部分の2行を追加して試してください。

     

  • >チョコ様

    ご回答ありがとうございます。

    Lチカに成功しました。

    ただ
     PMC0_bit.no0 = 0;
    とするかどうかに関わらず、Lチカは出来ました。
    →オシロで確認し、Hi/Loが出力されていることを確認しました。
    P00はデフォルトでデジタル入出力ということでしょうか。

    直接的な原因はGNDとの間をオシロで見たところ、
    波形がなまっていましたので、GNDに落ち切っていなかったようです。
    ブレッドボードにしっかり挿しているのですが、内部が断線しているのか、
    別のところに挿しなおしたところうまくいきました。

    とりあえず解決しましたが、P00については腑に落ちないです。
  • すみません、直前の回答を見ずに投稿してしまいました。
    時間がないのであとで確認します。。
  • >チョコ様、fujita様

    下記、承知しました。
    「36ピン~48ピンはP0はP00とP01しかないので、P0にアナログ機能が兼用されtれいないので、PMC0がなかったのですね。」
    ありがとうございました。
Reply
  • >チョコ様、fujita様

    下記、承知しました。
    「36ピン~48ピンはP0はP00とP01しかないので、P0にアナログ機能が兼用されtれいないので、PMC0がなかったのですね。」
    ありがとうございました。
Children
No Data