"8051でソ¥フトリセットを実行する私のソ¥リューションは、ご助言

S

seemanta

Guest
やあ、
私のシステムでは、私には
、 割り込みハンドラから
、 特定の条件では
、 ソ¥フトリセットを実行する必要があります。私は私のアイデアをどのようにさまざまなレベルのすべての割り込みハンドラにネストされているが
、 割り込みハンドラが複数ある。

あたかもそれだけで電源が投入されているしかし、すべてのコストで、私はソ¥フトリセットを実行するには
、 私のシステムの再起動が必要です。

私の解決策は以下のとおり:
コード:Orgの0000hの

者LJMPメイン;Orgの0003H; / INT0割り込みのISR

LCALL MY_ISR

RETI命令メイン:...

...

...MY_ISR:...

...

...

MOV 08、#00hで

MOV 09、#00hで

RETを

 
<a href="http://www.komputerswiat.pl/nowosci/sprzet/2011/03/nowe-komputery-vobisa-z-sandy-bridge.aspx"> <img align="left" src="http://www.komputerswiat.pl/media/2011/17/1678055/xpower-gt-zaj.jpg" /></a> Firma Vobis dodała do oferty komputerów stacjonarnych dwie nowe maszyny z procesorami Core drugiej generacji na pokładzie.<img width='1' height='1' src='http://rss.feedsportal.com/c/32559/f/491281/s/11ba4679/mf.gif' border='0'/><br/><br/><a href="http://da.feedsportal.com/r/92774529404/u/0/f/491281/c/32559/s/11ba4679/a2.htm"><img src="http://da.feedsportal.com/r/92774529404/u/0/f/491281/c/32559/s/11ba4679/a2.img" border="0"/></a>

Read more...
 
やあ、
もし継続で、CPUのパワーダウンモードでの以前のスレッドでは、これ以上のソ¥フトリセットを行う必要はありません。いつものように割り込み処理が完了すると、コントローラに直接命令するだけスリープ命令と
、 すべてのRAMおよびレジスタのタクトに保持される移動します。以来
、 どこかには
、 命令は1つのメモリロケーションへの書き込みをすべきではない記載されてちょうどこの場所で、1つの日本オイルポンプグループを使用することができます。これは実質的な時間はコントローラで操作をスキップしてください。

もしいくつかの他の目的のためには、することができますPOPのうち、2つのバイトアドレスの場所にジャンプしたい場合は、茎には、割り込み処理ルーチン内でプッシュスタックから2バイトです。しかし
、 この場合には、このスイッチングは
、 この割り込みをするたびに行われますが発生します。

よろしく、
Laktronics

 
いいえ
、 パワーダウンについてはありません。私はあまりにも私はこの割り込みを呼び出す毎回ソ¥フトリセットを実行する必要があります。

パワーダウンモードのAT89S52のデータシートとして1泊と言えば、私はちょうど割り込み出てくるように、右外部必要ですか?

しかし
、 私のコードは、何らかの理由で動作していないと私は理由を説明することはできませんしています。
私の場合この問題を解決することはできません午前たぶん私は別のスレッドで私のコードを掲示しなければならない。

よろしく、
Seemanta

 
やあ、
次に
、 スタック、2つのバイトをプッシュから2つのバイトをPopingが(私は高アドレス?が続きます)消費電力の低住所仮定の茎をメインルーチンに割り込み処理ルーチン内では
、 ソ¥フトリセットを実装することができます。そうすることによって、2つの未使用のアドレスと茎の不要な充填を避けることができますこの割り込みを取得するたびにバイトです。後に、割り込みを自動的にリセットスタートアップルーチンは
、 このスキームに移動します。

はい、スリープモードの89S52の外部割り込みを介して、私はあなたには
、 スキームの割り込み細かい作業だと言っ読んだことがあると考え出てくることができます。として私はいくつかが、これは、割り込みを実行した後、プログラムは、命令には
、 単にスリープ命令の次のように行くだけで動けなくなるが見たことremberところで、すぐにスリープ命令の次の、任意のループのルーチンを使用すべきでないそこに。そこに他のプログラムか、後にスリープモードで実行するようなプログラムへのジャンプが続きますはNOPに置くことができます超えています。また
、 メモリへの書き込みまたは私はぼんやりと覚えてのI / Oをすぐにスリープ命令の次のように書き込むための命令を置くことをお勧めされていません。どのような問題がスリープモードに直面している?
よろしく、
Laktronics

 

Welcome to EDABoard.com

Sponsor

Back
Top