app4
Dependencies: mbed-rtos mbed CRC16
Fork of S5info_APP2 by
Diff: main.cpp
- Revision:
- 26:6ffbf3161f6f
- Parent:
- 25:d0c348c3c85d
--- a/main.cpp Tue Mar 07 17:25:16 2017 +0000 +++ b/main.cpp Tue Mar 07 19:56:37 2017 +0000 @@ -25,6 +25,10 @@ signed char bit_sent; //position du bit de l'octet en cours d'envoi (du MSB au LSB) 7..0 bool bTimer1 = false; +bool bitSent[320]; +int length = 0; +bool IsFinish = false; + //encodage manchester bool codeManchester(bool bit, bool clock) { @@ -34,7 +38,9 @@ //Envoie de données bit par bit void send_data() { - out = codeManchester(((trame_sent[byte_sent_pos] >> bit_sent) & 0x01), bTimer1); + bitSent[length] = codeManchester(((trame_sent[byte_sent_pos] >> bit_sent) & 0x01), bTimer1); + out = bitSent[length]; + length++; if(bTimer1) { bit_sent--; @@ -48,6 +54,7 @@ { byte_sent_pos = 0; bTimer1 = false; + IsFinish = true; LPC_TIM1->TCR = 0; // disable Timer } } @@ -61,15 +68,13 @@ while (true) { ThreadLecture.signal_wait(1); + pc.printf("Message Recu :\n\r"); for (int i = lastpos; i < messageLength; i++) { pc.printf("%x",messageBuffer[i]); - if ((i % 11) == 0 && i > 0) - { - pc.printf("\n"); - } } + pc.printf("\n\rFin Message\n\r"); lastpos = messageLength; } } @@ -173,10 +178,15 @@ trame_sent[3] = taille; //Longueur du message (Max 33 caractères) //message - for (char i=0;i<taille;i++) + printf("\n\rMessage a envoyer :"); + printf(message); + for (int i=0;i<taille;i++) { trame_sent[taille + 4] = message[i]; + } + printf(" : Fin Message\n\r"); + printf("Result CRC : %x", resultCRC); //CRC16 trame_sent[taille + 4] = (resultCRC >> 8) & 0xFF; @@ -184,6 +194,7 @@ trame_sent[taille + 6] = END; //End trame_length = taille + 7; //Longueur de la trame + } //obtention du texte @@ -191,6 +202,10 @@ { while (true) { + + IsFinish = false; + length = 0; + char text[4] = {'a','l','l','o'}; unsigned char count = 4; @@ -242,5 +257,19 @@ while(true) { + if (IsFinish == true) + { + pc.printf("\n\rBits Envoyes : "); + for (int i=0;i<length;i++) + { + pc.printf("%d:",bitSent[i]); + if(i%16 == 15) + { + pc.printf("\n\r"); + } + } + pc.printf("Fin Bits Envoyes\n\r"); + IsFinish = false; + } } }; \ No newline at end of file