Azuria

Arduino sound/light trigger for DSLR

Feb 19th, 2014
259
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.13 KB | None | 0 0
  1. /*
  2. Lyd script stjålet fra http://forum.arduino.cc/index.php/topic,51043.0.html
  3. LCD script stjålet fra http://www.geeetech.com/wiki/index.php/Serial_I2C_1602_16%C3%972_Character_LCD_Module
  4. Pin usage:
  5. Analog
  6.   0  delayPin, 10k pot
  7.   1  lightsenPin, LDR sensor
  8.   2  lightsenpotPin, 10k pot
  9.   3  NC
  10.   4  SDA on LCD
  11.   5  SCL on LCD
  12.  
  13. Digital
  14.   0  modeselectorPin, select between audio og light trigger, 0=Light, 1=Audio
  15.   1  laserPin
  16.   2  meetPin, checking audio
  17.   3
  18.   4
  19.   5
  20.   6
  21.   7  flashPin, triggering flash
  22.   8
  23.   9
  24.   10
  25.   11
  26.   12
  27.   13  LED pin
  28. */
  29.  
  30. #include <Wire.h>
  31. #include <LiquidCrystal_I2C.h>
  32. LiquidCrystal_I2C lcd(0x27,16,2);                           // set the LCD address to 0x27 for a 16 chars and 2 line display
  33.  
  34. const int modeselectorPin = 0;
  35. const int laserPin = 1;
  36. const int ledPin = 13;    
  37. const int meetPin = 2;  
  38. const int flashPin = 7;    
  39. int delayPin = 0;                       // Sat til midter ben på 10K potmeter, juster delay fra hændelse til shot.
  40. int delayVal = 0;                       // Standard værdi på delay indtil justeret.
  41. int lightsenPin = 1;                        // LRD der måler laserlys
  42. int lightsenpotPin = 2;                     // Sat til midter ben på 10K potmeter, juster lysfølsomheden
  43. int meet = LOW;                                     // Sæt trigger output til lav
  44.  
  45. void setup() {                      
  46. pinMode(ledPin, OUTPUT);    
  47. pinMode(laserPin, OUTPUT);
  48. digitalWrite(flashPin, LOW);  
  49. digitalWrite(laserPin, LOW);
  50. digitalWrite(meetPin, HIGH);  
  51. digitalWrite(ledPin, LOW);      
  52.  
  53. lcd.init();                         // initialize the lcd
  54. lcd.backlight();                        // Tænd backlight
  55. lcd.print("Hejsa verden");                  // Send en opstarts besked til LCD
  56. }
  57.  
  58. void loop()                              
  59. {
  60. delayVal = analogRead(delayPin);
  61.     lcd.print(delayVal);
  62.  
  63. if(digitalRead(modeselectorPin) == 0){                         // Tjek om vi vil bruge lyd eller lys
  64. digitalWrite(laserPin, HIGH);                                  // Tænd for laseren
  65. // Light trigger start
  66.     if(analogRead(lightsenPin) < analogRead(lightsenpotPin)){
  67.         delay(delayVal);                    // Forsinkelse fra lys til flash skud
  68.         digitalWrite(flashPin, HIGH);               // flash skyder
  69.         delayMicroseconds (20);             // vent på at flash er skudt
  70.         digitalWrite(flashPin, LOW);                // Sluk flash
  71.         digitalWrite(ledPin, HIGH);         // Tænd LED for at indikerer flash opladning
  72.         delay(4000);                    // Hvile tid, så der ikke kommer flere flash
  73.         digitalWrite(ledPin, LOW);        
  74.       }
  75. // Light trigger slut
  76. }else{                                                          // Det ser ud til at vi valgte lyd
  77. // Sound trigger start 
  78.     meet = digitalRead(meetPin);                    // Tjekker om lyd pin er lav
  79.     if (meet == LOW){                   // Hvis lyd pin er lav, så kør skidtet
  80.         delay(delayVal);                // Forsinkelse fra lyd til flash skud
  81.         digitalWrite(flashPin, HIGH);               // flash skyder
  82.         delayMicroseconds (20);             // vent på at flash er skudt
  83.         digitalWrite(flashPin, LOW);                // Sluk flash
  84.         digitalWrite(ledPin, HIGH);         // Tænd LED for at indikerer flash opladning
  85.         delay(4000);                    // Hvile tid, så der ikke kommer flere flash
  86.         digitalWrite(ledPin, LOW);        
  87.       }
  88. // Sound trigger slut
  89. }
  90. }
Advertisement
Add Comment
Please, Sign In to add comment