当前位置:网站首页>A piece of music composed by buzzer (Chengdu)
A piece of music composed by buzzer (Chengdu)
2022-07-06 13:38:00 【axu_ nine hundred and ninety thousand seven hundred and seven】
The code and simulation can be downloaded through the following link
Resource link : Click to download Download free
Simulation diagram
The buzzer adopts passive buzzer speaker, You can change the pronunciation frequency by timing the timer .
By querying the frequency corresponding to the scale , Make different timing , Produce different frequencies . Then match the score , You can play music .
The operation is relatively simple .
#include<reg51.h>
sbit P10=P1^0;
sbit P17=P1^7;
void delay(unsigned char k){
unsigned char h,i,j;
for(h=0;h<k;h++){
for(i=0;i<25;i++){
for(j=0;j<20;j++);
}
}
}
/**delay Method introduction * Functional specifications : * It can be used for program delay * The delay duration is determined by the incoming parameters * The unit of the passed in parameter is ms * Such as the input “1” For delay 1ms * And so on */
void speaker(unsigned int SSC,unsigned int fre){
unsigned int j=fre;
TMOD=0x11;
TR0=1;
TR1=1;
EA=1;
ET0=1;
ET1=1;
P10=1;
TH0=SSC/256;
TL0=SSC%256;
TH1=60928/256;
TL1=60928%256;
while(j>0){
while(TF1==0){
while(TF0==0){
;
}
TR0=0;
TH0=SSC/256;
TL0=SSC%256;
P10=~P10;
TR0=1;
TF0=0;
}
TH1=60928/256;
TL1=60928%256;
TF1=0;
j--;
TF1=0;
}
j=fre;
}
void musician(unsigned int tone,unsigned int duration){
unsigned int box1[]={
0,63628,63835,64021,64103,64260,64400,64524,
// low 1(1) low 2(2) low 3(3) low 4(4) low 5(5) low 6(6) low 7(7)
64580,64680,64750,64800,64898,64968,65030,
// in 1(8) in 2(9) in 3(10) in 4(11) in 5(12) in 6(13) in 7(14)
65058,65110,65160,65178
// high 1(15) high 2(16) high 3(17) high 4(18)
};
unsigned int box2[]={
0,/*1*/30,/*2*/60,90,/*4*/120,150,/*6*/150,210,240,270,300,
// Time value
//0.1S(1)~1S(10)
};
speaker(box1[tone],box2[duration]);
P10=1;
delay(20);
}
void main(){
while(P17==0){
musician(12,6);
musician(12,2);
musician(10,2);
musician(12,2);
musician(13,4);
musician(13,2);
musician(10,4);
musician(9,2);
musician(8,2);
musician(5,1);
musician(6,1);
musician(8,2);
musician(9,2);
musician(10,2);
musician(9,2);
musician(10,6);
musician(12,6);
musician(12,2);
musician(10,2);
musician(12,2);
musician(13,4);
musician(13,2);
musician(10,4);
musician(9,2);
musician(8,2);
musician(5,1);
musician(6,1);
musician(8,2);
musician(9,2);
musician(12,2);
musician(9,2);
musician(8,6);
musician(12,2);
musician(10,2);
musician(9,2);
musician(8,6);
musician(5,4);
}
}
边栏推荐
- [中国近代史] 第六章测验
- Pit avoidance Guide: Thirteen characteristics of garbage NFT project
- [modern Chinese history] Chapter 6 test
- 【九阳神功】2019复旦大学应用统计真题+解析
- 3. C language uses algebraic cofactor to calculate determinant
- 5. Download and use of MSDN
- PriorityQueue (large root heap / small root heap /topk problem)
- ArrayList的自动扩容机制实现原理
- 【手撕代码】单例模式及生产者/消费者模式
- View UI Plus 发布 1.3.1 版本,增强 TypeScript 使用体验
猜你喜欢
强化学习系列(一):基本原理和概念
Rich Shenzhen people and renting Shenzhen people
[during the interview] - how can I explain the mechanism of TCP to achieve reliable transmission
Thoroughly understand LRU algorithm - explain 146 questions in detail and eliminate LRU cache in redis
2. C language matrix multiplication
Data manipulation language (DML)
MPLS experiment
3.猜数字游戏
Arduino+ds18b20 temperature sensor (buzzer alarm) +lcd1602 display (IIC drive)
5. Function recursion exercise
随机推荐
一段用蜂鸣器编的音乐(成都)
Questions and answers of "signal and system" in the first semester of the 22nd academic year of Xi'an University of Electronic Science and technology
FAQs and answers to the imitation Niuke technology blog project (III)
[the Nine Yang Manual] 2019 Fudan University Applied Statistics real problem + analysis
自定义RPC项目——常见问题及详解(注册中心)
C语言实现扫雷游戏(完整版)
4.分支语句和循环语句
Solution: warning:tensorflow:gradients do not exist for variables ['deny_1/kernel:0', 'deny_1/bias:0',
Thoroughly understand LRU algorithm - explain 146 questions in detail and eliminate LRU cache in redis
Leetcode. 3. Longest substring without repeated characters - more than 100% solution
[中国近代史] 第五章测验
【手撕代码】单例模式及生产者/消费者模式
7. Relationship between array, pointer and array
The latest tank battle 2022 - Notes on the whole development -2
重载和重写的区别
仿牛客技术博客项目常见问题及解答(二)
7.数组、指针和数组的关系
hashCode()与equals()之间的关系
ABA问题遇到过吗,详细说以下,如何避免ABA问题
MySQL事务及实现原理全面总结,再也不用担心面试