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

📄 initdsp.c

📁 用于TI公司的TMS320LF2407上的程序
💻 C
字号:
#include "2407c.h"


void init_dsp(int T1_pr)
{
/*************************System Initialization**********************************/
    asm(" SETC INTM");		/*屏蔽中断*/
    asm(" CLRC   CNF");	  	/*B0被配置为数据存储空间*/
	asm(" CLRC   OVM");	  	/*累加器结果正常溢出*/
	*WDCR=0x68;             /*disable watchdog timer*/
	*SCSR1=0x83ee;    		/*CLKIN=20MHz,CLKOUT=40MHz,使能EVA*/
	WSGR=0x01c0;			/*0 wait state*/      
	
/***********************Pins Initialization**************************************/
	*MCRA|=0x0fc0;			/*设置PWM1-6*/
   
/************************EVA Initialization**************************************/
	*T1PR=T1_pr;      	/*PWM设置周期设定*/
	*T1CNT=0;
	*ACTRA=0x0999;	 		/*PWM1,3,5 active low, 2,4,6active high*/
	*DBTCONA=0x08ec;		/*死区时间8*8*25ns=1.6μs*/
	*CMPR1=T1_pr;       	/*占空比初值 0%*/
	*CMPR2=T1_pr;
	*CMPR3=T1_pr;
    *COMCONA=0x8200;		/*允许比较,下溢重载,使能pwm引脚 */
    *T1CON=0x0800;      	/*连续增减计数,内部时钟,不分频*/
	
/**********************************开中断****************************************/	
	*IFR=0x0ff;			/*清所有系统中断标志*/
	*IMR=0x2;				/*开INT2中断*/
	*EVAIFRA=0x0fff;        /*清除EVA所有中断标志*/
	*EVAIFRB=0x0f;
	*EVAIFRC=0x0f;
	*EVAIMRA=0x0200;    		/*开T1周期中断*/
	*EVAIMRB=0;
	*EVAIMRC=0;
	(*T1CON)|=0x0040;       /*使能T1*/
	asm(" CLRC INTM");		/*开中断*/
	
/*~~~~~~~~~~~~~~~~~~~~~~~~initialization over~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
}

⌨️ 快捷键说明

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