0717774ワット発電中さん
2018/04/15(日) 15:28:43.77ID:gtNWIpDy>wait_fastは関数?
はい。
Timer1をカウントしてます。
iwaitの係数は"8"が限界でした。
周辺クロックは80MHz = 12.5nsecなので、計算上は12.5nsec x 8 = 100nsec
ですが、限界の500nsecになります。
void wait_fast(unsigned int iwait)
{
unsigned int val = iwait * 8;
TMR1 = 0;
while ( TMR1 < val){}
}
>あとはループアンロールなど基本的な最適化技術を学びましょう
・・・難しそうですね・
>最終的にはアセンブラ化ですかね
インラインアセンブラでしょうか?