Форум myROBOT.ru » Лаборатория » Микроконтроллеры » Микр pic16f785 странно себя ведет

Страниц (1): [1]
 

1. eak - 19 Июня, 2012 - 01:17:31 - перейти к сообщению
Всем привет,
Имеется роботик на основе pic16f785, имеется программка (компилятор CCS) которая крутит колесики в разные стороны. Проблема в том что не смотря на способ кадансирования, будь то внутренний осциллятор либо внешний кварц, программа выполняется не равномерно. Плюс ко всему функция delay_ms(K) почему то не работает, т.е. значение K в мс. не соблюдается. Т.е. получается что проблемы 2.

П.с. Используется L293D, питание общее на весь базар

Заранее спасибо за помощь

CODE:


#include<16f785.h>
#include <math.h>

#use delay(clock=8Mhz)
#fuses INTRC_IO,NOWDT,NOPROTECT,NOPUT


#define EN pin_c0
#define A1 pin_c3
#define A2 pin_c6
#define A3 pin_b4
#define A4 pin_b5
#define LED pin_c2

unsigned int16 duty;

void main()
{
setup_oscillator(OSC_8MHZ);

delay_ms(3000); //Startup delay
output_low(EN);
while(1){

output_low(EN); // EN OFF
delay_ms(500);
output_high(LED); // LED on
output_high(A1);
output_low(A2);
output_high(A3);
output_low(A4);
output_high(EN); // EN ON
delay_ms(1000);

output_low(EN); // EN OFF
delay_ms(500);
output_low(LED); // LED off
output_high(A2);
output_low(A1);
output_high(A4);
output_low(A3);
output_high(EN); // EN ON
delay_ms(1000);

}

}