⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 music.c

📁 TMS320LF2407A
💻 C
字号:
#include "F2407_c.H" 	//;the header file  

//=======================================================
//PWM初始化程序
//=======================================================
void    pwm_mu()  
       {       
        SCSR1=SCSR1|0x000C;
        MCRA=MCRA|0X2000;      
        GPTCONB=0x0000; 
        GPTCONA=0x0044; 
        T2CON=0x1044;
        T4CON=0x1600;
        T2CNT=0x0;                   
        T4CNT=0x0;
        T4PR=0X0271;
       }

void  count_music(unsigned int  m,float n)
{  
   long     int     i;
   unsigned int     j;
   if(n==0)                          //频率值计算,改变T2时钟预定标系数、周期、比较寄存器。
       {
        T2CON=T2CON&0x0FFFD;
        goto bbb;
       }
   if(n<80)  
      {
        i=2500000;
        T2CON=0X0F8FF&T2CON;         //时钟预定标系数
        T2CON=0X0400|T2CON;
      }
   else   if(n>=80&n<600) 
            {
              i=5000000;
              T2CON=0X0F8FF&T2CON;
              T2CON=0X0300|T2CON;
            }
          else  {
                  i=40000000;
                  T2CON=0X0F8FF&T2CON;
                }
     T2PR=i/n;                       //周期
     T2CMPR=i/(n*2);                  //比较寄存器
     T2CON=T2CON|0x0002;         //启动比较
bbb: asm(" nop ");

       EVBIFRB=0x0ffff;               //T4作为定时器,为音乐定时        
       T4CON=0x0040|T4CON;
   ccc:
       j=EVBIFRB&0x0001;
           if(j==0)  goto  ccc;
           else
              {  
                EVBIFRB=0x0ffff;
                m=m-1;
                if(m!=0)
                goto  ccc;
              }
         
     T4CON=0x0FFBF&T4CON;
     T4CNT=0x0;     
} 

	
 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -