• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:printfで0x600000番地の次の0x600001番地の値を出力したい。)

printfで0x600000番地の次の0x600001番地の値を出力する方法

このQ&Aのポイント
  • H8マイコンのSRAMメモリの内容を出力する方法について説明します。
  • アドレス0x600000番地のデータをprintf関数で出力してUARTで確認できる方法を紹介します。
  • 次の0x600001番地のデータを出力するためにはどのようにprintf関数を書けばよいかについて説明します。

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

  • ベストアンサー
  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

((volatile u8 *)SRAM_BASE_ADDR)[1] とか.

techhouse
質問者

お礼

回答頂きありがとうございました。 printf("data:%X addr:%p\n\r", ((volatile u8 *)SRAM_BASE_ADDR)[1],&(((volatile u8 *)SRAM_BASE_ADDR)[1])); こうゆう書き方でもいけるんですね。便利ですね。 別にこのdefineは必要ないんですね。 #define SRAM_TEST_ADDR *((volatile u8 *)SRAM_BASE_ADDR) SRAMに書き込んで、それが正常にリードライトできるかどうかやってみたかったのですが、 たとえば、0x600001番地のアドレスにインクリメントしていくだけの時も ((volatile u8 *)SRAM_BASE_ADDR)[1] = ((volatile u8 *)SRAM_BASE_ADDR)[1] + 1; こんなやり方でインクリメントも可能なんですね。

関連するQ&A