Renesas Synergy™

FAQ 104292 : E7、E8、E10TまたはE8aエミュレータを接続した状態で、特定のポートのリード・ライト値が正しくない。

Q:質問

E7、E8、E10TまたはE8aエミュレータを接続した状態で、特定のポートのリード・ライト値が正しくない。

 


A:回答

例えば、H8/38024ではE7、E8、E10TまたはE8a エミュレータ の制御にP34, P35, P36, P95を使用しますが、P31,P32等の残りのポートのPDRの内容には次のような制約があります。

  • ブレーク中はポート3、ポート9を使用して制御します。PDRはバイト単位で操作するレジスタであるため、エミュレータが動作するにはPDR3,PDR9を「バイト単位で」リード/ライトします。その際、本来のPDRの内容は制御ソフトがブレーク直後に退避します。そしてプログラム実行の直前に退避していた値を書き戻すという操作をします。

  • High-performance EmbeddedWorkshopのリフレッシュコマンドを実施した状態では、エミュレータの制御ソフトはブレーク直後に退避した内容をPC画面上に表示しているだけ、実際にPDRのアクセスを行なっていません。従って、ブレーク中に入力端子の状態を変化させても(実際のマイコンのPDRには値が設定されますが)、エミュレータ制御ソフトはPDRを読みにいかず退避した値を表示しているため内容が更新されません。

  • 同様にI/Oレジスタウインドウや、メモリウインドウでPDRのライトをしたとき、エミュレータ制御ソフトは画面上で値を更新しますが、実際にPDRに書込みを行なうのはプログラム実行直前です。

 

他にご質問がございましたら、リクエストを送信してください