ともの技術メモコンテンツへスキップともの技術メモ趣味の電子工作などの記録。時にLinuxへ行ったり、ガジェットに浮気したりするので、なかなかまとまらない。CPUの場合には別の方法の時間待ちも可能です。0)というのがあって、その中にCOUNTレジスタというレジスタがあります。このレジスタはCPUコアの周波数の1/2の周波数でカウントアップしていきますので、CPUコアの周波数がわかっていれば、時間待ちに使うことが可能です。0;}本来、CP0のレジスタ読み出しには専用命令(mfc)が必要なのですが、コンパイラにはじめからマクロ定義が用意されているのでこんな感じで使えます。この例は100ms待ってLEDを反転させます。このレジスタには書き込みもできますが、基本的に読み出し専用で使います。読み出し専用で使えば複数のタスクでも共有できるからです。40MHz動作の場合には200秒程度でカウンタが1周しますし、上記の使い方だとその半分で正常に動作しなくなりますので要注意です。ソースリストはこんな感じです→CountレジスタでLチカこのレジスタは特定の区間のCPUの処理時間などの計測にも使えるので結構便利です。デバッガでCPUを停止させるとこのレジスタも停止するので、ブレークポイントを2箇所設定してそれぞれでこのレジスタを見れば処理時間がわかります。コメントをキャンセルメールアドレスが公開されることはありません。date*日本語が含まれない投稿は無視されますのでご注意ください。PIC32MXで7segLEDを駆動してみたおしらせ基本、自分のメモですので、至らぬところがあってもお許しください。古い記事はリンク先(参照先)がなくなっていることがあります。リンクエラーはリンク解除しているだけなので、内容が不自然に見えるかもしれません。