من برنامه ای نوشتم که مقدار تاخیر رو با وقفه میشه تغییر داد مشکلی که داره این است که بعضی مواقع به جای یک بار افزایش تاخیر دو مرتبه این کار رو انجام میده
interrupt [EXT_INT0] void ext_int0_isr(void)
{
// Place your code here
delay_ms(100);
if (PORTD.2==0)
{
delay=delay+31;
if (delay>620) delay=620;
send_speed();
}
}
interrupt [EXT_INT0] void ext_int0_isr(void)
{
// Place your code here
delay_ms(100);
if (PORTD.2==0)
{
delay=delay+31;
if (delay>620) delay=620;
send_speed();
}
}
دیدگاه