资源简介

这个是在stm32f103单片机上使用蜂鸣器播放音乐的程序,曲调c调,主要做了低中高三个音区共36个音调(每个音区分别有1,1#,2,2#,3,4,4#,5,5#,6,6#,7十二个音调)。资源内有上位机用于产生音乐代码(对照曲目输入音符和节拍即可),另外我还放了几个示例音乐代码用于调试。单片机端程序主要有两部分,一部分是用于解码音乐代码的音乐程序(music),另外一部分是用于配置定时器和PWM频率的硬件配置文件(timer)。配置上使用的是TIM1用于产生PWM信号,PB8输出PWM信号(接蜂鸣器)。资源里面有一个简单的使用说明, 资源列表 1.单片机程序:music.c music.h timer.h timer.c 2.音乐代码上位机:51music.exe 3.示例音乐 4.使用说明

资源截图

代码片段和文件信息

#include “music.h“
#include “usart.h“
#include “delay.h“
#include “timer.h“
#include “drive.h“

#include “FreeRTOS.h“
#include “task.h“
#include “queue.h“
#include “list.h“
#include “semphr.h“



unsigned char musicflag=0;

const short T[49]={0                                                //const表示存放在rom中
  262277294311330349370392415440466494                   //低音区  11222334455566677 共12个音调
523554578622659698740784831880932988                   //中音区
104611091175124513181397148015681661176018651976        //高音区
};

const unsigned char music[][2]={{04}
{04}{244}{244}{214}{194}{214}{148}{194}{214}{244}{214}{1916}{04}{244}{244}{214}{194}{214}{128}{194}{214}{244}{194}{1716}{04}{174}{194}{214}
{244}{264}{244}{224}{244}{214}{214}{194}{1916}{04}
{174}{194}{174}{174}{194}{174}{194}{194}{218}{244}{214}{2112}{04}{244}{244}{214}{194}{214}{148}{194}{214}{244}{214}{1916}{04}{244}{244}{214}
{194}{214}{128}{194}{214}{244}{194}{1716}{04}{174}{194}{214}{244}{264}{244}{224}{244}{214}{214}{194}{1912}{124}{218}{194}{198}{1716}
{0xFF0xFF}};

//音乐播放器进程
void Music_Task(void *pvParameters)
{
static unsigned char lasttune=0;
static unsigned char m=0n=0;
while (1) 
{

if(musicflag!=0)
{
if(n<=0)
{
TIM1_PWM_setFrequency(0);
if(music[m][1]==0xff)
{
musicflag=0;
}
else 
{
n=music[m][1];
if(music[m][0]==lasttune)  //如果此次音调和上次相同,则延迟半个小节
{
delay_ms(1000/24);
}
lasttune=music[m][0];
TIM1_PWM_setFrequency(T[music[m][0]]);
m++;
  }
}

n--;
}


delay_ms(1000/12);
}
}

void music_run(unsigned char flag)
{
if(flag==1)
{
musicflag=1;
}
else
{
musicflag=0;
TIM1_PWM_setFrequency(0);
}
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     299008  2011-04-24 17:57  音乐播放器\51Music.exe

     文件       2058  2019-04-28 17:00  音乐播放器\music.c

     文件        197  2019-04-27 17:04  音乐播放器\music.h

     文件       1920  2019-04-28 16:58  音乐播放器\timer.c

     文件        159  2019-04-28 16:58  音乐播放器\timer.h

     文件        349  2019-04-28 17:06  音乐播放器\使用说明.txt

     文件       4209  2019-04-28 16:57  音乐播放器\示例音乐.txt

     目录          0  2019-04-28 17:01  音乐播放器

----------- ---------  ---------- -----  ----

               307900                    8


评论

共有 条评论