14248| 16
|
[Arduino技术课程(高中)] 第七课水位报警模型 |
本帖最后由 hnyzcj 于 2014-4-30 06:16 编辑 水位报警——水位报警模型 作者:陈杰 教学目标 知识与技能: 1. 使用LED、蜂鸣器制作水位报警模型。 2. 水位报警模型物理电路的正确连接。 3. 数字口与模拟口的使用 过程与方法: 1. 动手实验,正确连接物理电路,烧录程序。 2. 测试程序,查看实验结果。 情感态度价值观: 使用电器元件进行创意设计。 教学重点: 依据功能组水位报警模型电路,正确连接电路。 了解并掌握Arduino IDE程序结构,修改调试原有程序,改变功能。 教学难点: 比较使用数字口与模拟口来完成实验 实验器材: DFRobotArduino入门套件、Arduino ide 1.04 【教学过程】 1.情景引入 教师展示水位报警模型实验装置图或视频。 本课所需器材为:控制板、面包板、蜂鸣器、LED灯、一次性水杯、导线。生:学生准备相关器材。设计意图:案例引入,原理介绍,准备新实验器材。 2.新知讲授前面的课程中,我们使用的蜂鸣器只是让他简单的发出声音,本课通过简单设计让蜂鸣器在具体现实中得以应用。本课中我们使用导线、水杯,当水杯中的水位超过就是如果水位到达警戒水位时,警报灯会闪烁,同时会有声音提示。(1.)工作原理电路上结构应该很简单。利用的原理就是,其实水是能够导电的(纯净水除外),然后给水一个电压,用模拟口进行检测即可(之所以说是模型,实际环境会稍显复杂不能直接用电拿水当导体用)如果检测到电压说明水已经到了我们标定的水位了 (2.)连接电路 设计意图:介绍Arduino物理电路连接,为后面正确实验效果奠定基础。 (3.)烧录程序 void setup() { pinMode(A5,OUTPUT); //让模拟口A5作为数字口输出 } void loop() { intn=analogRead(A0); if (n>=1) { digitalWrite(A5, HIGH); pinMode(A2,OUTPUT); //蜂鸣器频响 0.5秒 tone(A2,800); delay(500); pinMode(A2,INPUT); digitalWrite(A5,LOW); delay(500); } }将上述代码复制到IDE窗口中,先编译,如果无误后,再上传烧录至控制板中。完成后可以测试实验结果。 (4.)代码学习 tone() 在一个引脚上产生一个特定频率的方波(50%占空比)。持续时间可以设定,否则波形会一直产生直到调用noTone()函数。该引脚可以连接压电蜂鸣器或其他喇叭播放声音。在同一时刻只能产生一个声音。如果一个引脚已经在播放音乐,那调用tone()将不会有任何效果。如果音乐在同一个引脚上播放,它会自动调整频率。使用tone()函数会与3脚和11脚的PWM产生干扰(Mega板除外)。注意:如果你要在多个引脚上产生不同的音调,你要在对下一个引脚使用tone()函数前对此引脚调用noTone()函数。 语法: tone(pin,frequency) tone(pin,frequency, duration) 参数: pin:要产生声音的引脚 frequency: 产生声音的频率,单位Hz,类型unsigned int duration: 声音持续的时间,单位毫秒(可选),类型unsigned long 三.课堂练习 师:今天带大家一起使用了蜂鸣器、LED灯制作水位报警模型,有些同学已经发现此次使用的LED、蜂鸣器都是采用了模拟口作为输出口。请你尝试下面的做法,观察结果。 1.接水导线2的GND导线(绿色)如果延长,接入LED的GND口,观察实验结果是否有变化。 2.将LED处A5口改置数字口5,蜂鸣器A2口改为数字口2,观察实验结果是否有变化,如何修正。 四.学习总结 正确连接电路,实现相应功能。尝试改变电路连线、数字口与模拟口使用对比,修改程序。 |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed