代码好像没上传成功,补上
- int main(void)
- {
- u16 adc_start;
- u16 adc_over;
- float v_start;
- float v_over;
- float number;//电位器初始位置和最终位置差值
- float time;//电机从初始位置到最终位置要运行的时间
- delay_init();
- Adc_Init();
- while(1)
- {
- adc_start=Get_Adc_Average(ADC_Channel_1,10);
- v_start=(float)adc_start*(3.3/4096);
- delay_ms(10);
-
- adc_over=Get_Adc_Average(ADC_Channel_1,10);
- v_over=(float)adc_over*(3.3/4096);
- delay_ms(10);
-
- number=v_over-adc_start;//点位置初始位置和最终位置的差值
- if(number>0.1)
- {
- if(number>0.1)
- time=number*100;
- ENABLE=0;//电机全速正转
- DIR=0;
- delay_ms(time);
- ENABLE=1;//电机停止
- DIR=1;
- }
- if(number<0.1)
- {
- if(number<0.1)
- time=number*100;
- ENABLE=0;//电机全速反转
- DIR=1;
- delay_ms(time);
- ENABLE=0;//电机停止
- DIR=1;
- }
- }
- }
|