fork download
  1. #include "stdio.h"
  2. #include "string.h"
  3. #include "stdlib.h"
  4. #include "stdint.h"
  5. #include <stdbool.h>
  6.  
  7. #define TCP_bufferlen 500 //length of tx/rx TCP buffer - i.e. ca. 200 ascii codes + AT string header
  8. typedef struct{
  9. bool full;
  10. bool overwritten;
  11. char data[TCP_bufferlen];
  12. } TCP_buffer;
  13.  
  14. //receive TCP buffer structure
  15.  
  16. int main (void){
  17. char token3[TCP_bufferlen] = {"41424344"};
  18. char buff[TCP_bufferlen]= {"xyzw"};
  19. char var;
  20. char c, c1;
  21. // TCP_buffer TCP_rx_buffer = {.full = false, .overwritten = false, .data ={"abcd"}};
  22.  
  23. memset(&buff[0], '\0', TCP_bufferlen); //clean receive buffer
  24.  
  25. for (var = 0; var < strlen(token3); var=var+2) {
  26. c=token3[var];
  27. if (c>64) {
  28. c= c-64;
  29. }
  30. else{
  31. c= c-48;
  32. }
  33. c1=token3[var+1];
  34. if (c1>64) {
  35. c1= c1-64;
  36. }
  37. else{
  38. c1= c1-48;
  39. }
  40. c=c*16+c1;
  41. // printf("output1 %d %d %c %d\r\n",var, token3[var], c, c1);
  42. sprintf(buff+strlen(buff), "%c", c);
  43. // printf("output %s \r\n",buff);
  44. }
  45. // for (int var = 0; var < strlen(token3); var=var+1) {
  46. // TCP_rx_buffer.data[var] = token3[var];
  47. // }
  48. // char var=1;
  49. // sscanf(TCP_rx_buffer.data, "%s", token3[var]);
  50. printf("output %s \r\n",token3 );
  51. printf("output %s \r\n",buff);
  52.  
  53.  
  54. }
  55.  
  56.  
Success #stdin #stdout 0s 2168KB
stdin
Standard input is empty
stdout
output 41424344 
output ABCD