当前位置: 首页 > news >正文

如何用arduino uno主板播放自己想要的曲子。《我爱你中国》单片机版本。

目录

一.效果展示

二.基本原理

三.电路图

 四.代码


 

一.效果展示

arduino播放《我爱你中国》

二.基本原理

利用arduino uno单片机实现对蜂鸣器振动频率的调节,基于PWM控制系统通过代码实现控制。

三.电路图

bfe595cdcbbe44ecaf5fa62985366461.jpeg

 5a8f440bbcef4eab923a694ad5827926.png

 四.代码

//main.uno
#define Buzzer 2int PotBuffer = 0;
int delaytime=0;
void sound(int PotBuffer,int delaytime)
{float i=0.0;while(true){i+=float(PotBuffer);digitalWrite(Buzzer,HIGH);		//设置输出高电平delayMicroseconds(PotBuffer);	//延时PotBuffer值 usdigitalWrite(Buzzer,LOW);			//设置输出低电平delayMicroseconds(200);if((i/100)>float(delaytime)){break;}  }}
void delayplay(int ind_len,int PotBuffer,int delaytime)
{for(int ind=0;ind<ind_len;ind++){sound(PotBuffer,delaytime);delay(100);}
}
void setup()
{pinMode(Buzzer,OUTPUT);	//蜂鸣器引脚设定为输出
}void loop()
{//sound(88,100);								//do//sound(84,100);								//re//sound(80,100);								//mi//sound(78,100);								//fa//sound(76,100);								//so//sound(72,100);								//la//sound(68,100);int dt=1;delayplay(1,104,500*dt);delayplay(1,100,500*dt);delayplay(1,88,2000*dt);delayplay(1,84,500*dt);delayplay(1,88,1500*dt);delayplay(1,118,400*dt);delayplay(1,94,800*dt);delayplay(1,104,5000*dt);delayplay(1,88,500*dt);delayplay(1,84,500*dt);delayplay(1,80,2000*dt);delayplay(1,72,500*dt);delayplay(1,76,1500*dt);delayplay(1,80,300*dt);delayplay(1,84,800*dt);delayplay(1,88,2000*dt);while(true){}}

 

 

http://www.lryc.cn/news/109133.html

相关文章:

  • redis入门2-命令
  • Typescript 枚举类型
  • docker小记-容器中启动映射端口号但访问不到
  • Java中的Map常见使用案例代码
  • 计算机视觉实验:图像处理综合-路沿检测
  • Linux环境下VS code的python与C++调试环境的安装
  • AlexNet卷积神经网络-笔记
  • 剑指 Offer 53 - I. !!在排序数组中查找数字 I (考查二分法)
  • RANSAC算法在Python中的实现与应用探索:线性拟合与平面拟合示例
  • PHP接口自动化测试框架实现
  • VLAN原理+配置
  • MongoDB文档-基础使用-在客户端(dos窗口)/可视化工具中使用MongoDB基础语句
  • “RISC-V成长日记” blog发布,第一个运行在RISC-V服务器上的blog?
  • gitlab配置webhook
  • 编译安装Linux内核实践与踩坑
  • 郑州https数字证书
  • 第125天:内网安全-隧道技术SMBICMP正反向连接防火墙出入规则上线
  • 性能测试怎么做?测试工具怎么选择?
  • 【Eclise配置Jdk环境】Jre环境常见配置错误问题
  • UM2080F32——32位SoC芯片
  • IDEA基础使用
  • [数据集][目标检测]遛狗不牵绳数据集VOC格式-1980张
  • 基于WebRTC升级的低延时直播
  • 数学知识(二)
  • Java实现数据库表中的七种连接【Mysql】
  • 452. 用最少数量的箭引爆气球
  • HTML <rp> 标签
  • 常见的设计模式(超详细)
  • Excel 超牛的格式调整汇总——你还在担心你做出来的表不好看吗
  • hyperf 十二、自动化测试