Программирование

Вопросы по программированию Arduino.

линейка на энкодере

доброго времени уважаемые.

достал энкодеры на 2500 имп/оборот, хочу сделать цифровую линейку для токарного станка.

помогите с программой, сам с программированием недружу совсем.

контролер Arduino Mega R3, лсд такой - http://dvrobot.ru/shop/i113.arduino_lcd_schit.htm

программа примерно такая: энкодер проварачивается,  Arduino считает = в право-прибавляет, лево-вычитает= и выводит на экран в виде милиметры/до третьего знака после запятой =2500 имп/оборот=20 милиметров. кнопка сброс в =0= .

может кто поможет.

Вечный сон

Задача: с одной кнопки (на D2 или D3) и включать, и выключать. Ну то есть типа как кнопка "положить трубу" на сотике, только не держать долго. Для ясности будем называть состояние системы сразу после включающего прерывания - утром, состояние перед   set_sleep_mode() - вечером.

Семисегментный двухразрядный индикатор

Всем привет! Мозгов не хватает чтобы решить проблему!

Вот схема

Вот код

Где можно почитать статью "для чайников"?

Статью про Nrf24l01+, ардуино, разжеванные примеры, типы передаваемых данных и проч, что может пригодиться простому userу.

 

Спасибо!

"Алгоритмы и блок-схемы - это что такое?" Помощь новичкам.

Здравствуйте!

В этой теме я расскажу как блок-схемы помогают облегчить жизнь. Она ориентированна на людей, которые малознакомы с программированием (вобще неважно каким).

Как известно, весь код выполняется последовательно. То есть абсолютно ВСЕ операции которые выполняются внутри наших микроконтроллеров, выполняются один за другим растягиваясь на такты - это те странные МегаГерцы которые можно увидеть в спецификациях плат arduino (в даташите можно посмотреть сколько тактов занимают простейшие операции).

Можно в функции прерывания использовать отключение этого самого прерывания?

Чтобы первый фронт отловить, а на последующие не обращать внимание.

 

 

 

Вопрос по Char[]

 if (datacomplete) {
    Serial.print(gpsdata);
    datacomplete = false;
    if (gpsdata.length() > 10){
      int N= gpsdata.indexOf("V,");   
      Serial.println( N, DEC);
      char gpsN[3];
      for (int i=0; i <= 2; i++){
         gpsN[i]=gpsdata[i+N];}
        

Как

Здравствуйте!

В этой теме я хочу рассказать как блок-схемы помогают облегчить жизнь. Она ориентированна на людей, которые малознакомы с программированием (вобще неважно каким).

 

Первым чему учат программистов - алгоритмы.

Вырезка из Вики -

serialEvent на програмном сериале

serialEvent оч. полезная весч, но GPS висит на SoftwareSerial gps(2,3);

есть ли аналоги для софтвара?

Очередная тема про меню на LCD 20x4

Добрый день!

Написал код