Это можно записать короче:
PHP код:
|
void check_button(void)
{
static unsigned char prev = 0;
unsigned char state = BUTTON;
if(state ^ prev & state) motor_running = !motor_running;
prev = state;
}
|
Эту функцию надо вызывать каждые 50 мс.
Ну и нажатая кнопка - это что-то типа (замыкает вход МК на землю):
PHP код:
|
#define BUTTON (~PIND & 0x01)
|
P.S. В функцию motor_control() не винкал