Bu soruyu öncelikle öğrenmek için soruyorum.
Hz'nin bir saniyedeki döngü sayısı olduğunu öğrendim.
Bunu göz önünde bulundurarak aşağıdaki örnekleri denedim.
Örnek 1
geçersiz döngü () {
digitalWrite (3, YÜKSEK); // 3. pinin ~ 5V voltajı olmasını sağlayın
gecikme (500); // 0,5 saniye bekleyin
digitalWrite (3, DÜŞÜK); // 3. pinin ~ 0V voltajı olmasını sağlayın
gecikme (500); // 0,5 saniye bekleyin
}
Bu kodun frekansı 1 Hz'dir çünkü voltaj 0,5 saniye yukarı ve 0,5 saniye düşüktür. Voltmetrem 0,99999 Hz gösteriyor
Görev döngüsü% 50'dir çünkü voltaj, zamanın yarısı yukarı ve yarısı aşağıdadır.
Örnek 2
geçersiz döngü () {
digitalWrite (3, YÜKSEK); // 3. pinin ~ 5V voltajı olmasını sağlayın
gecikme (90); // 0,09 saniye bekleyin
digitalWrite (3, DÜŞÜK); // 3. pinin ~ 0V voltajı olmasını sağlayın
gecikme (10); // 0.01 saniye bekleyin
}
Bu kodun frekansı 10 Hz'dir çünkü her döngü 0,1 saniyedir (90 ms + 10 ms). 10 döngüde 1 saniyeye ulaşacaksınız. Bu kodun görev döngüsü% 10'dur.
Aşağıdaki örnekler temelde sorudur:
Örnek 3
geçersiz döngü () {
digitalWrite (3, YÜKSEK); // 3. pinin ~ 5V voltajı olmasını sağlayın
// Gecikme
digitalWrite (3, DÜŞÜK); // 3. pinin ~ 0V voltajı olmasını sağlayın
// Gecikme
}
Bu kodu çalıştırırsam, voltmetrem 112.000 Hz veya 112 kHz'lik bir frekans gösteriyor:
Alabileceğim en yüksek frekansın bu olduğuna inanıyorum. Döngüler arasında gecikmiyorum. W Neden Arduino Uno'nun frekansını google'da aradığımda şöyle diyor:
Örnek 4
Google muhtemelen haklıdır ve frekans Arduino için 16 MHz'dir. Bu doğruysa, bir Arduino nasıl 433 MHz frekans gönderebilir? Bunu satın almak istiyorum:
W Örnek 3
'te olduğu gibi gecikmeyi ayarladığımda, elde edebileceğim en yüksek frekans 112 kHz idi (k ile).433 MHz frekansı (M ile) nasıl gönderilebilir?