Arduino Uno零基础入门学习笔记SOS摩斯密码LED+蜂鸣器
作者:野牛程序员:2023-12-28 16:26:17Arduino阅读 3216
首先,需要了解Arduino Uno的基本结构和引脚分布。Arduino Uno有14个数字引脚和6个模拟引脚。将使用其中的数字引脚来连接LED和蜂鸣器。
LED连接:将LED的正极连接到数字引脚,负极连接到地(GND)。
蜂鸣器连接:将蜂鸣器的正极连接到数字引脚,负极连接到地(GND)。
接下来,编写Arduino代码,实现SOS摩斯密码的功能。在摩斯密码中,SOS被编码为"... --- ..."
// 定义LED和蜂鸣器的引脚
const int ledPin = 2; // LED连接到数字引脚2
const int buzzerPin = 3; // 蜂鸣器连接到数字引脚3
void setup() {
pinMode(ledPin, OUTPUT); // 将LED引脚设置为输出模式
pinMode(buzzerPin, OUTPUT); // 将蜂鸣器引脚设置为输出模式
}
void loop() {
// 发送SOS信号
morseCodeSOS();
// 等待一段时间后重复
delay(2000);
}
void morseCodeSOS() {
// 发送S
dot(); dot(); dot();
delay(1000); // 信号之间的短暂暂停
// 发送O
dash(); dash(); dash();
delay(1000);
// 发送S
dot(); dot(); dot();
delay(1000);
}
void dot() {
digitalWrite(ledPin, HIGH); // 打开LED
tone(buzzerPin, 1000); // 发出蜂鸣器声音
delay(300); // 点的持续时间
digitalWrite(ledPin, LOW); // 关闭LED
noTone(buzzerPin); // 停止蜂鸣器声音
delay(300); // 信号之间的短暂暂停
}
void dash() {
digitalWrite(ledPin, HIGH); // 打开LED
tone(buzzerPin, 1000); // 发出蜂鸣器声音
delay(1000); // 划线的持续时间
digitalWrite(ledPin, LOW); // 关闭LED
noTone(buzzerPin); // 停止蜂鸣器声音
delay(300); // 信号之间的短暂暂停
}在这个示例中,定义了dot(点)和dash(划线)函数来发送摩斯密码中的点和划线信号。通过组合这些信号,实现了SOS的摩斯密码。LED和蜂鸣器同时工作,LED会在发送信号的时候闪烁,而蜂鸣器会发出相应的声音。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

