毫不延迟地使用蜂鸣器[C] STM32

时间:2018-09-21 11:02:40

标签: c stm32

i使用STM32中的中断计数器来计算风扇的转速。 在计数开始时,我用以下方式发出蜂鸣声:

void Beep(int ton) {
    uint16_t i = 0;
    do {
        GPIO_SetBits(GPIOD, GPIO_Pin_4);
        Delay(ton);
        GPIO_ResetBits(GPIOD, GPIO_Pin_4);
        Delay(ton);
        i++;
    } while (i < 50);
}

当然,延迟中断转换器会获得更多计数。不使用延迟功能如何实现蜂鸣器?

// Start beep, begin measurement
        if (sec_cnt == 3 && measuring == TRUE) {
//          Beep(5000);
            }

        // Stop beep, measurement done
        if (sec_cnt == timer + 3 && measuring == TRUE) {
//          Beep(4000);
        }

0 个答案:

没有答案