APP 4

Dependencies:   mbed CRC16 mbed-rtos

Revision:
26:f2b37f9dfca9
Parent:
20:f0932bfe09ed
--- a/Frame.cpp	Tue Feb 23 14:50:48 2016 +0000
+++ b/Frame.cpp	Tue Feb 23 20:56:47 2016 +0000
@@ -1,8 +1,12 @@
+// Vincent Bélanger et Laurent Mandrile
+// belv1802 - manl2003
+
 #include "Frame.h"
 #include "CRC16.h"
 
 #pragma once
 
+// Fonction de construction de trame
 bitset<FRAMESIZE> buildFrame(bitset<MAX_DATA> data, char size)
 {
     bitset<FRAMESIZE> bitset;
@@ -27,9 +31,9 @@
     bitset.set(14, 1);
     bitset.set(15, 0);
     
-    // 8 unused bits
+    // 8 bits non utilisés
     
-    // Length
+    // Longueur
     bitset.set(24, size & 0b10000000);
     bitset.set(25, size & 0b01000000);
     bitset.set(26, size & 0b00100000);
@@ -39,6 +43,7 @@
     bitset.set(30, size & 0b00000010);
     bitset.set(31, size & 0b00000001);
 
+    // Insertion des données utiles
     char payload[size];
     for (int i = 0; i < size * 8; i++)
     {
@@ -46,14 +51,16 @@
 
         if ((i % 8) == 0)
         {
+            // Conversion en octets pour le calcul du CRC16
             payload[i / 8] = (data[i] << 7) | (data[i + 1] << 6) | (data[i + 2] << 5) | (data[i + 3] << 4) | (data[i + 4] << 3) | (data[i + 5] << 2) | (data[i + 6] << 1) | (data[i + 7] << 0);
         }
     }
 
+    // Calcul du CRC16
     unsigned short crc = CRC16::calculateCRC16(payload, size);
     int counter = 32 + size*8;
 
-    // CRC
+    // Ajout du CRC
     bitset.set(counter,    crc & 0b1000000000000000);
     bitset.set(counter+1,  crc & 0b0100000000000000);
     bitset.set(counter+2,  crc & 0b0010000000000000);
@@ -84,6 +91,7 @@
     return bitset.flip();
 }
 
+// Fonction de conversion d'octets en bits
 bitset<MAX_DATA> convertToBits(char* message, char size)
 {
     bitset<MAX_DATA> bitset;