-
Notifications
You must be signed in to change notification settings - Fork 0
Description
- => bug / question => variable => locale VS globale => visibilité => comme fonctionne la visibilité d'une variable globale -> fonction -> fichier -> plusieurs fichiers ?
https://github.com/etideoliveira/MINF_SLO2_TP/blob/8dd67f520f1bf408f73f60500b0fd43514128612/TP1/TP1/firmware/src/gestPWM.c#L25C1-L26C86
=> FCT : GPWM_Initialize <=
- => bug / amélioration / question => paramètre => entrée =>
pData=> est-ce que vous utilisez cette variable dans votre fonction ? utilité ?
void GPWM_Initialize(S_pwmSettings *pData) - => bug / amélioration / question => variable => globale VS local =>
PWMData-pData=> quelle différence ?
https://github.com/etideoliveira/MINF_SLO2_TP/blob/8dd67f520f1bf408f73f60500b0fd43514128612/TP1/TP1/firmware/src/gestPWM.c#L29C1-L35C50 - => bug => appel de fct =>
BSP_EnableHbrige=> à quelle "librairie" est associé cet appel de fct ?
BSP_EnableHbrige();
=> FCT : GPWM_GetSettings <=
- => bug / spécification => voir le CDC p2 => fonction => paramètre => passage par référence - pointeur => à quoi vous sert ce paramètre ? pourquoi ne pas l'utiliser ?
void GPWM_Initialize(S_pwmSettings *pData) - => bug => gestion de librairie => type => quelle librairie est lié aux types suivantes :
uint16_t,uint8_t?
https://github.com/etideoliveira/MINF_SLO2_TP/blob/8dd67f520f1bf408f73f60500b0fd43514128612/TP1/TP1/firmware/src/gestPWM.c#L53C1-L62C73 - => bug / spécification => norme C => codage => déclaration de variables => convention d'écriture => dans un bloc où doivent se déclarer les déclarations de variables ?
uint16_t scaledValue0 = (averageValue0 * ORDONEEPRG) / MAXVALAD;
uint16_t averageValue1 = sum1 / DIX; // Calcul de la moyenne des valeurs du canal 1 - => bug / question => algorithme => somme => gestion de la somme => à quoi sert l'instruction de soustraction ? calcul de la somme finale, quelle est la valeur de la somme de départ
https://github.com/etideoliveira/MINF_SLO2_TP/blob/8dd67f520f1bf408f73f60500b0fd43514128612/TP1/TP1/firmware/src/gestPWM.c#L67C1-L69C83
https://github.com/etideoliveira/MINF_SLO2_TP/blob/8dd67f520f1bf408f73f60500b0fd43514128612/TP1/TP1/firmware/src/gestPWM.c#L91C1-L93C83
=> bug => librairie => appel de fonction =>abs=> quelle librairie est associé à cet appel de fonction ?
PWMData.absSpeed = abs(PWMData.SpeedSetting); // Vitesse négative
=> FCT : GPWM_DispSettings <=
- => question / amélioration => gestion LCD => appel de fonction =>
printf_lcd()=> une fois cet appel de fct exécuté, comment se comporte l'affichage ? est-ce que l'information est gradée en mémoire si vous écrivez sur une autre ligne ? - => question / amélioration => gestion LCD => appel de fonction =>
printf_lcd()=> est-ce que certains appel de fct peuvent-il être appelé qu'une seule fois ?
https://github.com/etideoliveira/MINF_SLO2_TP/blob/8dd67f520f1bf408f73f60500b0fd43514128612/TP1/TP1/firmware/src/gestPWM.c#L108C1-L109C37 - => question => gestion LCD => appel de fct =>
printf_lcd()=> opérateur de conversion =>%xd=> que représente le x ? que se passe-t-il si la valeur à affiché est plus grande que x et même question si plus petite ? - => question / amélioration => gestion LCD => appel de fct =>
printf_lcd()=> opérateur de conversion =>%xd=> comment pourriez-vous gérer les signes : + et - ?
MINF_SLO2_TP/TP1/TP1/firmware/src/gestPWM.c
Line 111 in 8dd67f5
printf_lcd("SpeedSetting%4d", PWMData.SpeedSetting);
MINF_SLO2_TP/TP1/TP1/firmware/src/gestPWM.c
Line 113 in 8dd67f5
printf_lcd("absSpeed %2d", PWMData.absSpeed);
MINF_SLO2_TP/TP1/TP1/firmware/src/gestPWM.c
Line 115 in 8dd67f5
printf_lcd("Angle%4d", PWMData.AngleSetting);
=> FCT : GPWM_ExecPWM <=
- => amélioration => bonne pratique => appel de fonction =>
PLIB_OC_PulseWidth16BitSet=> paramètres => calcul =>est-ce bonne méthode ? contrôle de valeur ? comment faites-vous ?
MINF_SLO2_TP/TP1/TP1/firmware/src/gestPWM.c
Line 142 in 8dd67f5
PLIB_OC_PulseWidth16BitSet(OC_ID_2, ((PWMData.absSpeed * MAXVALAD) / OFFSETORIG)*DEUX); // Calculer le rapport cyclique &Appliquer la largeur d'impulsion à OC2
MINF_SLO2_TP/TP1/TP1/firmware/src/gestPWM.c
Line 145 in 8dd67f5
PLIB_OC_PulseWidth16BitSet(OC_ID_3, ((PWMData.absAngle + MAXANGLE) * MAXVALAD / ANGLE_ABS)*DEUX); //Convertir l'angle signé en largeur d'impulsion & Appliquer la largeur d'impulsion à OC3 - => bug / question / documentation => algorithme => calcul => plage de variation possible pour l'OC2
- => bug => constante =>
MAXVALAD=> est-ce la bonne valeur à utiliser ? plage de valeur désirée ?
MINF_SLO2_TP/TP1/TP1/firmware/src/gestPWM.c
Line 142 in 8dd67f5
PLIB_OC_PulseWidth16BitSet(OC_ID_2, ((PWMData.absSpeed * MAXVALAD) / OFFSETORIG)*DEUX); // Calculer le rapport cyclique &Appliquer la largeur d'impulsion à OC2 - => bug / question / documentation => algorithme => calcul => plage de variation possible pour l'OC2
- => bug => constante =>
MAXVALAD=> est-ce la bonne valeur à utiliser ? plage de valeur désirée ?
MINF_SLO2_TP/TP1/TP1/firmware/src/gestPWM.c
Line 145 in 8dd67f5
PLIB_OC_PulseWidth16BitSet(OC_ID_3, ((PWMData.absAngle + MAXANGLE) * MAXVALAD / ANGLE_ABS)*DEUX); //Convertir l'angle signé en largeur d'impulsion & Appliquer la largeur d'impulsion à OC3
=> FCT : GPWM_ExecPWMSoft <=
- => bug / amélioration / question => paramètre => entrée =>
pData=> est-ce que vous utilisez cette variable dans votre fonction ? utilité ?
MINF_SLO2_TP/TP1/TP1/firmware/src/gestPWM.c
Line 150 in 8dd67f5
void GPWM_ExecPWMSoft(S_pwmSettings *pData) - => bug => gestion de librairie => type => quelle librairie est lié aux types suivantes :
uint8_t?
MINF_SLO2_TP/TP1/TP1/firmware/src/gestPWM.c
Line 152 in 8dd67f5
static uint8_t pwmCounter = ZERO; // Compteur pour suivre le cycle PWM - [ ]