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

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

    Опрос

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



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

    Архив новостей
    Март 2022 (1)
    Декабрь 2021 (1)
    Август 2021 (1)
    Июль 2021 (3)
    Февраль 2021 (3)
    Январь 2021 (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


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

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



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


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


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

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