//Y为你所说的 间隔1S想一次(改变Y值 调试你要的
发布时间:2017-11-16 04:36

  用的是AVRatmega16的MCU,12M晶振,以下程序能够出声音,但是是长鸣,我需要的是“滴滴滴”的响声,而且是每间隔1S响一次。#includeavr/io.h//io端口寄存器配置文件,必须包含#incl...

  用的是AVR atmega16的MCU,12M晶振,以下程序能够出声音,但是是长鸣,我需要的是“滴滴滴”的响声,而且是每间隔1S响一次。

  追问这个程序试了一下,好像不对。。。。。追答把你的可以正常发音的程序,显示出来。同时还有:不发音的、仅有延时的程序。另外,发音时,中音、或者发高音,你能不能控制?

  追问中音、高音是通过改变频率,这个已经做过了连续执行就行了?如果要加上按键呢,比如独立按键K1,按下K1,蜂鸣器响,松开就不响,蜂鸣器响的时长取决于K1按下的时间,这个又怎么写呢?

  追问大哥,你这个程序不对,还是连续响,而且频率变得难听了追答是你的延时不对,将延时时间加长即可。追问大循环部分应该这样写,滴滴滴声音出来了while(1){for(unsigned char i = 0;i40;i++){

  delay(Y);//Y为你所说的 间隔1S想一次(改变Y值 调试你要的1s或用你的延时函数里的