📄 ir_yinyue.c
字号:
/******************************************************************************
程序功能: 综合以上学过的红外编码,解码实验和音乐应用实验,
我们在这里要实现的目标是,红外遥控按下,
4位LED数码管显示音乐的序号,并由喇叭演奏出相应序号的音乐,
这里我们提供了12首的音乐,也就是序号从1到12,
当我们按遥控器上面别的按键的时候,
这时候系统要提示没有歌了,并显示错误的标志。
相当于是一个midi播放器!
*****************************************************************************/
#include <reg52.h>
#include <stdio.h>
sbit sound=P3^3; //蜂鸣器
sbit IR=P3^2; //P3.2为红外一体化接收
sbit SPK=P3^7; //喇叭
unsigned char data l; //第几个码?
unsigned char dm;
unsigned char aa[2]; //定义2个数组,用来存储代码,8位的数据码和8位的数据反码
unsigned long bb; //定义bb用来存放用户识别码,这里采用的是26位的用户识别
unsigned char *song;
bit data IR_OK=0; //解码成功标志
unsigned char song_number; //第几首歌曲号码
//第一首 干杯,朋友
unsigned char code song1[97]={0x34,0x32,0x32,0x34,0x42,0x51,
0x62,0x52,0x42,0x32,0x34,0x04,
0x74,0x74,0x62,0x62,0x64,
0x3c,0x04,
0x64,0x62,0x52,0x42,0x32,0x34,
0x33,0x31,0x32,0x72,0x76,0x72,
0x83,0x81,0x82,0x82,0x82,0x74,0x72,
0x7c,0x04,
0x63,0x61,0x62,0x62,0x64,0x72,0x82,
0x72,0x74,0x72,0x62,0x52,0x42,0x32,
0x42,0x44,0x42,0x42,0x52,0x62,0x52,
0x5c,0x04,
0x64,0x62,0x62,0x64,0x72,0x82,
0x72,0x74,0x72,0x62,0x52,0x42,0x32,
0x42,0x46,0x53,0x41,0x42,0x32,
0x3c,0x04,
0x44,0x48,0x02,0x32,
0x3f,
0x44,0x48,0x02,0x32,
0x3f,
0x34,0x0c,
0xFF};
//第二首 兰花草
unsigned char code song2[46]={0x12,0x52,0x52,0x52,0x56,0x42,
0x32,0x42,0x32,0x22,0x18,
0x82,0x82,0x82,0x82,0x86,0x72,
0xB2,0x72,0x72,0x62,0x58,
0x52,0x82,0x82,0x72,0x56,0x42,
0x32,0x42,0x32,0x22,0x16,0xB2,
0xB2,0x32,0x32,0x22,0x16,0x52,
0x42,0x32,0x22,0xC2,0x88,
0xFF};
//第三首 两只蝴蝶
unsigned char code song3[131]={0x52,0x42,
0x58,0x02,0x42,0x52,0x42,
0x38,0x04,0x12,0x32,
0x44,0x42,0x52,0x42,0x32,0x12,0x12,
0xC8,0x04,0x52,0x42,
0x58,0x02,0x42,0x52,0x42,
0x38,0x04,0x12,0x32,
0x44,0x42,0x52,0x42,0x32,0x12,0x32,
0x48,0x04,0x52,0x42,
0x58,0x02,0x42,0x52,0x42,
0x38,0x04,0x12,0x32,
0x44,0x42,0x52,0x42,0x32,0x12,0x11,0x31,
0xC8,0x04,0x52,0x72,
0x78,0x02,0x72,0x82,0x72,
0x58,0x04,0x42,0x42,
0x44,0x42,0x52,0x42,0x32,0x12,0x12,
0x32,0x32,0x3C,
0x09,0x72,0x72,0x82,
0xA2,0x92,0x92,0x82,0x52,0x42,0x42,0x42,
0x58,0x02,0x52,0x52,0x72,
0x84,0x84,0x02,0x12,0x52,0x42,
0x48,0x04,0x52,0x72,
0x72,0x52,0x74,0x02,0xA4,0x92,
0x82,0x92,0x54,0x02,0x82,0x82,0x92,
0x82,0x72,0x52,0x42,0x02,0xC4,0x12,
0x3C,
0xFF};
//第四首 祈祷
unsigned char code song4[37]={0xC4,0x12,0x32,0x44,0x42,0x52,
0x52,0x44,0x32,0x32,0x12,0x14,
0x12,0x12,0x32,0x42,0x54,0x44,
0x4F,
0xC4,0x12,0x32,0x44,0x42,0x72,
0x58,0x42,0x32,0x34,
0x14,0x12,0x32,0x34,0x32,0x12,
0x1F,
0xFF};
//第五首 阳光总在风雨后
unsigned char code song5[144]={0x52,0x62,
0x74,0x74,0x74,0x34,
0x42,0x34,0x52,0x56,0x42,
0x34,0x34,0x14,0x32,0x12,
0x12,0xC2,0xC4,0x04,0x52,0x62,
0x74,0x74,0x74,0x34,
0x42,0x34,0x52,0x56,0x42,
0x34,0x32,0x12,0x12,0x34,0x42,
0x4C,0x52,0x42,
0x34,0x32,0x42,0x32,0x12,0x12,0xC2,
0xC2,0x54,0x52,0x54,0x52,0x52,
0x42,0x32,0x32,0x12,0x32,0x42,0x32,0x52,
0x5C,0x52,0x42,
0x34,0x32,0x42,0x32,0x12,0x12,0xC2,
0xC2,0x54,0x52,0x54,0x02,0x52,
0x52,0x42,0x32,0x12,0x32,0x84,0x72,
0x7F,
0x0F,
0x74,0x72,0x52,0x54,0x74,
0x82,0x52,0x52,0x72,0x78,
0x34,0x32,0x32,0x42,0x54,0x72,
0x7F,
0x86,0x82,0x72,0x52,0x54,
0x72,0x84,0x32,0x36,0x52,
0x42,0x52,0x42,0x32,0x34,0x12,0x32,
0x32,0x42,0x4C,
0x86,0x82,0x72,0x52,0x54,
0x72,0x84,0x52,0x56,0x52,
0x42,0x52,0x72,0x82,0x52,0x34,0x12,
0x12,0x32,0x3C,
0xFF};
//第六首 心心相印
unsigned char code song6[85]={
0x04,0x24,0x14,0xC4,
0x54,0x54,0x48,
0x04,0x54,0x44,0x34,
0x22,0x14,0xB2,0xC8,
0x04,0x12,0xC2,0x16,0x12,
0x76,0x52,0x46,0x12,
0x3F,
0x04,0xB4,0xD4,0xC4,
0x14,0x28,0xC4,
0x14,0x12,0x32,0x16,0xC2,
0x54,0x78,0x34,
0x4C,0x42,0x52,
0x86,0x72,0x76,0x52,
0x74,0x28,0x42,0x52,
0x46,0x12,0x26,0x12,
0xCF,
0x04,0x24,0x14,0xC4,
0x56,0x52,0x48,
0x04,0x54,0x44,0x34,
0x22,0x14,0xB2,0xC8,
0x04,0x34,0x14,0xC4,
0x12,0x32,0x18,0x42,0x42,
0x74,0x58,0x44,
0x3F,
0xFF};
//第七首 最浪漫的事
unsigned char code song7[138]={0xC2,0xC2,0x12,
0x34,0x32,0x32,0x32,0x12,0x12,0x52,
0x54,0x02,0xC2,0x12,
0x32,0x32,0x32,0x32,0x34,0x52,0x72,
0x7C,0x02,0x72,
0x82,0x72,0x82,0x72,0x84,0x72,0x41,0x51,
0x52,0x41,0x31,0x34,0x02,0x32,0x32,0x12,
0x34,0x32,0x12,0x32,0x54,0x42,
0x32,0x32,0x32,0x32,0x34,0x52,0x72,
0x7C,0x72,0x72,
0x82,0x72,0x82,0x72,0x84,0x82,0x72,
0x42,0x52,0x42,0x34,0x12,0x12,0x32,
0xC4,0x52,0x42,0x34,0x12,0x12,
0x31,0x41,0x32,0x3C,
0x84,0x82,0x72,0x82,0x72,0x52,0x72,
0x78,0x02,0x72,0x82,0xA2,
0x84,0x82,0x72,0x82,0x72,0x82,0x32,
0x0A,0x72,0x82,0xA2,
0x38,0x02,0x32,0x42,0x52,
0x64,0x62,0x72,0x82,0x82,0x72,0x82,
0x82,0xA2,0x82,0x82,0x82,0xA2,0x82,0x72,
0x78,0x72,0x32,0x82,0x72,
0x78,0x72,0x82,0xA3,0x51,
0x42,0x51,0x41,0x3C,
0xFF};
//第八首 一生有你
unsigned char code song8[77]={0xC2,0xC2,0x34,0x42,0x42,
0x52,0x41,0x51,0x5C,
0x04,0xC2,0xC2,0x34,0x42,0x42,
0x52,0x31,0x41,0x4C,
0x04,0xC2,0xC2,0x34,0x42,0x42,
0x52,0x41,0x51,0x58,0x32,0x52,
0x4C,0x42,0x32,
0x34,0x32,0x42,0x48,
0x04,0xC2,0xC2,0x34,0x42,0x42,
0x72,0x41,0x51,0x5C,
0x04,0xC2,0xC2,0x32,0x32,0x42,0x42,
0x52,0x42,0x4C,
0x04,0xC2,0xC2,0x34,0x42,0x42,
0x52,0x41,0x51,0x58,0x32,0x52,
0x4C,0x42,0x32,
0x32,0x42,0x4C,
0xFF};
//第九首 宁静的夏天
unsigned char code song9[]={
0X54,0XC4,0X12,0X32,0X34,
0X52,0X52,0X52,0X52,0X42,0X32,0X34,
0XC1,0XC2,0X52,0XC2,0X12,0X32,0X34,
0X11,0X12,0X31,0X12,0XC2,
0X78,0X72,0X52,0X52,0X42,
0X32,0X42,0X52,0X11,0XC1,0XC4,0XC1,0XC1,0XC1,0XC1,
0X12,0X32,0X32,0X12,0X42,0X42,0X44,
0XC2,0X12,0X32,0X42,0X52,0X72,0X72,0X82,
0X41,0X51,0X42,0X48,0X42,0X12,
0X3C,0X72,0X62,
0X3C,0X72,0X62,
0X3C,0X72,0X62,
0x21,0x31,0x41,0x51,0x61,0x71,0x81,0x91,0x61,0x71,0x81,0x91,
0X3F,
0X3F,
0X54,0XC2,0XC2,0X42,0XC2,0XC4,
0X34,0X32,0X42,0X52,0XC2,0XC4,
0XD2,0XC2,0X12,0X22,0X38,
0X12,0X22,0X32,0X42,0X48,
0xFF};
//第十首 老鼠爱大米
unsigned char code song10[]={
0x32,0x31,0x41,
0x52,0x52,0x42,0x31,0x41,0x44,0x31,0x41,
0x52,0x52,0x42,0x32,0x34,0x71,0x11,
0x74,0x71,0x71,0x11,0x31,0x34,0x32,
0x32,0x32,0x32,0x31,0x41,0x44,0x32,0x41,0x51,
0x52,0x52,0x72,0x81,0x41,0x44,0x52,0x41,0x31,
0x32,0x32,0x42,0x51,0x71,0x74,0x71,0x71,
0x12,0x31,0x31,0x31,0x52,0x42,0x32,0x32,0x41,0x31,
0x34,0x52,0x51,0x71,
0x72,0x71,0x71,0x72,0x71,0x81,0x84,0x52,0x42,
0x32,0x32,0x32,0x41,0x51,0x54,0x51,0x71,
0x72,0x72,0x72,0x81,0xA1,0xA2,0x82,0x72,0x52,
0x42,0x32,0x32,0x12,0x44,0x51,0x71,
0x72,0x72,0x71,0x82,0x71,0x84,0x52,0x42,
0x32,0x32,0x32,0x41,0x51,0x54,0x51,0x71,
0x72,0x72,0x72,0x81,0xA1,0xA2,0x82,0x72,0x51,0x41,
0x42,0x42,0x44,0x32,0x51,0x61,
0x72,0x42,0x44,0x52,0x41,0x31,
0x34,0x52,0x41,0x31,0x34,0x52,0x42,
0x52,0x32,0x52,0x81,0x71,0x74,0x51,0x71,
0x82,0x81,0x71,0x72,0x81,0x71,0x74,0x51,0x41,0x31,
0x42,0x41,0x51,0x42,0x31,0x41,0x44,0x52,0x41,0x31,
0x34,0x52,0x41,0x31,0x34,0x52,0x42,
0x52,0x32,0x52,0x81,0x71,0x74,0x51,0x41,
0x82,0x82,0xA2,0x71,0x81,0x72,0x71,0x51,0x41,0x31,
0x44,0x41,0x31,0x41,0x51,0x44,0x52,0x52,
0x42,0x31,0x34,0x52,0x41,0x31,
0x42,0x31,0x34,
0xFF};
//第十一首 偏偏喜欢你
unsigned char code song11[]={
0XC2,0XB2,
0X36,0X52,0X42,0X32,0X11,0XC1,0XB2,
0XC6,0X12,0XC4,0X12,0XC2,
0X76,0XA2,0X82,0X72,0X51,0X41,0X32,
0X4C,0X42,0X32,
0X74,0X82,0X74,0X82,0X72,
0X52,0X41,0X38,0X32,0X42,
0X16,0XC2,0X72,0X52,0X42,0X42,
0X3C,0XC2,0XB2,
0X36,0X52,0X42,0X32,0X11,0XC1,0XB2,
0XC6,0X12,0XC4,0X12,0XC2,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -