zdenekpetrzd

Zpracování dat funkční

Mar 13th, 2019
156
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.07 KB | None | 0 0
  1. int testovaci;
  2.  
  3. void GetAll(int *seznam) {
  4. for(int i=0; i<velikost; i++) {
  5. String vypis = "GetCV(" + String(seznam[i]) + ",0)::";
  6. client.print(vypis);
  7. }
  8. }
  9.  
  10.  
  11. void Prijem() {
  12. while(client.available() > 0) {
  13. char str[200];
  14. char arrayA[10] = {};
  15. char arrayB[190];
  16. char delic = '=';
  17. int pozice = 0;
  18. char cislice[] = {'0','1','2','3','4','5','6','7','8','9'};
  19. String stringi = client.readStringUntil('\r\n');
  20. //Serial.println(stringi);
  21. //Serial.print(" je ");
  22. if(stringi.length() < 190) {
  23. stringi.toCharArray(str, 200);
  24. int pocetZnaku = strlen(str);
  25. for(int i=0; i<sizeof(arrayB); i++) {
  26. arrayB[i] = (char)0;
  27. }
  28. for(int i=0; i < pocetZnaku; i++) {
  29. if(str[i] == delic) {
  30. pozice = i;
  31. }
  32. }
  33. for(int i=0; i < pozice; i++) {
  34. arrayA[i] = str[i];
  35. }
  36. for(int i=pozice+1; i < 200; i++) {
  37. arrayB[i-pozice-1] = str[i];
  38. }
  39. //Serial.println(String(arrayA) + " = " + String(arrayB));
  40.  
  41. int id = 0;
  42. if(strlen(arrayA) == 1) {
  43. id = 0;
  44. if(arrayA[0] == cislice[0]) id += 0;
  45. else if(arrayA[0] == cislice[1]) id += 1;
  46. else if(arrayA[0] == cislice[2]) id += 2;
  47. else if(arrayA[0] == cislice[3]) id += 3;
  48. else if(arrayA[0] == cislice[4]) id += 4;
  49. else if(arrayA[0] == cislice[5]) id += 5;
  50. else if(arrayA[0] == cislice[6]) id += 6;
  51. else if(arrayA[0] == cislice[7]) id += 7;
  52. else if(arrayA[0] == cislice[8]) id += 8;
  53. else if(arrayA[0] == cislice[9]) id += 9;
  54. }
  55. if(strlen(arrayA) == 2) {
  56. id = 0;
  57. if(arrayA[0] == cislice[0]) id += 0;
  58. else if(arrayA[0] == cislice[1]) id += 10;
  59. else if(arrayA[0] == cislice[2]) id += 20;
  60. else if(arrayA[0] == cislice[3]) id += 30;
  61. else if(arrayA[0] == cislice[4]) id += 40;
  62. else if(arrayA[0] == cislice[5]) id += 50;
  63. else if(arrayA[0] == cislice[6]) id += 60;
  64. else if(arrayA[0] == cislice[7]) id += 70;
  65. else if(arrayA[0] == cislice[8]) id += 80;
  66. else if(arrayA[0] == cislice[9]) id += 90;
  67.  
  68. if(arrayA[1] == cislice[0]) id += 0;
  69. else if(arrayA[1] == cislice[1]) id += 1;
  70. else if(arrayA[1] == cislice[2]) id += 2;
  71. else if(arrayA[1] == cislice[3]) id += 3;
  72. else if(arrayA[1] == cislice[4]) id += 4;
  73. else if(arrayA[1] == cislice[5]) id += 5;
  74. else if(arrayA[1] == cislice[6]) id += 6;
  75. else if(arrayA[1] == cislice[7]) id += 7;
  76. else if(arrayA[1] == cislice[8]) id += 8;
  77. else if(arrayA[1] == cislice[9]) id += 9;
  78. }
  79. if(strlen(arrayA) == 3) {
  80. id = 0;
  81. if(arrayA[2] == cislice[0]) id += 0;
  82. else if(arrayA[2] == cislice[1]) id += 1;
  83. else if(arrayA[2] == cislice[2]) id += 2;
  84. else if(arrayA[2] == cislice[3]) id += 3;
  85. else if(arrayA[2] == cislice[4]) id += 4;
  86. else if(arrayA[2] == cislice[5]) id += 5;
  87. else if(arrayA[2] == cislice[6]) id += 6;
  88. else if(arrayA[2] == cislice[7]) id += 7;
  89. else if(arrayA[2] == cislice[8]) id += 8;
  90. else if(arrayA[2] == cislice[9]) id += 9;
  91.  
  92. if(arrayA[1] == cislice[0]) id += 0;
  93. else if(arrayA[1] == cislice[1]) id += 10;
  94. else if(arrayA[1] == cislice[2]) id += 20;
  95. else if(arrayA[1] == cislice[3]) id += 30;
  96. else if(arrayA[1] == cislice[4]) id += 40;
  97. else if(arrayA[1] == cislice[5]) id += 50;
  98. else if(arrayA[1] == cislice[6]) id += 60;
  99. else if(arrayA[1] == cislice[7]) id += 70;
  100. else if(arrayA[1] == cislice[8]) id += 80;
  101. else if(arrayA[1] == cislice[9]) id += 90;
  102.  
  103. if(arrayA[0] == cislice[0]) id += 0;
  104. else if(arrayA[0] == cislice[1]) id += 100;
  105. else if(arrayA[0] == cislice[2]) id += 200;
  106. else if(arrayA[0] == cislice[3]) id += 300;
  107. else if(arrayA[0] == cislice[4]) id += 400;
  108. else if(arrayA[0] == cislice[5]) id += 500;
  109. else if(arrayA[0] == cislice[6]) id += 600;
  110. else if(arrayA[0] == cislice[7]) id += 700;
  111. else if(arrayA[0] == cislice[8]) id += 800;
  112. else if(arrayA[0] == cislice[9]) id += 900;
  113. }
  114. if(id <= 410) {
  115. hodnoty[id] = String(arrayB).toInt(); // !!!!!!!!
  116. }
  117. if(id == 501) {
  118. int j=0;
  119. for(int i=0; i<80; i++) {
  120. if(isDigit(arrayB[i]) == true) {
  121. if(arrayB[i] == '1') {
  122. skupina1[j] = 1;
  123. }
  124. else {
  125. skupina1[j] = 0;
  126. }
  127. j++;
  128. }
  129. }
  130. }
  131.  
  132. if(id == 502) {
  133. int j=0;
  134. for(int i=0; i<80; i++) {
  135. if(isDigit(arrayB[i]) == true) {
  136. if(arrayB[i] == '1') {
  137. skupina2[j] = 1;
  138. }
  139. else {
  140. skupina2[j] = 0;
  141. }
  142. j++;
  143. }
  144. }
  145. }
  146.  
  147. if(id == 503) {
  148. int j=0;
  149. for(int i=0; i<80; i++) {
  150. if(isDigit(arrayB[i]) == true) {
  151. if(arrayB[i] == '1') {
  152. skupina3[j] = 1;
  153. }
  154. else {
  155. skupina3[j] = 0;
  156. }
  157. j++;
  158. }
  159. }
  160. }
  161.  
  162. if(id == 504) {
  163. int j=0;
  164. for(int i=0; i<80; i++) {
  165. if(isDigit(arrayB[i]) == true) {
  166. if(arrayB[i] == '1') {
  167. skupina4[j] = 1;
  168. }
  169. else {
  170. skupina4[j] = 0;
  171. }
  172. j++;
  173. }
  174. }
  175. }
  176.  
  177. else if(id == 600) {
  178. String cisloLoko = "";
  179. for(int i=0; i<strlen(arrayB); i++) {
  180. if(isDigit(arrayB[i]) == true) {
  181. cisloLoko += arrayB[i];
  182. }
  183. }
  184. locoName = cisloLoko.toInt();
  185. }
  186.  
  187. //Serial.println(locoName);
  188. }
  189. }
  190. }
  191.  
  192.  
  193. unsigned int pw [] = { 1, 10, 100, 1000, 10000 } ;
  194. int ExtractDigit(int V, int P)
  195. {
  196. return V / pw[P] % 10 ;
  197. }
Advertisement
Add Comment
Please, Sign In to add comment