Open PBYetml opened 6 months ago
L'évaluation complète sur le fichier : Mc32gest_RS232.c est fini => vous pouvez si vous les désirer faire réaliser les amélioration ou correction sur ce fichier
FCT : GetMessage
1) C'est la librairie : stdint.h, nous l'avons dans le "gestPWM.h", mais nous avons oublié de l'inclure dans notre fichier.
2) la variable i correspond à notre index pour la boucle for, nous utilisons i par convention, mais on aurait pu la nommer autrement par exemple " dataIndex"
3) On pourrait utiliser notre define : MESS_SIZE à la place du 5
4) On aurait pu faire une boucle for, qui rendrait le code plus clair comme ceci :
for(dataIndex = 0; dataIndex < TAILLE_TABLEAU; dataIndex ++)
{
valCrc = updateCRC16(valCrc, tabDatasRecus[dataIndex]);
}
On a mis comme TAILLE_TABLEAU la valeur de 3 du coup.
5) Les différentes cases du tableau correspondent à la trame qu'on souhaite recevoir
Comme autre variable, on aurait pu faire la structure StruMess existante déjà (comme nous avons fait pour la fonction SendMessage:
typedef struct {
uint8_t Start;
int8_t Speed;
int8_t Angle;
uint8_t MsbCrc;
uint8_t LsbCrc;
} StruMess;
StruMess RxMess;
crc16.shl.msb = RxMess.MsbCrc;
crc16.shl.lsb = RxMess.LsbCrc;
FCT : SendMessage
1) C'est la librairie : stdint.h, nous l'avons dans le "gestPWM.h", mais nous avons oublié de l'inclure dans notre fichier.
FCT : ISR => UART
1) C'est la librairie : stdint.h, nous l'avons dans le "gestPWM.h", mais nous avons oublié de l'inclure dans notre fichier.
2) On fait référence à une enum se trouvant dans le fichier GenericTypeDefs.h ligne 65 : typedef enum _BOOL { FALSE = 0, TRUE } BOOL; On a pris la fonction directement du cour
Si on avait pas utilisé ceci on aurait dû implémenter la librairie : stdbool.h
3) le c correspond à caractère, cependant comme nous avons repris la fonction dans le cours, les variables étaient nommées comme ceci et nous avons oublier de modifier les noms après
4) Nous lisons octet par octet au fur et au mesure qu'on recoit les datas, ensuite apres on regarde si la fifo est plus petite ou egal à 6 pour ecrire, dans le cas contraire on arret l'enovoi, cela veut que nous ne regardons pas si la fifo est plaine ou pas mais en faisant ce test on s'assure qu'elle va jamais se remplir. ligne : 289 à 294.
comme ceci :
freeSize = GetWriteSpace(&descrFifoRX);
if(freeSize <= 6)
{
RS232_RTS = 1;
}
5) En tenant en compte que le message complet est de 5 octets, nous testons si l'espace disponible dans le buffer de reception est plus petit que 6, dans ce cas on arrête l'envoi. On realise ce test pour nous assurer que la fifo ne se rempli pas completement.
6) Cette variable sert à connaître l'état de la pin CTS, au lieu de faire " i_cts = RS232_CTS ", nous aurions pu directement utiliser la variable RS232_CTS Elle correspond à la pin du microcontrôleur et on peut voir qu'il est en "PORTD".
FCT : GetMessage
int8_t
-uint8_t
-uint16_t
) ? https://github.com/Melissaperret/TP2_MINF/blob/fa99e17c153a6489e48d0ae328a2941fd4b3edaa/TP2_PWM_RS232/TP2_PWM_RS232/firmware/src/Mc32gest_RS232.c#L85C1-L88C35 https://github.com/Melissaperret/TP2_MINF/blob/fa99e17c153a6489e48d0ae328a2941fd4b3edaa/TP2_PWM_RS232/TP2_PWM_RS232/firmware/src/Mc32gest_RS232.c#L90i
est parlant dans un code ? https://github.com/Melissaperret/TP2_MINF/blob/fa99e17c153a6489e48d0ae328a2941fd4b3edaa/TP2_PWM_RS232/TP2_PWM_RS232/firmware/src/Mc32gest_RS232.c#L86FCT : SendMessage
int8_t
) ? https://github.com/Melissaperret/TP2_MINF/blob/fa99e17c153a6489e48d0ae328a2941fd4b3edaa/TP2_PWM_RS232/TP2_PWM_RS232/firmware/src/Mc32gest_RS232.c#L177FCT : ISR => UART
int8_t
-uint8_t
) ? https://github.com/Melissaperret/TP2_MINF/blob/fa99e17c153a6489e48d0ae328a2941fd4b3edaa/TP2_PWM_RS232/TP2_PWM_RS232/firmware/src/Mc32gest_RS232.c#L223C1-L225C23BOOL
=> d'ou vient ce type => à quelle librairie faites-vous référence ? https://github.com/Melissaperret/TP2_MINF/blob/fa99e17c153a6489e48d0ae328a2941fd4b3edaa/TP2_PWM_RS232/TP2_PWM_RS232/firmware/src/Mc32gest_RS232.c#L226c
est parlant ? https://github.com/Melissaperret/TP2_MINF/blob/fa99e17c153a6489e48d0ae328a2941fd4b3edaa/TP2_PWM_RS232/TP2_PWM_RS232/firmware/src/Mc32gest_RS232.c#L224 https://github.com/Melissaperret/TP2_MINF/blob/fa99e17c153a6489e48d0ae328a2941fd4b3edaa/TP2_PWM_RS232/TP2_PWM_RS232/firmware/src/Mc32gest_RS232.c#L261C1-L262C496
? but du test ? https://github.com/Melissaperret/TP2_MINF/blob/fa99e17c153a6489e48d0ae328a2941fd4b3edaa/TP2_PWM_RS232/TP2_PWM_RS232/firmware/src/Mc32gest_RS232.c#L285i_cts
? ne pouvez-vous pas directement utiliser RS232_CTS ? d’où vient cette constante ? et que représente-t-elle ? https://github.com/Melissaperret/TP2_MINF/blob/fa99e17c153a6489e48d0ae328a2941fd4b3edaa/TP2_PWM_RS232/TP2_PWM_RS232/firmware/src/Mc32gest_RS232.c#L305