项目三:高级I/O —— 使用tone()函数
Tone函数会在一个引脚上产生一个特定频率的方波(50%占空比)。持续时间可以设定,否则波形会一直产生直到调用no Tone()函数。
该引脚可以连接压电蜂鸣器或者其他喇叭播放声音, 在同一时刻只能产生一个声音。如果一个引脚已经在播放音乐,那调用tone()将不会有任何效果。如果音乐在同一个引脚上播放,它会自动调整频率。
注意使用tone的时候尽量避免使用3脚和11脚,如果要在多个引脚上产生不同的音调,要在对下一个引脚使用tone()之前对此引脚调用no tone()函数。
tone(pin,frequency)
tone(pin,frequency,duration)
参数解释:Pin:要产生声音的引脚,frequency:产生声音的频率,单位Hz,类型unsigned int;duration:声音持续时间。
noTone(pin):停止由tone()产生的方波,如果没有使用tone()将不会有效果。 要用多个引脚产生声音的话,一定要在使用下个引脚之前使用notone()对之前的tone()做一个停止命令。
测试结果:频率越低,发出的声音越低沉,频率越高,发出的声音越尖锐
尝试制作一个可调节蜂鸣器频率的程序
效果:来回转动旋钮开关,会发出警笛的声音。
网友评论