Вывод информации на компьютер
- Войдите на сайт для отправки комментариев
Пт, 27/12/2013 - 12:50
Добрый день господа.
есть датчик вибрации Digital Vibration Sensor (мануал http://www.dfrobot.com/wiki/index.php/DFRobot_Digital_Vibration_Sensor_(SKU:DFR0027) )
Скомпилировал программу, загрузил его, ошибок нет, но вывода никакого нет в окне. Сам ардуино на датчик реагирует, когда происходит вибрация, на плате загорается оранжевая лампочка. модель ARDUINO UNO R3 2012.
Помогите увидеть показания, какой запрос послать, что вообще делать?
На всякий случай прикрепляю код программы, никаких доп библиотек не было выбрано.
#define SensorLED 13
#define SensorINPUT 3 //Connect the sensor to digital Pin 3 which is Interrupts 1.
unsigned char state = 0;
void setup()
{
pinMode(SensorLED, OUTPUT);
pinMode(SensorINPUT, INPUT);
attachInterrupt(1, blink, FALLING);// Trigger the blink function when the falling edge is detected
}
void loop()
{
if(state!=0)
{
state = 0;
digitalWrite(SensorLED,HIGH);
delay(500);
}
else
digitalWrite(SensorLED,LOW);
}
void blink()//Interrupts function
{
state++;
}
испльзуйте
http://arduino.ru/Reference/Serial
а не получится объяснить тупому что вы имели ввиду?
дык походу программа просто светодиодом моргает, когда с датчика приходит "1"->"0"
по всей видимости да, я только тугодум в программировании и не знаю как составить прогу чтобы он выводил на комп.
думаю надо добавить код такого типа
void setup(){ Serial.begin(9600); Serial1.begin(38400); Serial2.begin(19200); Serial3.begin(4800); Serial.println("Hello Computer"); Serial1.println("Hello Serial 1"); Serial2.println("Hello Serial 2"); Serial3.println("Hello Serial 3"); }#define SensorLED 13 #define SensorINPUT 3 //Connect the sensor to digital Pin 3 which is Interrupts 1. unsigned char state = 0; void setup() { Serial.Begin(9600); pinMode(SensorLED, OUTPUT); pinMode(SensorINPUT, INPUT); attachInterrupt(1, blink, FALLING);// Trigger the blink function when the falling edge is detected } void loop() { if(state!=0) { state = 0; digitalWrite(SensorLED,HIGH); Serial.print("Датчик сработал") delay(500); } else digitalWrite(SensorLED,LOW); } void blink()//Interrupts function { 23 state++; 24 } ВерхЩа прверью отпишусь
Только лучше так:
Serial.print("Datchik srabotal");тогда и компилятор не ругнется и в мониторе не карказябы будут.
короче программа почему то не сработала.
скрин прилагаю
ну текс подчистите, там вон символы лишние перетянулись
#define SensorLED 13 #define SensorINPUT 3 //Connect the sensor to digital Pin 3 which is Interrupts 1. unsigned char state = 0; void setup() { Serial.begin(9600); pinMode(SensorLED, OUTPUT); pinMode(SensorINPUT, INPUT); attachInterrupt(1, blink, FALLING);// Trigger the blink function when the falling edge is detected } void loop() { if(state!=0) { state = 0; digitalWrite(SensorLED,HIGH); Serial.println("Datchik Srabotal"); delay(500); } else digitalWrite(SensorLED,LOW); } void blink()//Interrupts function { state++; }вот без ошибок
Да все верно) За это отдельное спасибо и низкий поклон!!! )
Все заработало.
мне надо теперь чтоб он снимал характеристики, уровень вибрации. это возможно, вот с этими железками?
амплитуду врядли, а частоту смотрите даташит по вашей поделке
для уровня нужно пьезо датчик использовать(чо-то типа такого) и соответствующую математику
дел