久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標(biāo)題: STM32蜂鳴器模擬播放歌曲--《世間美好與你環(huán)環(huán)相扣》《生日歌》 [打印本頁]

作者: 小小涼冰樂    時(shí)間: 2020-6-7 01:50
標(biāo)題: STM32蜂鳴器模擬播放歌曲--《世間美好與你環(huán)環(huán)相扣》《生日歌》
/**********************************************************************
*函數(shù)名:BEEP_Init
*功  能:蜂鳴器初始化
*參  數(shù):無
*返  回:無
*備  注:
引腳          點(diǎn)蜂鳴器電平                模式                                                速度
PC3                        高電平                                        通用推挽輸出                50M
**********************************************************************/
void BEEP_Init(void)
{  
       
   #if 1
   RCC->APB2ENR |= 1<<4;//開啟PC口時(shí)鐘
   GPIOC->CRL &=~(0XF<<4*3);//清PC3
   GPIOC->CRL |=(0X3<<4*3);//通用推挽輸出 50M
   GPIOC->ODR &=~(3<<1);//關(guān)蜂鳴器       
   #else
    GPIO_InitTypeDef  GPIO_InitStructure;
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);//使能C端口時(shí)鐘
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3;         
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //通用推挽輸出
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;//速度50MHz
    GPIO_Init(GPIOC, &GPIO_InitStructure);//PC3
    GPIO_ResetBits(GPIOC,GPIO_Pin_3);//關(guān)蜂鳴器       
   #endif
}

//控制發(fā)聲
void Sound(u16 frq)
{
        u32 time;
        if(frq != 1000)//休止符
        {
                time = 500000/((u32)frq);
                BEEP = 1;
                delay_us(time);
                BEEP = 0;
                delay_us(time);
        }else
                delay_us(1000);
}

//生日歌
void play_Music_1(void)
{
        //音譜         低1  2   3   4   5   6   7  中1  2   3   4   5   6   7  高1    2   3     4    5    6    7  不發(fā)音
        uc16 tone[] = {262,294,330,349,392,440,494,523,587,659,698,784,880,988,1047,1175,1319,1397,1568,1760,1967,1000};//音頻數(shù)據(jù)表
        //編號          0   1   2   3   4   5   6   7   8   9   10  11  12  13  14   15   16    17   18   19   20  21
       
        //音譜
        u8 music[]={4,4,5,4,
                                                        7,6,21,
                                                        4,4,5,4,
                                                  8,7,21,
                                                        4,4,11,9,
                                                        7,6,5,21,
                                                        3,3,9,7,
                                                        8,7,21,
                                                        };
        //節(jié)拍
        u8 time[] = {2,2,4,4,        //時(shí)間--2代表半拍(100ms) 4代表一拍(200ms) 8代表兩拍(400ms)
                                                         4,4,4,
                                                         2,2,4,4,
                                                         4,4,4,
                                                         2,2,4,4,
                                                         4,4,4,4,
                                                         2,2,4,4,
                                                         4,4,4,
               };       
        u32 delayShow;
        u16 i,j;
        delayShow = 10;//控制播放快慢
        for(i=0;i<sizeof(music)/sizeof(music[0]);i++)//放歌
        {
                for(j=0;j<((u16)time[i])*tone[music[i]]/delayShow;j++)
                {
                        Sound((u32)tone[music[i]]);
                }       
        }
}

//世間美好與你環(huán)環(huán)相扣
void play_Music_2(void)
{
        //             低1  2   3   4   5   6   7  中1  2   3   4   5   6   7  高1    2   3     4    5    6    7  不發(fā)音
        uc16 tone[] = {262,294,330,349,392,440,494,523,587,659,698,784,880,988,1047,1175,1319,1397,1568,1760,1967,1000};//音頻數(shù)據(jù)表
        //              0   1   2   3   4   5   6   7   8   9   10  11  12  13  14   15   16    17   18   19   20  21
        //音調(diào)
        u8 music[]={11,11,11,10,9,9,8,8,7,8,
                                                        9,9,11,11,9,8,8,9,9,
                                                        7,7,7,7,7,9,9,9,8,8,8,7,8,
                                                        9,9,9,11,8,21,
                                                        11,11,11,11,10,9,8,7,8,
                                                        9,9,11,11,9,8,8,7,7,
                                                        7,7,7,7,7,9,9,9,8,8,8,7,8,
                                                        9,11,11,21,21,9,
                                                        8,21,21,4,5,4,
                                                        9,9,12,9,10,9,9,7,8,9,8,8,7,7,
                                                        7,7,9,7,8,7,7,5,6,7,6,6,
                                                        9,9,9,4,5,4,
                                                        9,9,9,9,11,9,9,7,8,9,8,8,7,7,
                                                        7,7,9,9,9,7,5,6,6,7,6,6,
                                                        5,7,8,8,7,7,8,8,9,8,
                                                        7,7,7,21,21                       
                                                        };       
        //節(jié)拍
        u8 time[] = {2,2,2,1,1,2,2,2,1,1,        //時(shí)間--2代表半拍(100ms) 4代表一拍(200ms) 8代表兩拍(400ms)
                                                         1,2,1,2,1,1,2,2,4,
                                                        1,1,1,1,2,1,1,2,2,1,1,1,1,
                                                        3,1,2,2,4,4,
                                                        1,2,1,2,1,1,6,1,1,
                                                        1,2,1,2,1,1,2,2,4,
                                                        1,1,1,1,2,1,1,2,2,1,1,1,1,
                                                        2,2,4,4,2,2,
                                                        4,4,2,2,2,2,
                                                        1,1,1,1,1,1,1,1,1,2,1,2,1,1,
                                                        1,1,1,1,1,1,1,1,2,1,1,4,
                                                        3,1,6,2,2,2,
                                                        1,1,1,1,1,1,1,1,2,1,1,2,1,1,
                                                        1,1,1,1,1,1,1,1,2,1,1,4,
                                                        2,1,1,2,2,2,1,1,2,2,
                                                        2,2,4,4,4,                       
               };       
        u32 delayShow;
        u16 i,j;
        delayShow = 7;//播放速度
        for(i=0;i<sizeof(music)/sizeof(music[0]);i++)//放歌
        {
                for(j=0;j<((u16)time[i])*tone[music[i]]/delayShow;j++)
                {
                        Sound((u32)tone[music[i]]);
                }       
        }
}

未使用到用定時(shí)器、PWM,也能實(shí)現(xiàn)播放歌曲.....




作者: yutian_51hei    時(shí)間: 2020-6-7 09:24
抽個(gè)時(shí)間試驗(yàn)一下
作者: nzt0518    時(shí)間: 2020-7-11 21:19
BEEP怎么定義的

作者: gwei_0210    時(shí)間: 2020-7-14 10:19
蜂鳴器一直響,但是我這個(gè)怎么聽不出來是樂曲,是delay_us參數(shù)設(shè)置的有問題?
作者: 小小涼冰樂    時(shí)間: 2020-7-16 11:38
gwei_0210 發(fā)表于 2020-7-14 10:19
蜂鳴器一直響,但是我這個(gè)怎么聽不出來是樂曲,是delay_us參數(shù)設(shè)置的有問題?

看我寫的這篇文章---》有全部程序
文章名稱:《父親節(jié)》STM32蜂鳴器實(shí)現(xiàn)筷子兄弟的<父親> 附源程序
文章鏈接:http://www.zg4o1577.cn/bbs/dpj-190970-1.html
作者: 小小涼冰樂    時(shí)間: 2020-7-16 11:38
nzt0518 發(fā)表于 2020-7-11 21:19
BEEP怎么定義的

看我寫的這篇文章---》有全部程序
文章名稱:《父親節(jié)》STM32蜂鳴器實(shí)現(xiàn)筷子兄弟的<父親> 附源程序
文章鏈接:http://www.zg4o1577.cn/bbs/dpj-190970-1.html
作者: lihui2558    時(shí)間: 2021-3-23 15:01
學(xué)習(xí)一下電子琴




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 国产福利视频网站 | caoporn免费在线视频 | 国产精品视频久久久久 | 久久久久久久久蜜桃 | 久久久噜噜噜www成人网 | 91精品国产91久久久久久密臀 | av看片网站 | 成人一区二区在线 | 日本不卡免费新一二三区 | 亚洲一区二区精品视频 | 亚洲一区二区三区免费在线观看 | 国产精品海角社区在线观看 | 国产成人在线视频免费观看 | 日韩精品在线一区 | 国产91精品久久久久久久网曝门 | 久久精品日产第一区二区三区 | 国产精品久久久久久久久久久免费看 | 三级免费 | av一二三四 | 久久人人网 | 一区二区不卡视频 | 毛片视频免费观看 | 亚洲天堂影院 | 成人高清在线 | 日批免费看| 成人免费毛片片v | 亚洲精品一区在线观看 | 久久日韩精品一区二区三区 | 男人天堂网av | 瑟瑟免费视频 | 亚洲一区三区在线观看 | 久久精品免费 | 成人特级毛片 | 精品国产91久久久久久 | 亚洲欧美自拍偷拍视频 | 成人欧美一区二区三区在线观看 | 日韩欧美亚洲 | 国产黄色在线 | 性色综合 | 亚洲一区二区精品 | 视频一区二区在线观看 |