Доброго времени суток. При разработке программы для tiny2313 наткнулся на следующую проблемму: изменяются значения глбальных переменных. Влоть до того:
unsigned char ButtonNumber; . . . if(cmd==Play) { Mode=pass;//режим ввода 7мизначного пароля ButtonNumber=0; Beep(); }
void Beep() { Buzzer_ON;//вкл. пищалку delay_ms(200);//использует __delay_cycles Buzzer_OFF;//выкл. пищалку }
После Beep() ButtonNumber уже не ноль а какое-то число. Есть отработки прерываний, но они переменную не трогают. Закономерности найти не могу. Подскажите, пожалуйста, где копать. Большое спасибо.
Сообщение отредактировал an_ga - Nov 24 2009, 05:37
|