toneVal = 2000+(int(sinVal*1000));
为什么这么写,是依据什么规则?
01.float sinVal;
02.int toneVal;
03.int ledVal;
04.
05.void setup(){
06. pinMode(8,OUTPUT);
07. pinMode(9, OUTPUT);
08.}
若改成以下格式会有什么影响?两者有区别吗?
01.float sinVal;
02.int toneVal=8;
03.int ledVal;
04.
05.void setup(){
06. pinMode(toneVal,OUTPUT);
07. pinMode(9, OUTPUT);
08.} 看不到课程是怎么回事啊??? 学习学习! 认真的学习中 太好了! 厉害了,新手来顶一顶帖子,加油学习~ 啊啊啊为什么看不到帖子了?
啊啊啊为什么看不到帖子了?
啊啊啊为什么看不到帖子了?
请问这种图用什么软件画?
想请教一下各位,本项目中蜂鸣器所连接的8号数字I/O口应该只能输出高或低电平,并不具备输出PWM的功能,但程序里的正弦函数所产生的声音频率应该是个逐渐变化的模拟值,这该怎么理解呢??? lily1 发表于 2019-12-20 09:42
请问这种图用什么软件画?
可以用untitled 怒涛霜雪 发表于 2017-10-30 16:31
我想请教一下这一行:
toneVal = 2000+(int(sinVal*1000));
人能听到的频率范围在20-20000HZ 想请教一下各位,本项目中蜂鸣器所连接的8号数字I/O口应该只能输出高或低电平,并不具备输出PWM的功能,但程序里的正弦函数所产生的声音频率应该是个逐渐变化的模拟值,这该怎么理解呢??? IdSNilMdFl2A 发表于 2021-8-4 10:12
想请教一下各位,本项目中蜂鸣器所连接的8号数字I/O口应该只能输出高或低电平,并不具备输出PWM的功能,但 ...
啊我傻了,懂了 课后第一题红灯和蜂鸣器int node = 8;
int led = 7;
float sinVal;
int toneVal;
void setup() {
// put your setup code here, to run once:
pinMode(node,OUTPUT);
pinMode(led,OUTPUT);
}
void loop() {
for(int i = 0; i < 180; i++){
sinVal = (sin(i*(3.14/180)));
toneVal = 1000 + (int(sinVal*(1000)));
tone(node,toneVal);
if(i <= 90){
digitalWrite(led,HIGH);
}else{
digitalWrite(led,LOW);
}
delay(2);
}
}
学习学习
页:
1
[2]