Разделы сайта

Моделирование устройства

// текущий поворот антены в градусах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)

{

// поворачиваем влево на нужное число шагов

Перейти на страницу: 1 2 3 4

Самое читаемое:

Конструирование устройства для измерения углового перемещения
Измерения играют важную роль в жизнедеятельности человека. Измерение угловых перемещений весьма распространены, применяются в машиностроении, геодезии, в военном деле, космонавтике, астрономии и т.п. Широкое применение обусловлено тем, что наиболее используемые методы измерений основаны на промежуточном преобразовании этих величин в ...

www.techstages.ru : Все права защищены! 2024