

facendo alcune prove ho notato che il servo:
gira a dx con 2ms
posiz. centrale 1ms
gira a sx con 0.25ms
è abbastanza coerente la cosa?
volevo chiederti:avrei bisogno che il servo avesse un movimento più fluido e più veloce potresti darmi una dritta questo e il programma
- Codice: Seleziona tutto
#include <PIC.h> // contiene i nomi mnemonici di registri e porte
__CONFIG (XT & WDTDIS & PWRTEN & UNPROTECT);
#include "settaggioservo.h" // file che contiene il settaggio delle porte
#include "delay.c"
void main(void)
{
settaggio();
while(1)
{
if(PL1==0) //se premo pulsante 1
{
DelayMs(30); //antirimbalzo
if(PL1==0) //se premo pulsante 1
{
LED=1; // accendo led
SER=1; // segnale livello alto 1
for(i=0;i<8;i++)
{
DelayUs(250); //attesa 2 millisec. (per rotazione a destra)
}
SER=0; // segnale livello basso 0
for (i=0;i<72;i++)
{
DelayUs(250); // attesa 18 millisec.
}
}
}
if(PL2==0)
{
DelayMs(30); //antirimbalzo
if(PL2==0) //se premo pulsante 1
{
LED=1; // accendo led
SER=1; // segnale livello alto 1
for(i=0;i<4;i++)
{
DelayUs(250); //attesa 1 millisec. (per posiz.centrale)
}
SER=0; // segnale livello basso 0
for (i=0;i<76;i++)
{
DelayUs(250); // attesa 19 millisec.
}
}
}
if(PL3==0)
{
DelayMs(30); //antirimbalzo
if(PL3==0) //se premo pulsante 1
{
LED=1; // accendo led
SER=1; // segnale livello alto 1
DelayUs(250); //attesa 0.25 millisec. (per rotazione a sinistra)
SER=0; // segnale livello basso 0
for (i=0;i<79;i++)
{
DelayUs(250); // attesa 18,75 millisec.
}
}
}
LED=0;
}
}
grazie Fabio

