Hallo,
ich habe folgenden Sketch auf einem Arduino UNO geladen und bekomme
erfolgreich die richtigen Werte eines Sensors (Werte zwischen 300 und
800).
Der gleiche Sketch auf dem Arduino YUN liefert komische Werte (zwischen
1 und 3).
Vielleicht kann mir da jemand helfen?
Vielen Dank.
Grüße,
René.
Hier nun der Code:
1 | // #########################################################
|
2 | // ################ B I B L I O T H E K E N ################
|
3 | // #########################################################
|
4 |
|
5 | #include <Bridge.h>
|
6 |
|
7 | // #########################################################
|
8 | // ############### K O N F I G U R A T I O N ###############
|
9 | // #########################################################
|
10 |
|
11 |
|
12 | // ####################### Hardware ########################
|
13 |
|
14 | int interruptPin = 2;
|
15 |
|
16 | // ###################### Variablen ########################
|
17 |
|
18 | volatile unsigned long pulse = 0; // interrupt loop counter
|
19 |
|
20 |
|
21 | // #########################################################
|
22 | // ####################### S E T U P #######################
|
23 | // #########################################################
|
24 |
|
25 |
|
26 | void setup() {
|
27 |
|
28 | Bridge.begin();
|
29 |
|
30 | SerialUSB.begin(9600);
|
31 | Console.begin();
|
32 | while (!Console){
|
33 | // auf Konsole warten
|
34 | }
|
35 | Console.println("Konsole ist bereit zum Datentransfer!!!!");
|
36 |
|
37 | pinMode(interruptPin, INPUT);
|
38 |
|
39 | // +++++++++ . ENDE VON SETUP +++++++++
|
40 | }
|
41 |
|
42 | void loop() {
|
43 |
|
44 | Console.println("Beginne Messung...");
|
45 |
|
46 | pulse = 0; // Anzahl der Pulse auf 0 setzen
|
47 | // Interrupt aktivieren: Steigende Flanken
|
48 | attachInterrupt(digitalPinToInterrupt(interruptPin), zaehlen, RISING);
|
49 | delay(10); // 10 Millisekunden warten
|
50 | detachInterrupt(digitalPinToInterrupt(interruptPin)); // Interrupt deaktivieren
|
51 | Console.print("Gemessene Pulse in 10 Millisekunden: ");
|
52 | Console.println(pulse);
|
53 |
|
54 | delay(1000);
|
55 |
|
56 | }
|
57 |
|
58 | void zaehlen()
|
59 | {
|
60 | pulse++;
|
61 | }
|