Страница 34 из 66

Re: ЧПУ пульты

Добавлено: 04 ноя 2012, 09:08
Тима
По просьбе aftaev-a выкладываю скетч выводящий на экран показания с джойстика.

Код: Выделить всё

#include <LiquidCrystal.h> //подключаем библиотеку для работы с экраном 
#define axis_X 8  // джойстик ось Х подключен к pin 8
#define axis_Y 9  // джойстик ось Y подключен к pin 9
#define axis_Z 2  // джойстик кнопка по Z подключенa к pin 9

LiquidCrystal lcd(8, 9, 10, 11, 12, 13); // указываем пины экрана
int value_X;  // указываем типы переменных
int value_Y;
int value = 0;
int value_Z = 0;

void setup() {
  pinMode(axis_Z, INPUT);// определяем Z как вход
  lcd.begin(20, 4);  // указываем размкрность экрана
  lcd.setCursor(5, 1);  // переводим курсор в позицию 5.1
  lcd.print("CNC-CLUB.RU");  // выводим текст
  delay(3000);  // ждем 3 секунды
  lcd.clear();  // очищаем экран
}

void loop() {
  lcd.setCursor(0, 0); // переводим курсор в позицию 0.0
  value_X = analogRead(axis_X);  // считываем показания с джойстика по оси Х
  lcd.print("X = " );  // выводим текст
  lcd.print(value_X, DEC);  // выводим значение по оси Х в десятиричной системе счисленя
  lcd.print(" " );  // после значения выводим пробел
  
  lcd.setCursor(0, 1);  // итд
  value_Y = analogRead(axis_Y);
  lcd.print("Y = " );
  lcd.print(value_Y, DEC);
  lcd.print(" " );
  
  if(value_Y >= 0 && value_Y < 100) value = value - 10;
  if(value_Y > 100 && value_Y < 300) value = value - 5;
  if(value_Y > 300 && value_Y < 505) value = value - 1;
  if(value_Y > 515 && value_Y < 700) value = value + 1;
  if(value_Y > 700 && value_Y < 900) value = value + 5;
  if(value_Y > 900) value = value + 10;
 
  lcd.setCursor(0, 3);
  value_Y = analogRead(axis_Y);
  lcd.print("S = " );
  lcd.print(value, DEC);
  lcd.print(" " );
  
  lcd.setCursor(0, 2);
  lcd.print("Z = " );
  value_Z = digitalRead(axis_Z);
  lcd.print(value_Z, DEC);
  if(value_Z == 1)  value = 0;
  lcd.print("  " );
 
  delay(200);
}
Немножко прокоментил скетч!

То, что он делает: при отклонении джойстика по оси Y в одну сторону, S увеличивается(чем сильнее отклоняем - тем больше увеличивается), при отклонении в другую сторону - уменьшается. при нажатии на джойстик(ось Z) - S обнуляется!

Re: ЧПУ пульты

Добавлено: 04 ноя 2012, 14:21
aftaev
Тима писал(а):Немножко прокоментил скетч!
О, давай буду к Си привыкать :)

Re: ЧПУ пульты

Добавлено: 04 ноя 2012, 14:37
aftaev
Тима писал(а):#include <LiquidCrystal.h> //подключаем библиотеку для работы с экраном
ты не ответил где файл должен лежать?

Re: ЧПУ пульты

Добавлено: 04 ноя 2012, 14:42
Тима
В папке "libraries", если правильно помню название папки.

Re: ЧПУ пульты

Добавлено: 04 ноя 2012, 15:02
Тима
aftaev писал(а):
Тима писал(а):#include <LiquidCrystal.h> //подключаем библиотеку для работы с экраном
ты не ответил где файл должен лежать?
Именно эта библиотека должна лежать в папке с библиотеками по умолчанию. По крайней мере у меня и на винде и на линуксе лежит.

Re: ЧПУ пульты

Добавлено: 04 ноя 2012, 16:51
aftaev
Тима, твой пример загрузил без подключенного джойстика = цифры бегают :)

Re: ЧПУ пульты

Добавлено: 04 ноя 2012, 16:58
Тима
они и будут бегать, т.к. вход в воздухе висит. когда подключишь будет в районе 500 показывать.

Re: ЧПУ пульты

Добавлено: 04 ноя 2012, 17:13
aftaev
Что нибудь есть по солидней для работы с ардуино? В этой проге что с офсайта версия 1.0.1 нет многих вкусностей - нельза закоментировать какой то блок, когда внизу пишет ошибки непонятно в какой строке ошибка. В нормальных компиляторах щелкаешь на ошибку он тебе показывает строку.

Re: ЧПУ пульты

Добавлено: 04 ноя 2012, 17:49
Serg
Это тебе надо с этого тряпочного языка на нормальный C перебираться. :)

Re: ЧПУ пульты

Добавлено: 04 ноя 2012, 17:53
aftaev
UAVpilot писал(а):Это тебе надо с этого тряпочного языка на нормальный C перебираться.
Это типо в Си не будет показывать где ошибка?

Re: ЧПУ пульты

Добавлено: 04 ноя 2012, 17:58
Serg
Это для ардуинского недоязыка нет нормальных средств разработки.

Re: ЧПУ пульты

Добавлено: 04 ноя 2012, 18:07
aftaev
Вот ж..а Он пишет ошибки и ищи где это они :tongue:
Ардуино это Атмега под Атмегу есть нормальный Си компилятор?

Re: ЧПУ пульты

Добавлено: 04 ноя 2012, 19:31
Тима
Почему-то библиотека не активируется. когда она активна должно отбражаться так: #include <LCD4Bit_mod.h>, а тут отображается весь текст черным цветом!

Re: ЧПУ пульты

Добавлено: 04 ноя 2012, 20:02
Serg
aftaev писал(а):Вот ж..а Он пишет ошибки и ищи где это они :tongue:
Ардуино это Атмега под Атмегу есть нормальный Си компилятор?
Под винду есть avrstudio, кто-то даже запускал её под линуксом через wine. Из чисто линуксовых есть отдельно компилятор avr-gcc с сопутствующими прибамбасами типа отладчика avr-gdb и т.п. В качестве IDE можно пользовать много чего, например Eclipse.

Re: ЧПУ пульты

Добавлено: 04 ноя 2012, 20:15
aftaev
UAVpilot писал(а):Под винду есть avrstudio, кто-то даже запускал её под линуксом через wine. Из чисто линуксовых есть отдельно компилятор avr-gcc с сопутствующими прибамбасами типа отладчика avr-gdb и т.п. В качестве IDE можно пользовать много чего, например Eclipse.
Мне под винду проще :) Линух использую ток из-за того что он на ноуте и там места побольше :)

Re: ЧПУ пульты

Добавлено: 04 ноя 2012, 22:25
Serg
Кстати, ещё придётся программатором обзавестись или разбираться как подружится с загрузчиком в ардуине.

Re: ЧПУ пульты

Добавлено: 04 ноя 2012, 23:04
Тима
aftaev, мучаюсь с твоим скетчем, какая-то хрень получается. пересмотрел ошибки, которые выкидывает при компиляции, первая ошибка

Код: Выделить всё

home/cnc/Desktop/arduino-1.0.1/libraries/LCD4Bit_mod/LCD4Bit_mod.cpp:29:57: error: WConstants.h: Нет такого файла или каталога
пишет что нет библиотеки "WConstants.h" для компонента библиотеки "LCD4Bit_mod.cpp", а все остальные ошибки это следствие этой, насколько я понял.

Re: ЧПУ пульты

Добавлено: 04 ноя 2012, 23:48
Тима
aftaev, исправил твои библиотеки, у меня все компилируется! :roll:
LCD4Bit_mod.rar
(6.67 КБ) 302 скачивания
попробуй!

Re: ЧПУ пульты

Добавлено: 05 ноя 2012, 01:03
Nick
На всякий случай, в ubuntu arduino можно поставить еще и вот такой строкой:

Код: Выделить всё

sudo apt-get install arduino
Правда версия может быть далеко не последней...

Re: ЧПУ пульты

Добавлено: 05 ноя 2012, 01:14
Тима
Установил линукс на другой комп, но связать с ардуиной пока не удалось. Сейчас загружаю обновления, посмотрим что будет дальше!