X-Git-Url: https://git.realraum.at/?a=blobdiff_plain;f=avr-projects%2Fr3cam-steppermotor%2Fr3cam-steppermotor.c;h=1bcad566016d57461d72c8c40c4b8fb6e1ab80d7;hb=4c2c5449084ed35b84341c91c08595c0d55ef20d;hp=fcebc656eb940e0c450fdf41e1f6de2273588132;hpb=912fd90fb14e42009388573ec222a729517fdb71;p=svn42.git diff --git a/avr-projects/r3cam-steppermotor/r3cam-steppermotor.c b/avr-projects/r3cam-steppermotor/r3cam-steppermotor.c index fcebc65..1bcad56 100644 --- a/avr-projects/r3cam-steppermotor/r3cam-steppermotor.c +++ b/avr-projects/r3cam-steppermotor/r3cam-steppermotor.c @@ -79,7 +79,7 @@ void EVENT_USB_Device_ControlRequest(void) #define M_CLK 1 #define M_ENABLE 2 #define M_RESET 3 -#define M_HALFSTEPS 4 +#define M_FULLSTEPS 4 static uint8_t m_clk_divisor_ = 0; static uint8_t m_clk_divisor_counter_ = 0; @@ -119,6 +119,7 @@ ISR(TIMER0_OVF_vect) void motor_set_speed(uint8_t speed) { m_clk_divisor_ = 0xFF - speed; + CDC_Device_SendString(&VirtualSerial_CDC_Interface, "m_clk_divisor_ = %d\n",m_clk_divisor_); } void motor_run(uint16_t steps, uint8_t direction) @@ -144,7 +145,7 @@ void motor_run(uint16_t steps, uint8_t direction) void init_pins() { M_DDR = 0x0F; - M_PORT = 0 | (1 << M_RESET); + M_PORT = (1 << M_RESET) | (1 << M_FULLSTEPS); // Configure timer 0 to generate a timer overflow interrupt every // 560us (NEC Protocol) @@ -165,10 +166,10 @@ void handle_cmd(uint8_t cmd) case 't': led_toggle(); break; case 'r': reset2bootloader(); break; case 's': motor_stop(); break; - case 'c': motor_run(300,0); break; - case 'w': motor_run(300,1); break; - case 'C': motor_run(1000,0); break; - case 'W': motor_run(1000,1); break; + case 'c': motor_run(50,0); break; + case 'w': motor_run(50,1); break; + case 'C': motor_run(300,0); break; + case 'W': motor_run(300,1); break; case '+': motor_set_speed(++cur_speed); break; case '-': motor_set_speed(--cur_speed); break; default: CDC_Device_SendString(&VirtualSerial_CDC_Interface, "error\n"); return;