当前位置:网站首页>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);
}
}
边栏推荐
- View UI plus released version 1.3.0, adding space and $imagepreview components
- Redis的两种持久化机制RDB和AOF的原理和优缺点
- FAQs and answers to the imitation Niuke technology blog project (III)
- 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
- Conceptual model design of the 2022 database of tyut Taiyuan University of Technology
- string
- 【九阳神功】2016复旦大学应用统计真题+解析
- 9. Pointer (upper)
- C语言入门指南
- 重载和重写的区别
猜你喜欢

The latest tank battle 2022 - Notes on the whole development -2

12 excel charts and arrays

这次,彻底搞清楚MySQL索引

2. Preliminary exercises of C language (2)

优先队列PriorityQueue (大根堆/小根堆/TopK问题)

(super detailed II) detailed visualization of onenet data, how to plot with intercepted data flow

8. C language - bit operator and displacement operator

6. Function recursion

3. Number guessing game
![[面试时]——我如何讲清楚TCP实现可靠传输的机制](/img/d6/109042b77de2f3cfbf866b24e89a45.png)
[面试时]——我如何讲清楚TCP实现可靠传输的机制
随机推荐
Leetcode.3 无重复字符的最长子串——超过100%的解法
2. Preliminary exercises of C language (2)
MySQL事务及实现原理全面总结,再也不用担心面试
仿牛客技术博客项目常见问题及解答(三)
[面试时]——我如何讲清楚TCP实现可靠传输的机制
IPv6 experiment
[the Nine Yang Manual] 2018 Fudan University Applied Statistics real problem + analysis
FAQs and answers to the imitation Niuke technology blog project (III)
[the Nine Yang Manual] 2020 Fudan University Applied Statistics real problem + analysis
[the Nine Yang Manual] 2017 Fudan University Applied Statistics real problem + analysis
透彻理解LRU算法——详解力扣146题及Redis中LRU缓存淘汰
The latest tank battle 2022 - full development notes-3
【九阳神功】2018复旦大学应用统计真题+解析
西安电子科技大学22学年上学期《信号与系统》试题及答案
FileInputStream和BufferedInputStream的比较
优先队列PriorityQueue (大根堆/小根堆/TopK问题)
C语言实现扫雷游戏(完整版)
FAQs and answers to the imitation Niuke technology blog project (I)
The overseas sales of Xiaomi mobile phones are nearly 140million, which may explain why Xiaomi ov doesn't need Hongmeng
ArrayList的自动扩容机制实现原理