Форум программистов, компьютерный форум, киберфорум
Arduino
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 19.06.2020
Сообщений: 63
1

как организовать пакет для передачи данных от ардуино в с#

24.07.2020, 15:26. Просмотров 164. Ответов 0

Здравствуйте...Я написал код на ардуино который собирает в массив unsigned char состояние входов (HIGH/LOW) и отправляет элементы массива последовательно в С# каждые 3 секунды.Вроде ардуино правильно передаёт данные.Для праверки С# я сделал так что label показывает первое значение данных(то есть либо 0 либо 1) С# первые данные читает правильно...показывает 49 но потом label показывает то 48 то 49 (глючить). Наверное путает очерёдность данных... Прощу помощи при организации пакета чтобы обеспечить надёжную передачу и считывание данных.
Мой код С#

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
        {
           
            int length = serialPort1.BytesToRead;           
            byte[] buffer = new byte[length];
            serialPort1.Read(buffer, 0, length);
 
 
            new Thread(() =>
            {
                Invoke((MethodInvoker)(() =>
              {
                  label2.Text = Convert.ToString(buffer[0]);
              }));
            }).Start();
        }
Мой код ардуино

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
unsigned char buf[4];  //создал массив с размером элементов 4
 
 
void setup()
{
 Serial.begin(9600);  // открывая ком порт
 pinMode(8, INPUT_PULLUP);  // устанавливаю выводы на вход
 pinMode(9, INPUT_PULLUP);
 pinMode(10, INPUT_PULLUP);
 pinMode(11, INPUT_PULLUP);
}
 
void loop()
{
 pin[0] = digitalRead(8);  //записываю значение входов в массив последовательно
 pin[1] = digitalRead(9);
 pin[2] = digitalRead(10);
 pin[3] = digitalRead(11); 
 
  Serial.write(buf, sizeof(buf));  // отправляю значения массива в ком порт
 
 delay(3000); // ожидание 3 секунды и всё повторяется заново
 
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.07.2020, 15:26
Ответы с готовыми решениями:

Как отправлять пакет данных для проверки пинга?
Сейчас делал консольную программу. Сделал небольшой лаунчер, для проверки работоспособности...

Как правильно организовать связь: таблица Анкета и поле Рейтинг таблицы Передачи?
Мне нужно поместить среднее значение рейтинга, конкретной передачи, из таблицы Анкета в поле...

Как проверить реле к ардуино без ардуино
Собственно вопрос в названии. Дело в том что реле пришло по почте раньше чем само ардуино. Так как...

Как организовать массив для хранения данных?
не судите только начал изучать с++ , правильно ли так сохранять все данные в массив? const...

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.07.2020, 15:26

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

База данных для школы. Как лучше организовать
Ребят, хочу написать клиент-программу, вот окошко Для школы своей)))))))))))))))) Смысл таков...

Как перехватить пакет (запрос) данных при текущей передаче данных?
Хочу сделать на подобии валидации - что бы доступ к сети был только на определённые сайты. Я...

Типы данных С# для передачи данных через TCP
подскажите пожалуйста какой тип переменной лучше всего использовать в C# для передачи данных через...

Как правильно организовать передачу данных между компонентами для формы
Приветствую, у меня вопрос скорее к подходу. Дано компонент с формой, где много различных полей....

Как организовать поиск на таблице в листе данных для авторизации пользователей?
Ребят, нужна помощь! Создал форму в которой есть две текстовые области - Логин и Пароль И есть...

Организация подключения для передачи данных контроллер-сервер-контроллер, как?
Добрый день! На даче стоит контроллер от ab-log.ru МегаД, чудесная штука, локально в пределах...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.