Подскажите как красивше сделать вход в обработчик таймера под Кейл С (x51).
Отправлено
TkachAndre 04 апреля 2007 г. 12:45
Идея: Регистры таймера при входе в обработчик необходимо грузить константой типа: TR0=0; TH0= -2000>>8; TL0= -2000; //1 ms TR0=1; Но тогда не учитывается время от срабатывания прерывания до загрузки регистров.Чтобы интервал был стабильным необходимо что-то типа: int tmp; TR0=0; tmp1=TL0+(TH0<<8)+(-2000); TH0= tmp1>>8; TL0= tmp1; TR0=1; здесь компилер генерит не очень компактный код,исползуя доп переменную. Как здесь можно обойтись без промежуточной переменной.