Hallo Arduino User´s,
ich bin gerade dabei eine Gartenbewässerungsanlage zu installieren.
Als Steuerung würde ich gerne den Arduino MKR WiFi 1010 verwenden.
Der Feuchtigkeit-Sensor arbeitet kapazitiv und gibt als Output ein Frequenzsignal zwischen 50kHz und 500kHz aus.
Zum testen der Sensoren habe ich den Arduino UNO verwendet. Mit folgenden Code.
const int ledPin = 13;
unsigned int freq;
void setup() {
Serial.begin(9600);
pinMode(ledPin, OUTPUT);
//hardware counter setup
TCCR1A = 0; // reset timer/counter control register
}
void loop() {
// put your main code here, to run repeatedly:
freq = 0;
digitalWrite(ledPin, LOW);
delay(200);
digitalWrite(ledPin, HIGH);
// start the counting
bitSet(TCCR1B, CS12); // Counter clock source is external pin
bitSet(TCCR1B, CS11); // Clock on rising edge
delay(40); // wait 40ms
// stop the counting
TCCR1B = 0;
freq = TCNT1/4; // devide by 4 to get number of oscillations per 10ms
TCNT1 = 0; // reset the hardware counter
Serial.println(freq);
}
Das selbe würde ich nun gerne mit dem MKR-Board realisieren. Nur leider komm ich mit der Timer bzw. Counter Konfiguration gar nicht zurecht.
Hat von euch schon jemand mit timer/counter auf den MKR boards was realisiert?
Es wäre sehr nett wenn mir jemand hierzu weiterhelfen könnte.
Besten Dank!