私はPIC16F877aを使用しており、ボタンを使用せずにプログラムをリセットする必要があります。私がデータシートとリファレンスデザインを見ると、MLCRピンにボタンがあります。ボタンを押すと、MCUがリセットされました。しかし、私はCコードで制御することができるリセットが必要です、私はリセットボタンを使用したくないです。それを行う別の方法がありますか?16PIC877A Cコードでリセット
答えて
PIC 8ビットMCUは、ソフトウェアリセットアセンブリ命令があります。
RESET
http://microchip.wikidot.com/8bit:rst
をあなたは、インラインアセンブリを使用する必要があります。私はPICのインラインアセンブリを使用したことがありませんが、これはMPLABの正しい構文であるようthis pageからそれが見えます:
void soft_reset(void)
{
_asm
reset
_endasm
}
リンク先のページの状態、外部ウォッチドッグ・タイマとして一般的に優れている、ということに注意してください完全なシステムリセットをトリガする方法です。ソフトリセットでは、外部デバイスもリセットされません。外部WDTを使用すると、ウォッチドッグのペッティングを停止し、ボード全体をリセットします。
コードが機能しません。 "Asm"は未定義の識別子です。私はどのようにwdtセットアップを知っていません。私が試してみます。 – ahmd14
どのコンパイラを使用していますか?私はGCCを想定していた。 –
MPLABの私の答えが更新されました。 –
#asmおよび#endasmを使用してください。 ( `CLRWDT`命令を呼び出していない)、定期的に無効にすることなくWDT(ウォッチドッグタイマ)を設定することでXC8マニュアル
#asm
RESET
#endasm
// do it again the other way...
asm("RESET");
- 1. FacebookRedirectLoginHelperリセット認証コード?
- 2. C++マルチスレッドミューテックスロック "リセット"
- 3. コード内のC#アプリを完全にリセットする方法は?
- 4. Dreamweaver CS6でコードをリセットする
- 5. VSコードでintellisenseをリセットするには?
- 6. Visual Studioコード内でPowerShellランスペースをリセットする方法コード
- 7. C#でシングルトンインスタンスをリセットする方法は?
- 8. C#gridview列順序リセット
- 9. Cのバインディングをリセットする#
- 10. C#ComboBox SelectedValueフォーカスがリセットされるとリセットされます。
- 11. ドロップダウンリストをリセットするデフォルトの値をリセットするC#
- 12. C#コードで解析/リファクタリングするC#コード
- 13. リセット不可能なフロップのコード
- 14. Javascriptはコードをリセットしますか?
- 15. 配列インデックス変数がC、C++で0にリセットされます
- 16. Flickでのリセットのリセット
- 17. C#のコードで
- 18. Frama-cでCコードをスライス
- 19. C/C++コードでフラッタービルド - 例?
- 20. CコードへのObjective-Cコード
- 21. Unity C#ブールがfalseにリセットされる
- 22. C++:グローバルマウスフックとウィンドウの位置をリセット
- 23. C++出力のリセットまたはクリア
- 24. ネットワークアダプタをリセットするためのC#
- 25. C/C++コード
- 26. Visual StudioコードでのC++コードのコンパイル
- 27. Cコードでこのコードの意味は?
- 28. C++コードをC#コードに変換する
- 29. (Cコードで)cudaでプリフェッチ
- 30. C#コード
から例を使用して、あなたのPICは、短い遅延の後にリセットされます。 –
内部スタックオーバーフローを引き起こす再帰関数を呼び出します。それは8の深さを持つので、これは急速になります。 –
リセットピンに信号を出力することによって、ハードウェアとソフトウェアの入力のいずれかを選択するようなマルチプレクサなどで、ソフトウェアでリセットをトリガすることもできます。 –