• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:BTFSC 分岐命令の不思議)

BTFSC 分岐命令の不思議

このQ&Aのポイント
  • PIC16F886でスイッチフラグ変数を制御する際に、BTFSC命令が上手く動作しない現象についての疑問
  • シミュレーションでステップごとに確認したところ、フラグの状態によってジャンプが正常に行われないことが判明
  • 解決策として、BTFSC命令の後にGOTO命令を挿入することで正常な動作が確認できた

質問者が選んだベストアンサー

  • ベストアンサー
noname#159916
noname#159916
回答No.1

詳しくないですが。 (1)BTFSCF_SW,0 (2)BSFPORTC,3 (3)BCFPORTC,3 F_SWのbit0が0 の 時は (2)をスキップする。つまり(1)→(3) F_SWのbit0が1 の 時は (2)をスキップしない。つまり(1)→(2)→(3) つまり、どっちの場合も(3)によりクリアされる。 という事だと思いますが。 >RC3 が H になったあと、次のステップでなぜか L に戻るのです。 次のステップは Low にする命令だから、でしょう。

Lucus
質問者

お礼

まったくお恥ずかしい限りです。 umamimiさんの回答を見て「そりゃそーだ!」と顔が赤くなりました。 F_SW が 1 の場合、 (2) のあと (3) が実行されますね。 これを (2) のあと (3) を飛び越える物だと思いこんでしまっていました(笑) 本当にありがとうございました!

すると、全ての回答が全文表示されます。

関連するQ&A