Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // modem sketch
- // User configuration [START]
- int baudrate = 9600; // 9600 -> DEFAULT
- // User configuration [END]
- void setup() {
- Serial.begin(baudrate);
- Serial.println(freeRam());
- }
- void loop() {
- if (Serial.available() > 0) {
- Serial.println(string_readln());
- Serial.println(freeRam());
- }
- }
- String string_readln() {
- delay(500); // Just a temporary change, as one needs to wait for the buffer to fill
- char *string_readln_line;
- unsigned long long i = 0;
- String string_readln_output;
- string_readln_line = (char *) (malloc(Serial.available()*sizeof(char)));
- while (Serial.available() > 0) {
- *&string_readln_line[i] = Serial.read();
- i++;
- }
- string_readln_output = String(string_readln_line);
- free(string_readln_line);
- return string_readln_output;
- }
- int freeRam () {
- extern int __heap_start, *__brkval;
- int v;
- return (int) &v - (__brkval == 0 ? (int) &__heap_start : (int) __brkval);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement