Как отправить данные с ПК на ардуино?

Как я могу прочитать данные в Arduino IDE из текстового файла, если у меня есть текстовый файл, в котором есть угол наклона руки в разные промежутки времени? Если я хочу прочитать текстовый файл с ПК, может ли кто-нибудь показать демонстрационный код? Я прилагаю код, в котором я пишу позицию для servo1, значения которой я хочу передать через текстовый файл.

#include <Servo.h>

Servo myservo1 ;   
int pos1 = 0;     


void setup() {
  myservo1.attach(4);   //внутренний
}

void loop() {
   myservo1.write(pos1); // pos1 дам разные ракурсы через текстовый файл
}

Если я не использую модуль SD-карты, как я могу сделать это только с ПК? Кто-нибудь, пожалуйста, помогите.

, 👍-1

Обсуждение

Можете ли вы показать нам код, который вы написали до сих пор? Используете ли вы модуль чтения SD-карт? Возможно, обработка может быть использована для связи между ПК и Arduino? Пожалуйста, обновите свой вопрос с дополнительной информацией., @VE7JRO

Я соответствующим образом отредактировал код, теперь кто-нибудь ответьте, пожалуйста., @Shivam Goswami

Используйте python, чтобы прочитать текстовый файл и отправить его на Arduino через последовательный порт. Используйте библиотеку serial для python и Serial на стороне arduino., @Sim Son

ваш код не имеет ничего общего с проблемой ... вы должны понимать, что передача данных между ПК и Arduino полностью отделена от управления сервоприводом ... то, что вы делаете с полученными данными, не имеет значения ... в этом точка вам нужно решить проблему передачи данных, @jsotola


1 ответ


0

Я предполагаю, что вы хотите сохранить несколько значений в текстовом файле, а затем пусть Arduino IDE (не сама Arduino) прочитает файл и вставит данные в скетч. Если это действительно ваш вопрос о, быстрое и грязное решение было бы следующим:

  1. Отформатируйте текстовый файл как список чисел, разделенных запятыми, либо в одну или несколько строк. Например:
1, 12, 23, 34, 45, 56, 67,
78, 89, 100
  1. Включите этот файл в свой скетч в качестве тела инициализатора массива:
#include <Servo.h>

const int positions[] = {
#include "full_path_of_the_file_holding_the_positions"
};
#define positions_length (sizeof positions / sizeof positions[0])

Servo myservo1;   

void setup() {
    myservo1.attach(4);
}

void loop() {
    for (int i = 0; i < positions_length; i++) {
        myservo1.write(positions[i]);
        delay(200);
    }
}
,

Это немного помогло мне, спасибо. Теперь у меня есть много переменных и данных, которые я буду отправлять в IDE arduino. Существуют ли какие-либо ограничения по размеру, которые принимает Arduino. У меня очень большой набор данных для управления SERVO., @Shivam Goswami

@ShivamGoswami: Каждая плата имеет фиксированный объем доступной флэш-памяти и оперативной памяти. Если у вас много постоянных данных, PROGMEM должен помочь: выполните поиск в Интернете по этому термину., @Edgar Bonet