Сделать стартовойДобавить в закладки  
Главная страничка Главная страничка
В номере:

Выходит с 17 июля 2008 г. цена договорная

Опрос

конечно, он настанет в 2012 г.
да, но не в 2012 г.
нет, это фантастика
а что такое конец света
а мне пофиг - я буду уже мертв



Календарь
«    Апрель 2013    »
ПнВтСрЧтПтСбВс
1234567
891011121314
15161718192021
22232425262728
2930 

Архив новостей
Февраль 2021 (3)
Январь 2021 (1)
Ноябрь 2020 (2)
Июль 2020 (2)
Июнь 2020 (3)
Май 2020 (1)

Информация
Arduino com-port echo
Arduino
автор: dimon, опубликовано: 30 апреля 2013

Посмотрим как осуществляется передача данных на Arduino через com-port.
Для этого напишем простенький скетч, который будет принимать строку по com-порту, выводить ее на экранчик 1602 и отправлять обратно через com-порт на компьютер.

/*
Баловство с com-портом
Будем принимать по com-порту строку, выводим ее на экран и эхом в com-порт

дисплей 1602, потенциометр для подсветки дисплея

Подключение дисплея 1602:
Контакт дисплея  	Контакт Arduino	             Значение
  1	                       GND                   Vss
  2                            5V                    Vdd
  3                            GND	             Vo (контрастность)
  4	                       digital 12	     RS
  5	                       digital 11            R/W
  6	                       digital 10            ENABLE
  11	                       digital 5	     DB4
  12	                       digital 4	     DB5
  13	                       digital 3	     DB6
  14                           digital 2	     DB7
  15	                       5V	             LED+
  16                           GND	             LED-

 */
 
 
 
 // подключаем библиотеку для работы с LCD
 #include <LiquidCrystal.h>
 // инициализируем LCD, указывая контакты данных
 LiquidCrystal lcd(12, 11, 10, 5, 4, 3, 2);


// задаем переменные
boolean receiveFlag = false;    // флаг что было что-то принято через com-порт
String myString;                // строка
int Count = 0;                  // счетчик


 
 void setup() {
   
   
   // красивая "загрузка" программы при старте :)
    lcd.begin(16, 2);
    lcd.print("Loading");
    delay(500);                // ждем 0.5 секунды
    lcd.print(".");
    delay(500);                // ждем 0.5 секунды
    lcd.print(".");
    delay(1000);               // ждем 1 секунду
    lcd.clear();               //очистка экрана
  
 
    // инициализируем передачу данных по COM-порту на скорости 9600 бод
    Serial.begin(9600); 
    Serial.println("Start "); //   

    // Задаем режим работы портов  
     
 }
 
 void loop() {
   

  
    // проверяем буфер com-порта - было ли что-то принято

    if (Serial.available() > 0)     //если есть доступные данные считываем строку
    {  
            
        while (Serial.available() > 0) 
        {
          int inChar = Serial.read();  // считываем символ
          myString += (char)inChar;    // формируем строку
        }  
          
 
        // устанавливаем флаг что нужно обработать принятые данные
        receiveFlag = true; 
     
        // Serial.flush(); // очистим буфер
       
    }




    // выводим принятую переменную на экран и в com-порт
    if (receiveFlag == true)
    {
      
      lcd.clear();              //очистка экрана
      
      lcd.setCursor(13, 0);     // устанавливаем курсор в 12-ом столбце, 1 строке
      lcd.print(Count);         // выводим кол-во итераций

      lcd.setCursor(0, 1);      // устанавливаем курсор в 0-ом столбце, 2 строке
      lcd.print(myString);      // выводим myString на экран

      Serial.print("String: "); // 
      Serial.println(myString); // эхо myString в com-порт
	 
      receiveFlag = false;      // сбрасываем флаг
      myString = "";            // очистка строки
      
      Count++;         // инкремент счетчика 
    }
	 
	 
     delay(1000);     // задержка перед повторением 


 }


Arduino com-port echo

 
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Чтобы Вам были доступны все функции Вам необходимо либо зарегистрироваться, либо зайти на сайт под своим именем.

Другие новости по теме:

  • Arduino + аналоговый температурный датчик LM35
  • Баловство с кнопками на Arduino
  • Ethernet погодная станция
  • Настройка DNS (BIND)
  • Разрешение доступа к ФТП средствами iptables


  • Комментарии:

    Оставить комментарий



     
    Информация
     
    Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.


    Поиск по сайту:


    Облако тегов
    Android, Arduino, backup, CentOS, cmd, css, div, DLE, DLE хаки, domoticz, dzvents, event, Home Assistant, Linux, log, LUA, Monster, ogf3, RDP, Template, VBS, windows, WSH, бумага, бумажный самолетик, верстка, иструкция, Карты, кино, Навигация, оригами, программа, рецензия, рецепт, скрипт, фигуры, шаблон, Яндекс, яндекс-карты

    Показать все теги
    Реклама
    раскрутка сайта бесплатно
    Главная страница | Регистрация | Добавить новость | Новое на сайте | Статистика | Поддержка | Правила ресурса Copyright © 2005-2018 by dimon - all right reserved!
    Тираж:           экземпляров.   Дизайн, верстка by dimon