From 3d740742ca9e8616a6e4ea0170879caaa6205d34 Mon Sep 17 00:00:00 2001 From: Julia Wichmann <wicj@hrz.tu-chemnitz.de> Date: Tue, 7 Jan 2020 21:33:25 +0100 Subject: [PATCH] Update modules --- .DS_Store | Bin 6148 -> 6148 bytes project/.DS_Store | Bin 6148 -> 6148 bytes project/lay1+2_remastered.c | 17 ++++++++--------- project/lay3.c | 18 +++++++----------- 4 files changed, 15 insertions(+), 20 deletions(-) diff --git a/.DS_Store b/.DS_Store index cd74acdac4cff6bcaa2fe218f6c0249217b8b9ee..bfe7f211fb0823a0090169b12c3cf7860767cc63 100644 GIT binary patch delta 344 zcmZoMXfc=|#>B)qu~2NHo}wrl0|Nsi1A_nqLn=cuLrGG3aY0hf=7o&Q8S6n(><k4A zMGW~2S;*4)NkEyCNd-BX#U%y?*BP0ZSy<WFIXJkuxOll@gER8WgG&-iN{gKmi=sii zfW(rFBq%#1KR*Y~PD~2ROf8QW5OL1WD@n}EODzIx&P+)KD#?rq&&*57FL%l>%}Xf; z8x#zY;o#up<ct@PsIE3PHq}uuHZ`c#QK&XIH_%ZqF*d8M<>U}oHMI3i$gQlZuBok? z33M$GFao^^2K-POM$MYc!#G(Q&8KC-MR_^-dFen!jKJVXW7*8k!OsB<Hz4Ob^JIPz QOAerUU?VpNh-_g709x)?$N&HU delta 87 zcmZoMXfc=|#>B`mu~2NHo}wrV0|Nsi1A_nqLn=cuLrG4$VQ_N(#KPr_ER#PoP2RkQ oIhtkj24-HS&Fmcf96)WG7czfmp3E;|$pO>|(#f<rKx7Lu0GjO-od5s; diff --git a/project/.DS_Store b/project/.DS_Store index 5008ddfcf53c02e82d7eee2e57c38e5672ef89f6..e05bb8c25f34beb683ffb1a4eaa0962081dd9772 100644 GIT binary patch literal 6148 zcmeHK!AiqG5Pe&VRJ`=)F<)R1e;}565Tuu)SG7&hiki|UsJDE&Z+51^ntBzL8JK;$ zv-5U4FCp6n5Jq)=0t^8R=z_fiHakq_#XHusNS_$u8pn7*fwyHfyX<6p;5RBD&u)Mx z+~FOk`1Jhhb+zK$HKv?dqvCUYM#^!??3(?8(G+7cD|(76jti_}^c4%t@yO^z-UnvP z$tuaq858aTFER5B7mUc-v-m4!9NlxaB5qc>vH61Roc+AbTynpX`xIPX7`tnkSS_78 znZF;`(%MUTZ~tiBU+dV^ycK7?ZmxhU;0lNWJhR0Hhl<|10<M57&?+F`hlDPe88(XX z)4?WQ0f_Q9G8+4Gmk>^3m>D*ToS_A!5|tY4iV>8~cw%{(VWX&Y1iO3$+d0?`CB)si zeiG9WGDUA)0asvKfju1#<@`VY{{FvB@{udx3j8YtLVr9Rk64nOt)1fJtWD^*bTP?m m6k7^A@hE1l9K}cUXpAS)A!de+A|o{aBM@cq#ufNc1wH`QJ8L)q delta 70 zcmZoMXfc=|#>AjHu~2NHo+1YW5HK<@2y7PQ5M$Xaz%q+@Gdl-A2T;LgMwai)llesy VIf3#F2_S`&O?Z?y$B3+81_0!d4M+e0 diff --git a/project/lay1+2_remastered.c b/project/lay1+2_remastered.c index 979e2dc..7499342 100644 --- a/project/lay1+2_remastered.c +++ b/project/lay1+2_remastered.c @@ -25,8 +25,6 @@ byte send[MAXFRAMESIZE] = {0}; // Testdata: 0xB3, 0x10 = 10110011, 00010000 byte frame[MAXFRAMESIZE] = {0}; // 0 - Preambel, 1 to 4 - CRC checksum, 5 - size, 6 to n (n = max. 256) - Payload - -byte state = 0; byte flag = 1; byte bufferIndex = 0; // Zählvariable für ISR byte sendIndex = 0; @@ -97,7 +95,7 @@ int main(void){ byte* receivedFrame = malloc(MAXFRAMESIZE*sizeof(byte)); byte sizeToReceive = MAXFRAMESIZE-1; byte action; // 0 - broadcast successful, to layer 4; 1 - receive, to layer 4; 2 - relay - + byte state = 0; /* * puts("Getting ready to send."); * byte sizeToSend = 4; @@ -114,13 +112,14 @@ int main(void){ */ while(1){ - switch(state){ +/* switch(state){ default: ATOMIC_BLOCK(ATOMIC_FORCEON){ if(!readyToSend) sendZeroes(); } break; case 1: // receiving data + */ ATOMIC_BLOCK(ATOMIC_FORCEON){ // Data Package: 0 Preamble, 1 - 4 CRC, 5 Length, 6 Destination, 7 Source, 8 - n Data if(readyToReceive){ @@ -168,15 +167,15 @@ int main(void){ } } - case 2: //send / relay + // case 2: //send / relay l3_send(&state); - break; + // break; - case 3: //USART Interrupt happened, add msg to queue + /*case 3: //USART Interrupt happened, add msg to queue l3_send(&state); - break; + */ - } + // vom switch} } return 0; } diff --git a/project/lay3.c b/project/lay3.c index 0852008..871a415 100644 --- a/project/lay3.c +++ b/project/lay3.c @@ -71,23 +71,19 @@ void l3_exec(byte action, byte* frame){ puts("Handing package to layer 4.\n"); break; case 2: //relay - //fillSend(frame+6, frame[5]); + - //Achtung: z.B. bei 8-elementiger Queue: Fall tail ist 7, head ist 0 --> 0-1 != 7 trotzdem queue full - if(tail == head-1 || (head == 0 && tail == MAXQUEUESIZE)) puts("Message Queue full."); - else{ + //Achtung: z.B. bei 8-elementiger Queue: Fall tail ist 7, head ist 0 --> 0-1 != 7 trotzdem queue full + // Auskommentiert, weil erst in Lay4 Acks hinzukommen + + //if(tail == head-1 || (head == 0 && tail == MAXQUEUESIZE)) puts("Message Queue full."); + //else{ if(head == 0) head = MAXQUEUESIZE-1; else head--; //msgQueue = realloc(msgQueue, tail+1); //würde ich nicht machen. lieber einfach eine feste Größe für die Queue. msgQueue[head] = realloc(msgQueue[head], sizeof(frame)); copyFrame(frame, msgQueue[head]); - //tail++; - } - - - //evtl. state = 2 setzen für main -> weiß, dass jetzt priorisiert weitergeleitet werden muss - - // hier noch head merken und/oder Index zum senden anpassen. -> Priority + //} break; default: break; -- GitLab