91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 5KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-07-10
  • 語言: 其他
  • 標(biāo)簽: 單片機(jī)??

資源簡(jiǎn)介

基于51單片機(jī)的蜂鳴器音樂播放器代碼,直接在代碼中包含頭文件,調(diào)用函數(shù)即可使用,可自行添加歌曲譜播放

資源截圖

代碼片段和文件信息

/*
*要用無源蜂鳴器!!
*單片機(jī)晶振12M
*/

#include“beep.h“

unsigned?char?th0_f;//計(jì)數(shù)器高8位重裝值
unsigned?char?tl0_f;//計(jì)數(shù)器低8位重裝值
unsigned?char?speed_flag=160;//音速

unsigned?char?code?freq[36*2]={
0x8c0xf8//00262hz1//低音 ??1
0xf30xf8//00277hz1# ??2
0x5b0xf9//00294HZ?2? ??3
0xb80xf9//00311HZ?2# ??4
0x150xfa//00330HZ?3 ??5
0x670xfa//00349HZ?4 ??6
0xb90xfa//00370HZ?4# ??7
0x040xfb//00392HZ?5 ??8
0x4b0xfb//00415HZ?5# ??9
0x900xfb//00440HZ?6 ??10
0xcf0xfb//00466HZ?6# ??11
0x0c0xfc//00494HZ?7 ??12
0x440xfc//00523HZ?1?//中音??13
0x790xfc//00554HZ?1#? ??14
0xac0xfc//00587HZ?2? ??15
0xdc0xfc//00622HZ?2#? ??16
0x090xfd//00659HZ?3? ??17
0x340xfd//00698HZ?4? ??18
0x5c0xfd//00740HZ?4#? ??19
0x820xfd//00784HZ?5? ??20
0xa60xfd//00831HZ?5#? ??21
0xc80xfd//00880HZ?6? ??22
0xe20xfd//00932HZ?6#? ??23
0x060xfe//00988HZ?7? ??24
0x220xfe//01064HZ?‘1//高音??25
0x3d0xfe//01109HZ?‘1# ??26
0x560xfe//01175HZ?‘2 ??27
0x6e0xfe//01245HZ?‘2# ??28
0x850xfe//01318HZ?‘3 ??29
0x9a0xfe//01397HZ?‘4 ??30
0xae0xfe//01480HZ?‘4# ??31
0xc10xfe//01568HZ?‘5 ??32
0xd30xfe//01661HZ?‘5# ??33
0xe40xfe//01760HZ?‘6 ??34
0xf40xfe//01865HZ?‘6# ??35
0x030xff//01967HZ?‘7? ??36
};

char?code?jie7[7]={13151718202224};//C調(diào)的7個(gè)值

/********************定時(shí)器0得到頻率**************/
void?timer0()?interrupt?1
{
TL0=tl0_f;
TH0=th0_f;
beep=~beep; //取反音樂輸出IO
}

/***********音樂符號(hào)串解釋函數(shù)************/
//入口參數(shù):song--要解釋的音樂符號(hào)串;diao--輸出的音符號(hào)串;jie--輸出的時(shí)長(zhǎng)串
void?changedata(unsigned?char?*songunsigned?char?*diaounsigned?char?*jie)
{
unsigned?char?ii1jflag;
char?gaodi;//高低+/-12音階
unsigned?char?banyin;//有沒有半個(gè)升音階
unsigned?char?yinchang;//音長(zhǎng)
*diao=*song;
for(i=0i1=0;;)
{
gaodi=0;//高低=0
banyin=0;//半音=0
yinchang=4;//音長(zhǎng)1拍
flag=1;

while((*(song+i)==‘|‘)||(*(song+i)==‘?‘))//拍子間隔和一個(gè)空格過濾
i++;
switch(*(song+i))
{
case?‘‘: gaodi=-12;
i++;//低音
break;
case?‘‘‘: gaodi=12;
i++;//高音
break;
default:break;
}

j=?*(song+i)-0x30;//取出基準(zhǔn)音
i++;
j=jie7[j-1];
if(gaodi>0)
j+=12;//加上高低音
else?if(gaodi<0)
j-=12;//加上高低音

while(flag)
{
switch(*(song+i))
?{
case?‘#‘:? //有半音?j加一個(gè)音階
?i++;
?j++;
?break;
case?‘-‘: //有一個(gè)音節(jié)加長(zhǎng)
?yinchang+=4;
?i++;
?break;
case?‘_‘: //有一個(gè)音節(jié)縮短
?yinchang=yinchang/2;
?i++;
?break;
case?‘.‘: //有一個(gè)加半拍
?yinchang=yinchang+yinchang/2;
?i++;
?break;
default:
?flag=0;
?break;
?}
?}
?*(diao+i1)=j;//記錄音符
?*(jie+i1)=yinchang;//記錄音長(zhǎng)
?

?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----

?????文件??????14111??2019-05-06?09:52??蜂鳴器音樂盒文件\beep.c

?????文件????????164??2019-05-06?09:49??蜂鳴器音樂盒文件\beep.h

?????目錄??????????0??2019-05-06?09:53??蜂鳴器音樂盒文件

-----------?---------??----------?-----??----

????????????????14275????????????????????3


評(píng)論

共有 條評(píng)論

相關(guān)資源