Цитата(sensor_ua @ Feb 14 2006, 19:42)

void delay(unsigned int N){
unsigned int StartTime;
unsigned int CurrentTime;
StartTime = (unsigned int)Tms; // начинаем считать от этого времени
do{
CurrentTime = (unsigned int)Tms;
}
while( (CurrentTime-StartTime) < N)
}
Тогда уж лучше сделать так, поскольку будет тратится меньше процессорного времени
Код
void delay(unsigned int N)
{
unsigned int StopTime = (unsigned int)Tms+N;
while ((unsigned int)Tms < StopTime);
}
и не забыть описать
Tms как
volatile