2

私は、atmega32 を使用して高速 pwm モードでモーターを制御する (速度を制御する) 方法についてしばらく考えてきました。他のカウンターには別の用途があるため、8 ビットの Timer0 を使用する必要があります。このタスクのタイマーを初期化する方法を知っていると思います:

void initial_io (void){
    DDRC = 0xFF;
    DDRB = 0xFF;
    PORTA = (1<<PA4)|(1<<PA5);
    TCCR0 = (1<<WGM01)|(1<<WGM00); // PWM mode : Fast PWM.
    TCCR0 = (1<<CS02)|(1<<CS00); // PWM clock = CPU_Clock/1024
}

しかし、問題が発生します。次に何をすべきか、メインで何をすべきかわかりません。

私の正確なプロジェクトは、リモートコントロールカーを加速して運転することです。そのため、車から前進するように要求すると、停止から一定の加速度で最高速度まで加速する必要があります。私はアセンブリを知りませんので、私を助けてくれるなら C でやってください。どんな助けも大歓迎です。

4

2 に答える 2