роботы робототехника микроконтроллеры


 Страниц (1): [1]   

> Описание: Нужна помощь в доработке кода
Drake Post Id



Рядовой


Сообщений всего: 1
Дата рег-ции: Апр. 2014  



Здравствуйте нужна помощь, для Вас наверное это пустяк.
Вот программа что у меня сейчас есть:
Импульсы по 24 пину, кнопка подключена к 28 что включате или отключает лог еденицу на 26 пине
Резистор на аналоговом входе относительно которого изменяется длинна паузы и импульса, и это значение выводится на лсд 16х2.
Как его переделать, под увеличение паузы и импульса delayMicroseconds двумя кнопками?
например подключить int Up = 8 и int Down = 9, при нажатии на UP значение delayMicroseconds увеличивалось на 100 микросеконд, а при Down уменшалось на 100.
Соответственно это значение выводилось на лсд
CODE:
#include <LiquidCrystal.h>

LiquidCrystal lcd(7, 11, 6, 5, 4, 3, 2);
int sensorPin = A15; //регулятор
int sensorValue = 0;
int StepPin = 24; //Крок
int DirPin = 26; //Дірекція
int SwitchPin = 28; //Кнопка переключення дірекції
boolean lastButton = LOW;
boolean currentButton = LOW;
boolean DirOn = false;

void setup()
{
pinMode(24, OUTPUT);
digitalWrite(24, LOW);
pinMode(DirPin, OUTPUT);
pinMode(SwitchPin, INPUT);
}

boolean debounce(boolean last)
{
boolean current = digitalRead(SwitchPin);
if (last != current)
{
delay(5);
current = digitalRead(SwitchPin);
}
return current;
}

void loop ()
{
currentButton = debounce(lastButton);
if (lastButton == LOW && currentButton == HIGH)
{
DirOn = !DirOn;
}
lastButton = currentButton;
digitalWrite(DirPin, DirOn);

sensorValue = analogRead(sensorPin);
sensorValue = map(sensorValue,0,1023,3600,1);
digitalWrite(24, HIGH);
delayMicroseconds(sensorValue);
digitalWrite(24, LOW);
delayMicroseconds(sensorValue);

lcd.setCursor(0,0);
lcd.print(sensorValue);
}

Скачать файл: Last_LCD.rar
Скачан раз: 249

(Отредактировано автором: 01 Апреля, 2014 - 21:40:21)

 
 Top
Страниц (1): [1]
« Программирование микроконтроллеров »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 





Powered by Exclusive Bulletin Board
ExBB FM 1.0 RC1 Smiles by Fool from Foolstown
  Яндекс.Метрика   Рейтинг@Mail.ru