CyrilFeliciano / MINF_TP1

0 stars 0 forks source link

GestPWM.c -> bugs / améliorations / remarques #3

Open PBYetml opened 6 months ago

PBYetml commented 6 months ago

FCT _INIT..

FCT _GET..

FCT _DISP

FCT _EXCPWM

FCT _EXCPWM_SOFT

AUTRES

PBYetml commented 5 months ago

L'évaluation des fichiers source et headerfile (GEST_PWM .c et .h) est terminée

CyrilFeliciano commented 5 months ago
  1. Le start des timers devraient se faire a la fin de cette fonction.

  2. DRV_OCx est le driver pour les OCs et DRV_TMRx est le driver pour les timers.

  3. Un uint32_t va de 0 à (2^16) -1.

  4. Un int32_t va -2^31 à (2^31) -1

  5. "i" est l'indexe pour le nombre de valeur prise pour la moyenne glissante, et "n" est l'index pour la valeur moyenne de cette moyenne glissante.

  6. valeur_variant_ADC1 est la valeur que nous allons donner à la structure pour le moteur DC, et valeur_variant_ADC2 est la valeur que nous allons donner à la structure pour le servomoteur. Le résultat obtenu correspond aux cahier des charges.

  7. Cela est lié a la librairie "app.h". Nous aurions du include cette librairie dans le fichier "GestPWM.c".

  8. Elles ont le même type (APP_DATA), mais ils n'ont aucun lien.

  9. Ce test sert à garantir que nous prenons 10 valeurs dans notre moyenne glissante.

  10. On aurait du mettre des define.

  11. Car l'ADC va de de 0 à 1023.

  12. Dans notre cas, cela n'a aucun impact. Cependant, selon la valeur du define, il serait possible que cela crée un overflow sur la valeur d'une variable en 16 bits. Cela crée également une perte de précision.

  13. D'abord la multiplication, puis la division et l'addition pour la fin. Ce pour quoi nous avons mis les parenthèse, afin de garantir ce résultat.

  14. 1) Changement de plage de 0 à 1023 vers 0 à 198.0 (Vitesse moteur). Le "+0.5" fait l'arrondie de la valeur. 2) Permet que la valeur de la vitesse soit de -99 à +99. 3) Changement de plage de 0 à 1023 vers 0 à 180.0 (angle servomoteur). Le "+0.5" fait l'arrondie de la valeur. 4) Permet que la valeur de l'angle soit de -90 à +90.

  15. Oui on pourrait mettre le résultat du calcul directement dans la structure. On a donc supprimé les variables que nous avons modifiées auparavant (valeur_variant_ADC1 et valeur_variant_ADC2).

  16. Ces fonctions sont liée à la librairie "Mc32DriverLcd.h". Nous aurions dû inclure la librairie dans le fichier GestPWM.c.

  17. Pour aligner les valeurs de l'angle et de la vitesse absolue. Cette valeur a été choisie purement arbitrairement. Nous aurions pu mettre la valeur de 15 ou 16.

  18. Le nom du paramètre pourrait être afficher qu'une seul fois. Les valeurs doivent être afficher a chaque fois.

  19. Permet de garder la valeur de la variable au prochain appel de la fonction.

  20. Ces fonctions sont liées à la librairie suivante : plib_ports.h. Il faut mettre cette include dans le GestPWM.c.

  21. Ces fonctions sont liées à la librairie suivante : plib_oc.h. Il faut mettre cette include dans le GestPWM.c.

  22. Il faut le mettre à 1 pour que le moteur ne passe pas en standby.

  23. Par des define. Voir corrections dans le fichier.

  24. PulseWidthOC2 va de 0 à 1999. PulseWidthOC3 va de 2999 à 11999.

  25. Ces fonctions sont liée à la librairie "bsp.h". Nous aurions dû inclure la librairie dans le fichier GestPWM.c.

  26. Par des define. Voir corrections dans le fichier.

  27. Pour l'utiliser dans l'interruption comme paramètre d'entrée

  28. Dans le cahier des charges, il n'est pas stipulé que nous ne pouvons pas changer le nom de cette structure et son nom n'y figure pas dans le cahier des charges. Cependant, il est vrai que nous n'aurions pas du changer le nom de la structure. En espérant que nous n'avons pas pris un "C" pour ça ;).

  29. A rien, donc elles doivent être déplacé dans le fichier GestPWM.C.

  30. Merci pour ces issues, j'ai bien retenu qu'il faut faire attention au hardcodage et au include. (Ps: nous saqué pas au TP2 de MINF. Cordialement, le codeur à l'arrache et le codeur nul.)

PBYetml commented 5 months ago

pour le 30ème point, j'essaierai mais je promets rien !!! de la part de l'évaluateur fou et tout petit peu psychorigide ;)

PBYetml commented 5 months ago

pour information les point 11 au 15 non pas été totalement corriger dans votre listing : on y voit toujours des constantes => merci d'aller jusqu'au bout de vos corrections / améliorations !!!