📄 main.bak
字号:
#include "music.h"
#include "head.h"
#define MU_O P2_6 //音乐从P2.6口输出
/* 歌曲曲谱 - 虹彩妹妹 */
const uint HCMM[] = //定义数组常量-----音调(频率)
{
_LA, _SO, _MI, _LA, _SO, _MI,
_LA, _LA, _SO, _LA,
_LA, _SO, _MI, _LA, _SO, _MI,
_RE, _RE, _DO, _RE,
_MI, _MI, _SO, _LA, _DO1, _LA, _SO,
_MI, _MI, _SO, _DO,
_MI, _MI, _MI, _MI, _MI,
_1LA,_1LA,_1SO,_1LA,
};
/* 歌曲节拍 */
const uchar HCMM_L[] = //定义数组常量-----节拍(延时时间)
{
_4, _8, _8, _4, _8, _8,
_8, _4, _8, _2,
_4, _8, _8, _4, _8, _8,
_8, _4, _8, _2,
_4, _8, _8, _8, _8, _8, _8,
_8, _4, _8, _2,
_4, _4, _4, _8, _8,
_8, _4, _8, _2,
};
void Timer0_int( void ) interrupt 1
{
static xdata uint Count = 0; //为什么要定义成static??????????????
static xdata uint add = 0; // xdata------外部数据存储器???????????????????
if(add >= (HCMM_L[Count]*100))
{
Count++;
if(Count >= sizeof(HCMM)) Count = 0;
add = 0;
}
add++;
MU_O ^= 1;
TH0 = 0xFF - HCMM[Count]/256; //0.01ms定时器
TL0 = 0xff - HCMM[Count]%256;
}
/*
*********************************************************************************************************
** 函数名称 :main()
** 函数功能 :PWM音乐输出实验。
** 调试说明 :需要将music.h包含进来。
*********************************************************************************************************
*/
void main (void)
{
TMOD = 0x21; //定时器1 定时方式2 0010 0001
ET0=1; // 开定时器0中断
TR0=1; // 启动定时器0
TH0 = 0xFF; //置入初值:0.1ms定时器
TL0 = 0x7A;
TI = 1;
TR1 = 1; //启动定时器
EA = 1;
P3_5 = 0;
MU_O = 1;
while(1) //等待!!!!!!!!!!!!!!!!!
{
;
}
}
/*********************************************************************************************************
** End Of File
********************************************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -