Bonjour,
J'ai un projet de contrôle de servos par un PIC embarqué sur un modèle réduit. Je me heurte à des difficultés d'exécution de calculs sur le PIC 18F4520.
Mon code est le suivant (le code complet est en PJ) :
void main (void)
{
long delai = 45;
long val_l;
open_usart();
imp_long(delai);
val_l = 1000*delai/180 + 65535 - 1000;
imp_long(val_l);
imp_long(delai);
}
J'imprime via le RS232 et mon resultat est :
45
-1063745088
5640192
alors que j'attend (ça fonctionne sur le simulateur de MPLAB!) :
45
64785
45
A l'aide ! Je n'arrive pas à trouver de solution (même en décomposant le calcul).
Merci de vos pistes.
-----