過去記事の訂正② ポートレジスタ直接制御で最速 

 

 2023年9月18日の記事では、マイコンの端子を単純にON/OFFさせてそのスピードを比較していた。

 

 

その結果はPCNTR1レジスタを使った方法かPODRレジスタのビットを直接設定した方法が最速であった。
その時のスピードは、1000回繰り返して467u秒と記述してある。

 さて、端子の出力を制御する方法は5種類あると記述しているが、前回の記事であと三つあることを書いた。なので、今回はこの三つの速度も計測してみようと思う。
各プログラムは以下のように書いた。

R_PORT0->PCNTR3 |= 1 << 14;
R_PORT0->PCNTR3 |= 1 << 30;
R_PORT0->POSR_b.POSR14 = 1;
R_PORT0->PORR_b.PORR14 = 1;
R_PORT0->POSR |= 1 << 14;
R_PORT0->PORR |= 1 << 14;
これらを1000回繰り返してみた。

その結果は・・・・ 三つとも467u秒であった。

変わらんのかーーーーい。

もしかすると最速値が変わるかと期待したが、残念な結果に。