Bir AVR (veya yaklaşık) tersi hesaplamak için etkili bir yol bulmaya çalışıyorum.
Hızı doğrusal olarak değiştirebilmem için bir step motorun nabız süresini hesaplamaya çalışıyorum. Dönem, hızın tersi ile orantılıdır ( p = K/v), ancak bunu anında hesaplamanın iyi bir yolunu düşünemiyorum.
Benim formülüm
p = 202/v + 298; // p in us; v varies from 1->100
Arduino üzerinde yapılan testlerde, bölüm tamamen psabit bırakarak yok sayılıyor gibi görünüyor 298(belki de bu avr-gcc'de farklı olacaktır). Ben de vaşana kadar bir döngüde toplamaya çalıştım 202ve döngüler sayma, ama bu oldukça yavaş.
Bir arama tablosu oluşturabilir ve flash'ta depolayabilirim, ancak başka bir yol olup olmadığını merak ediyordum.
Edit : Belki başlık "verimli bölme" olmalıdır ...
Güncelleme : Pingwept'in işaret ettiği gibi, hızı dönemle eşleme formülü yanlış. Ancak asıl sorun bölme işlemidir.
Edit 2 : Daha fazla araştırmada, bölme arduino üzerinde çalışıyor, sorun hem yanlış formül hem de başka bir yerde bir int taşması nedeniyle oldu.