ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
23 ноября
62260 Топик полностью
MegaJohn (06.07.2006 10:39, просмотров: 1) ответил MegaJohn на HALF и FULL ножкой задается а вот чтобы WAVE сделать дак кучу манипуляций надо сделать[+]
манипуляции делаю а по внешним признакам FULL получается. case WAVE [+] 
void stepmotor1_modeselector(u8 var)//FULL, HALF или WAVE
{
  switch ( var )
  {
	case HALF: SETBIT ( ST1_HALF_OUT_REG, ST1_HALF ); break; //Включение режима полушага
	case FULL: CLEARBIT ( ST1_HALF_OUT_REG, ST1_HALF ); break; //Включение режима полного шага
	case WAVE: //Включение режима полного шага в режиме "волны"
	  stepmotor1_clock_tik ( DISABLE ) ; //Прекратить генерацию CLK
	  stepmotor1_enable ( DISABLE ) ; //Выключить драйвер
	  stepmotor1_reset ( ENABLE ); //Активизировать сброс
	  SETBIT ( ST1_HALF_OUT_REG, ST1_HALF ); //Установить вход HALF/FULL в "1"
	  stepmotor1_clock_tik ( MANUAL ); //подать вручную clock (rising)
	  stepmotor1_clock_tik ( MANUAL ); // ''='' (falling)
	  CLEARBIT ( ST1_HALF_OUT_REG, ST1_HALF ); //Сбросить вход HALF/FULL в "0"
	  stepmotor1_reset ( DISABLE ); //Дезактивировать сброс
	  stepmotor1_enable ( ENABLE ) ; //Включить драйвер
	  break;
	case MICRO: break;
	default: break;
  }
}