// текущий поворот антены в градусахshort nCurrentAngle;
/*****************************************************
*** Функция ShowCurrentAngle ***
*** Отображение текущего поворота в первой строке ***
*****************************************************/ShowCurrentAngle(void)
{
// буфер для строки
unsigned char szBuffer[17];
// переход к первому символу первой строки
lcd_gotoxy(0,0);(szBuffer, "Povorot: %3u ", nCurrentAngle);_puts(szBuffer);
}
/*****************************************************
*** Функция ext_int_menu ***
*** Обработка нажатия на кнопку "Меню" ***
*****************************************************/[INT_MENU] void ext_int_menu(void)
{
#asm("cli");_gotoxy(0,1);_putsf("MENU pressed!");
= 0;();
#asm("sei");
}
/*****************************************************
*** Функция ext_int_left ***
*** Обработка нажатия на кнопку "Лево" ***
*****************************************************/[INT_LEFT] void ext_int_left(void)
{
#asm("cli");_gotoxy(0,1);_putsf("LEFT pressed!");
// поворачиваем влево на один градус(1);
delay_ms(300);(!LEFTPIN.LEFTBIT)
{(1);_ms(300);
}
#asm("sei");
}
/*****************************************************
*** Функция ext_int_right ***
*** Обработка нажатия на кнопку "Право" ***
*****************************************************/[INT_RIGHT] void ext_int_right(void)
{
#asm("cli");_gotoxy(0,1);_putsf("RIGHT pressed!!!");
// поворачиваем вправо на один градус(1);
delay_ms(300);(!RIGHTPIN.RIGHTBIT)
{(1);_ms(300);
}
#asm("sei");
}
/*****************************************************
*** Функция RotateLeftStep ***
*** Поворачивает против часовой стрелки на ***
*** указанное число шагов. ***
*****************************************************/RotateLeftStep(unsigned short nCount)
{
{.0 = 0;= nSteps[nCurrentStep];
++nCurrentStep;(nCurrentStep > 3)
{= 0;
}_ms(2);.0 = 1;
}(nCount-- > 0);= 0x00;
//nCurrentStep = 0;
}
/*****************************************************
*** Функция RotateRightStep ***
*** Поворачивает против часовой стрелки на ***
*** указанное число градусов. ***
*****************************************************/RotateRightStep(unsigned short nCount)
{
{.0 = 0;= nSteps[nCurrentStep];
-nCurrentStep;(nCurrentStep > 3)
{= 3;
}_ms(2);.0 = 1;
}(nCount-- > 0);= 0x00;
//nCurrentStep = 0;
}
/*****************************************************
*** Функция RotateLeft ***
*** Поворачивает против часовой стрелки на ***
*** указанное число градусов. ***
*****************************************************/RotateLeft(unsigned short nCount)
{
// поворачиваем влево на нужное число шагов
Самое читаемое:
Информационно-вычислительная сеть на основе архитектуры клиент-сервер, предметная область Магазин бытовой техники
Компьютерная сеть обозначает
наборы связанных между собой автономных компьютеров. Два компьютера называются
связанными между собой, если они могут обмениваться информацией. Связь не
обязательно должна осуществляться при помощи медного провода. Могут
использоваться самые разнообразные средства связи, включая волоконную оптику,
...