<commit_before>/*
  Project Name: robo
  Authors:
  * <NAME>
  * <NAME>
  Version: 0.1.0
  Boards Supported:
  * Arduino UNO*
  Dependencies:
  Description:
  Descrição do projeto
*/

#include <string.h>

#define MEM 50
String msg;
int mem[MEM];

void setup(){
    Serial.begin(9600);
    for(int i=0; i<MEM; i++)
        mem[i]=-1;
        /*
        Seta as coisa reservada
        */
}

int parse_msg(String msg);

void loop(){

    if(Serial.available()){
        msg = String(Serial.readString());
        parse_msg(msg);
    }
}


int parse_msg(String msg){
    char c = msg[0];
    int p, value;

    switch(c){
        case 'G':
            p = atoi(&msg[1]) -1;
            Serial.print("R");//Response prefix
            Serial.println(mem[p]);
            break;
        case 'S':
            p = atoi(&msg[1]) -1;
            value = atoi(&msg[msg.indexOf('=')+1]);
            mem[p] = value;
            Serial.print("R");//Response prefix
            Serial.println(mem[p]);
            break;
        case 'M':
            Serial.println(&msg[1]);
            break;
        default:
        break;
    }
    return 0;
}<commit_msg>atualizando para xbee<commit_after>/*
  Project Name: robo
  Authors:
  * <NAME>
  * <NAME>
  Version: 0.2.0
  Boards Supported:
  * Arduino UNO*
  Dependencies:
  * XBee-Arduino Library, 0.6.0
  * XCTU, 6.3.8 (usado externamente para monitorar comunicação entre xbee e arduino)
  Description:
  Descrição do projeto
*/

#include <string.h>
#include <SoftwareSerial.h>

#define MEM 50
#define PORTARX 2
#define PORTATX 3
String msg;
int mem[MEM];

SoftwareSerial XBee(PORTARX, PORTATX);

void setup(){
    XBee.begin(9600);
    Serial.begin(9600);
    for(int i=0; i<MEM; i++)
        mem[i]=-1;
        /*
        Seta as coisa reservada
        */
    delay(500);
    if(XBee.isListening()) {
      Serial.println("XBee está conectado!");
    }
}

int parse_msg(String msg);
int parse_msg_xbee(String msg);

void loop(){

    //Se tiver data sendo mandada pelo serial monitor
    if(Serial.available()){
        msg = String(Serial.readString());
        parse_msg(msg);
    }

    //Se tiver data vindo do XBee
    if(XBee.available()) {
        msg = String(XBee.readString());
        parse_msg_xbee(msg);
    }
}


int parse_msg(String msg){
    char c = msg[0];
    int p, value;

    switch(c){
        case 'G':
            p = atoi(&msg[1]) -1;
            Serial.print("R");//Response prefix
            Serial.println(mem[p]);
            break;
        case 'S':
            p = atoi(&msg[1]) -1;
            value = atoi(&msg[msg.indexOf('=')+1]);
            mem[p] = value;
            Serial.print("R");//Response prefix
            Serial.println(mem[p]);
            break;
        case 'M':
            Serial.println(&msg[1]);
            break;
        default:
        break;
    }
    return 0;
}

int parse_msg_xbee(String msg){
    char c = msg[0];
    int p, value;

    switch(c){
        case 'G':
            p = atoi(&msg[1]) -1;
            XBee.print("R");//Response prefix
            XBee.println(mem[p]);
            break;
        case 'S':
            p = atoi(&msg[1]) -1;
            value = atoi(&msg[msg.indexOf('=')+1]);
            mem[p] = value;
            XBee.print("R");//Response prefix
            XBee.println(mem[p]);
            break;
        case 'M':
            XBee.println(&msg[1]);
            break;
        default:
        break;
    }
    return 0;
}
{'fraction_non_alphanumeric': 0.15069284064665128, 'fraction_numerical': 0.01760969976905312, 'mean_word_length': 1.772, 'pattern_counts': {'":': 0, '<': 12, '<?xml version=': 0, '>': 10, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5129126', 'n_tokens_mistral': 1237, 'n_tokens_neox': 1194, 'n_words': 270}