本文へ移動
サポートシェアリングソリューション
OKWAVE Plus

このQ&Aは役に立ちましたか?

締切済み
※ ChatGPTを利用し、要約された質問です(原文:picの遅延処理について。)

picの遅延処理について

2023/10/18 02:41

このQ&Aのポイント
  • 遅延処理を入れると正常に機能しない現象が発生しています。
  • 頻繁にエラーが出て書き込めない状態になっています。
  • pickit2の使用が関係している可能性があります。
※ 以下は、質問の原文です

picの遅延処理について。

2010/08/15 20:55

いつも皆様にお世話になっております。
現在dspicで試作回路を作成しています。
プログラム内で遅延処理(delayやNop)を使用するとその時点で停止しているようです。
遅延処理をプログラム内にいれない場合は正常に機能しています。(スイッチを押すとLEDが点灯する...など)
何日か前までは遅延処理を入れていても正常に機能していました。
急にこのようにおかしくなるということは、どういったことが原因なのでしょうか?おわかりになられる方がいらっしゃいましたらご教授をよろしくお願いいたします。

pickit2からの書き込み時に頻繁にエラーが出て、何回も書き込み動作を行わないと書き込めない状態になってしまっているのですが、関係あるのでしょうか...?

回答 (2件中 1~2件目)

2010/08/16 01:40
回答No.2

>何日か前までは遅延処理を入れていても正常に機能していました。
ということですから、実行環境の影響の可能性が大きそうです。
 
>pickit2からの書き込み時に頻繁にエラーが出て
ということですから、
(1)dsPIC基板の電源電圧、電源電流容量の確認
(2)発信器や分周設定などを他デバイス設定で行っていないか
 
あとは
(3)コンパイル時に、最適化オプションなどを変更してしまっていないか
(4)トレース機能を含むデバッグ用ライブラリをリンクしてしまっていないか
(5)ディレイを設定するコールの単位系を間違えてしまっていないか
 (1usディレイするつもりで、1sのウェイトライブラリを呼んでいるとか)
などでしょうか。
 
もう少し詳しい情報があると良いかも知れません。

このQ&Aは役に立ちましたか?

この質問は投稿から一年以上経過しています。
解決しない場合、新しい質問の投稿をおすすめします。

質問する
2010/08/16 00:34
回答No.1

>>遅延処理をプログラム内にいれない場合は正常に機能しています


この手のバグは
割り込みや
loop 抜けに 問題ある場合が多い
(ほかにも要因は多いが 一番初めに疑う)


割り込み禁止 の場合





割り込み禁止

WAIT:  xxx    ←┐
    xxx     │ ← ループを抜けるまで 反応しない
    loop WAIT  ┘
 
割り込み許可





もちろん無限ループなんかも ・・・ orz


どっちにしろ全ソースがないとどうにもならない
けど
全ソースうpされてもデバッグする気はない

お礼をおくりました

さらに、この回答をベストアンサーに選びますか?

ベストアンサーを選ぶと質問が締切られます。
なおベストアンサーを選びなおすことはできません。