打印

ARM程序,求助

[复制链接]
1255|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
imagine186|  楼主 | 2009-1-1 23:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
要做个MIDI 音乐播放器
现在有一个51单片机的程序,不知道哪位大哥能帮我改成能在ARM 利用LPC2124上用的程序~~~

#include <REGX51.H>
unsigned char code MUSIC_01[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 MUSIC_02[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 MUSIC_03[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 MUSIC_04[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 MUSIC_05[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 MUSIC_06[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 MUSIC_07[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,
  0x0A,0x72,0x82,0xA2,
  0x84,0x82,0x72,0x82,0x72,0x52,0x72,
  0x78,0x02,0x72,0x82,0xA2,
  0x84,0x82,0x72,0x82,0x72,0x82,0x32,
  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 MUSIC_08[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 MUSIC_09[]=
{
  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 MUSIC_10[]=
{
  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 MUSIC_11[]=
{
  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,
  0X76,0XA2,0X82,0X72,0X51,0X41,0X32,
  0X4C,0X42,0X32,
  0X76,0X82,0X74,0X82,0X72,
  0X53,0X41,0X38,0X32,0X42,
  0X16,0XC2,0X72,0X52,0X41,0X51,0X12,
  0XCC,0XC2,0XB2,
  0X16,0XC2,0X72,0X52,0X42,0X42,
  0X3C,0X32,0X32,
  0X26,0X22,0X24,0X42,0X32,
  0x22,0x12,0x18,0x02,0x52,
  0X46,0X12,0X44,0X72,0X82,
  0X5C,0X52,0X52,
  0X46,0X42,0X74,0X42,0X32,
  0X36,0X42,0X58,
  0X82,0X72,0X62,0X52,0X46,0X32,
  0X3C,0X12,0XB2,
  0X36,0X52,0X42,0X32,0X11,0XC1,0XB2,
  0XC6,0X12,0XC4,0X12,0XC2,
  0X76,0XA2,0X82,0X72,0X51,0X41,0X32,
  0X48,0X02,0X42,0X52,0X62,
  0X76,0X82,0X74,0X82,0X72,
  0X56,0X41,0X38,0X32,0X22,
  0X16,0XC2,0X72,0X52,0X42,0X42,
  0X3C,0X04,0X04,0X04,0X04,
  0xFF
};
unsigned char code MUSIC_12[]=
{
  0x34,0x32,0x34,0x34,0x24,0x34,0x32,0x32,0x24,0x38,0x44,0x58,0x48,
  0x34,0x32,0x34,0x34,0x24,0x38,0x34,0x7F,0x34,0x32,0x34,0x32,
  0x24,0x38,0x34,0x24,0x38,0x44,0x58,0x48,0x34,0x32,0x34,0x34,
  0x24,0x38,0x34,0x7F,0x16,0x4C,0x74,
  0x78,0x64,0x54,0x48,0x54,0x64,0x58,0x44,0x34,0x24,0x38,0x24,
  0x14,0x12,0x21,0x11,0x78,0x68,0x3F,0x4C,0x74,
  0x78,0x64,0x52,0x42,0x48,0x54,0x64,0x58,0x44,0x34,0x24,0x38,0x24,
  0x24,0x38,0x44,0x58,0x48,0x3C,
  0xFF
};
//*********************************************************************
// 以上为12首音乐代码谱表,根据自己的喜好添加乐谱代码
//*********************************************************************
sbit SPK=P3^7;
unsigned char code MUSIC_TABLE[]=//音乐谱频率值代码
{
  0xFF,0xFF,0xFB,0x90,0xFC,0x0C,0xFC,0x44,
  0xFC,0xAC,0xFD,0x09,0xFD,0x34,0xFD,0x82,
  0xFD,0xC8,0xFE,0x06,0xFE,0x22,0xFA,0X15,
  0XFB,0x04,0xFA,0x67,0xFE,0x85,
};

#define LEDCODEPORT P0
#define LEDBITPORT  P2
unsigned char code LEDTABLE[]=//数码管显示代码表
{
  0x3f,0x06,0x5b,0x4f,
  0x66,0x6d,0x7d,0x07,
  0x7f,0x6f,0x77,0x7c,
  0x39,0x5e,0x79,0x71,
  0x00,0x40,0x73,0x38,0x3e,0x6e,// ,-,P,L,U,y
};

unsigned char LEDBuffer[8];
unsigned char LEDScanCount;

struct MUSIC_STRUCT
{
  unsigned char Data;
  unsigned char Step;
  unsigned char Status;
  unsigned char Number;
};
struct MUSIC_STRUCT Music;
unsigned char *MusicPointer;

void Delay125MS(unsigned char t)//延时子程序
{
  unsigned char i,j,k;
  while(t)
    {
        for(i=2;i>0;i--)
        for(j=125;j>0;j--)
        for(k=248;k>0;k--);
        t--;
    }
}



void main(void)
{
  unsigned char a,b;
  Music.Data=0;//初始化
  Music.Step=0;
  Music.Status=0;
  Music.Number=0;
  MusicPointer=&MUSIC_01;
  if(0==Music.Status)
    {
      LEDBuffer[7]=17;//数码管显示"---PAUSE"
      LEDBuffer[6]=17;
        LEDBuffer[5]=17;
      LEDBuffer[4]=18;
      LEDBuffer[3]=10;
      LEDBuffer[2]=20;
        LEDBuffer[1]=5;
      LEDBuffer[0]=14;
    }
    else
      {
        LEDBuffer[7]=(Music.Number+1)/10;//数码管显示"XX--PLAy"
        LEDBuffer[6]=(Music.Number+1)%10;
        LEDBuffer[5]=17;
        LEDBuffer[4]=17;
        LEDBuffer[3]=18;
        LEDBuffer[2]=19;
        LEDBuffer[1]=10;
        LEDBuffer[0]=21;
      }
  TMOD=0x11;//定时器初始化为方式1,定时功能
  TH1=(65536-1843)/256;//T1定时1mS的初值装入TH1,TL1
  TL1=(65536-1843)%256;
  TR1=1;
  ET1=1;
  ET0=1;
  IT0=1;
  EX0=1;
  IT1=1;
  EX1=1;
  EA=1;
  PT0=1;
  PT1=1;
  while(1)
    {
      if(0!=Music.Status)//判断是否处于播放状态
        {
           if(0xff!=(*MusicPointer))//判断一首歌曲是否播放完毕
           {
             Music.Data=(*MusicPointer)&0x0f;//从歌曲表中取出音乐谱
             Music.Step=(*MusicPointer)>>4;
               a=MUSIC_TABLE[Music.Step*2+0];//根据音阶选择不同的频率值
             b=MUSIC_TABLE[Music.Step*2+1];
             TH0=a;
             TL0=b;
             TR0=1;
             if((0xff==a)&&(0xff==b))//判断是否为休止符
               {
                 TR0=0;
                 SPK=1;
               }
             Delay125MS(Music.Data);//根据音拍来决定延时时间
             TR0=0;
             SPK=1;
             MusicPointer++;//取下一个音乐谱代码
           }
           else
             {
               LEDBuffer[3]=17;//一首歌播放完毕,显示"XX-----"
               LEDBuffer[2]=17;
               LEDBuffer[1]=17;
               LEDBuffer[0]=17;
               Delay125MS(10);
               Music.Status=0;
               switch(Music.Number)//重新定位音乐谱指针
                 {
                   case 0:
                     MusicPointer=&MUSIC_01;  
                     break;
                   case 1:
                     MusicPointer=&MUSIC_02;
                     break;
                   case 2:
                     MusicPointer=&MUSIC_03;
                     break;
                  case 3:
                    MusicPointer=&MUSIC_04;
                    break;
                  case 4:
                    MusicPointer=&MUSIC_05;
                    break;
                  case 5:
                    MusicPointer=&MUSIC_06;
                    break;
                  case 6:
                    MusicPointer=&MUSIC_07;
                    break;
                  case 7:
                    MusicPointer=&MUSIC_08;
                    break;
                  case 8:
                    MusicPointer=&MUSIC_09;
                    break;
                  case 9:
                     MusicPointer=&MUSIC_10;
                    break;
                  case 10:
                    MusicPointer=&MUSIC_11;
                    break;
                  case 11:
                    MusicPointer=&MUSIC_12;
                    break;
                }
            }
        }
    }
}

void timer0(void) interrupt 1//音乐频率发生器
{
  TH0=MUSIC_TABLE[Music.Step*2+0];
  TL0=MUSIC_TABLE[Music.Step*2+1];
  SPK=~SPK; 
}

void timer1(void) interrupt 3//显示扫描等操作
{
  TH1=(65536-1843)/256;
  TL1=(65536-1843)%256;
  LEDCODEPORT=LEDTABLE[LEDBuffer][LEDScanCount]];
  LEDBITPORT =(LEDBITPORT & 0xf0)|LEDScanCount;
  LEDScanCount++;
  if(LEDScanCount==sizeof(LEDBuffer))LEDScanCount=0;
}

void int0(void) interrupt 0//音乐播放和暂停按键操作
{
  unsigned char i,j;
  EX0=0;
  for(j=20;j>0;j--)
  for(i=255;i>0;i--);
  if(0==Music.Status)Music.Status=1;
    else
      {
        TR0=0;
        SPK=1;
        Music.Status=0;
      }
    if(0==Music.Status)
      {
        LEDBuffer[7]=17;//数码管显示"---PAUSE"
        LEDBuffer[6]=17;
          LEDBuffer[5]=17;
          LEDBuffer[4]=18;
        LEDBuffer[3]=10;
        LEDBuffer[2]=20;
          LEDBuffer[1]=5;
          LEDBuffer[0]=14;
      }
      else
        {
          LEDBuffer[7]=(Music.Number+1)/10;//数码管显示"XX--PLAy"
            LEDBuffer[6]=(Music.Number+1)%10;
          LEDBuffer[5]=17;
          LEDBuffer[4]=17;
          LEDBuffer[3]=18;
          LEDBuffer[2]=19;
          LEDBuffer[1]=10;
          LEDBuffer[0]=21;
        }
  while(0==INT0);
  EX0=1;
  IE0=0;
}

void int1(void) interrupt 2//选曲按键操作
{
  unsigned char i,j;
  EX1=0;
  for(i=20;i>0;i--)
  for(j=255;j>0;j--);
  Music.Number++;
  if(12==Music.Number)
    {
        Music.Number=0;
    }
  switch(Music.Number)//重新定位音乐谱指针
    {
      case 0:
        MusicPointer=&MUSIC_01;  
        break;
      case 1:
        MusicPointer=&MUSIC_02;
        break;
      case 2:
        MusicPointer=&MUSIC_03;
        break;
      case 3:
        MusicPointer=&MUSIC_04;
        break;
      case 4:
        MusicPointer=&MUSIC_05;
        break;
      case 5:
        MusicPointer=&MUSIC_06;
        break;
      case 6:
        MusicPointer=&MUSIC_07;
        break;
      case 7:
        MusicPointer=&MUSIC_08;
        break;
      case 8:
        MusicPointer=&MUSIC_09;
        break;
      case 9:
         MusicPointer=&MUSIC_10;
        break;
      case 10:
        MusicPointer=&MUSIC_11;
        break;
      case 11:
        MusicPointer=&MUSIC_12;
        break;
    }
  LEDBuffer[7]=(Music.Number+1)/10;
  LEDBuffer[6]=(Music.Number+1)%10;
  while(0==INT1);
  EX1=1;
  IE1=0;
}
//**************************************************************************
// 将程序装入开发板,开机显示"---PAUSE",按下K1(P3.2)启动播放音乐,再按一下K1
// 暂停播放音乐;按下K2(P3.3)是歌曲选择,每按一次,选择下一首,到最后一首时,又
// 第一首开始.在播放过程中,显示"XX--PLAY",当前曲播放完毕,显示"XX-----",再按
// K1,则又开始播放.更多实验现象,请操作K1和K2两个按键.(fosc=12MHz)
//**************************************************************************

相关帖子

沙发
jxb163| | 2009-1-4 14:07 | 只看该作者

要付点消费啊,

使用特权

评论回复
板凳
feitengzhu| | 2009-1-6 16:17 | 只看该作者

貌似这是C程序

使用特权

评论回复
地板
斜阳下的背| | 2009-1-6 17:17 | 只看该作者

lZ没说清楚

楼主是在实现过程中出现问题了呢?还是对ARM平台就不是很清楚呢

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

20

帖子

0

粉丝