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

📄 initializing.c

📁 dsp.rar
💻 C
字号:
/*************************************************************************
文件名:		DSP2407_Initializing()
日期:      	2006年12月26日
公司(作者):  
描述和说明:	DSP 2407芯片级初始化函数
*************************************************************************/

#include "F2407REGS_c.h"

void DSP2407_Initializing()
{
	asm(" setc INTM");				// 关总中断,INTM = 1
	asm(" setc SXM");				// SXM置1,抑制符号扩展位
	asm(" clrc OVM");				// OVM清0,累加器中结果正常溢出
	asm(" clrc CNF");				// 可配置的片内双访问RAM块B0 
									// 被设置在数据空间
	SCSR1=0x00FC;					// 振荡器频率 CLKIN=10MHz,
									// 设置工作频率 CLKOUT=4*CLKIN=40MHz 
/*  0000,0000,1111,1100 =0x00FC
	0~~~ ~~~~ ~~~~ ~~~~ [reserved]
	~0~~ ~~~~ ~~~~ ~~~~ [CLKSRC] 选择CLKOUT引脚输出CPU时钟 
	~~00 ~~~~ ~~~~ ~~~~ [LPM] CPU进入IDLE1(LMP0)模式
	~~~~ 000~ ~~~~ ~~~~ [PLL] CPU工作频率是输入的4倍频,4*10=40MHz
	~~~~ ~~~0 ~~~~ ~~~~ [reserved] 
	~~~~ ~~~~ 1~~~ ~~~~ [ADC CLKEN] 1: ADC片内外设使能	
	~~~~ ~~~~ ~1~~ ~~~~ [SCI CLKEN] 1: SCI片内外设使能
	~~~~ ~~~~ ~~1~ ~~~~ [SPI CLKEN] 1: SPI片内外设使能	
	~~~~ ~~~~ ~~~1 ~~~~ [CAN CLKEN] 1: CAN片内外设使能
	~~~~ ~~~~ ~~~~ 1~~~ [EVB CLKEN] 1: EVB片内外设使能
	~~~~ ~~~~ ~~~~ ~1~~ [EVA CLKEN] 1: EVA片内外设使能
	~~~~ ~~~~ ~~~~ ~~0~ [resered] 0
	~~~~ ~~~~ ~~~~ ~~~0 [ILLADR] 无效地址检测位,用户仅读。		
*/
	WDCR=0x0068;					//关软件狗
/*  0000,0000,0110,1000 =0x0068
	0000 0000 0~~~ ~~~~ [reserved]
	~~~~ ~~~~ ~1~~ ~~~~ [WDDIS] Watchdog Disable:1,关软件狗
	~~~~ ~~~~ ~~1~ ~~~~ [WDCHK2] Watchdog Check Bit 2. 1:写该控制寄存器时该位应为1
	~~~~ ~~~~ ~~~0 ~~~~ [WDCHK1] Watchdog Check Bit 1. 0:写该控制寄存器时该位应为0
	~~~~ ~~~~ ~~~~ 1~~~ [WDCHK0] Watchdog Check Bit 0. 1:写该控制寄存器时该位应为1
	~~~~ ~~~~ ~~~~ ~000 [WDPS2-WDPS0]. Watchdog Prescale Select Bits.000:软件狗
	                                   分频为1
*/	
	IMR=0x003F;						//开放所有CPU核级中断 
/*  0000 0000 0011 1111 =0x003F
	0000 0000 00~~ ~~~~ [reserved] 0000 0000 00
	~~~~ ~~~~ ~~1~ ~~~~ [INT6] 1:  INT6中断开放
	~~~~ ~~~~ ~~~1 ~~~~ [INT5] 1:  INT5中断开放
	~~~~ ~~~~ ~~~~ 1~~~ [INT4] 1:  INT4中断开放
	~~~~ ~~~~ ~~~~ ~1~~ [INT3] 1:  INT3中断开放
	~~~~ ~~~~ ~~~~ ~~1~ [INT2] 1:  INT2中断开放
	~~~~ ~~~~ ~~~~ ~~~1 [INT1] 1:  INT1中断开放
*/	
	IFR=0x003F;						// 向所有中断标志位写1,以清除所有中断请求 
/*  0000 0000 0011 1111 =0x003F
	0000 0000 00~~ ~~~~ [reserved] 0000 0000 00
	~~~~ ~~~~ ~~1~ ~~~~ [INT6] 1:  清除INT6中断请求
	~~~~ ~~~~ ~~~1 ~~~~ [INT5] 1:  清除INT5中断请求
	~~~~ ~~~~ ~~~~ 1~~~ [INT4] 1:  清除INT4中断请求
	~~~~ ~~~~ ~~~~ ~1~~ [INT3] 1:  清除INT3中断请求
	~~~~ ~~~~ ~~~~ ~~1~ [INT2] 1:  清除INT2中断请求
	~~~~ ~~~~ ~~~~ ~~~1 [INT1] 1:  清除INT1中断请求
*/	
}

/*************************************************************************
文件名:		PHANTOM()
日期:      	2006年12月27日
公司(作者):  
描述和说明:	假中断函数。所有不需要的中断和错误中断都指向该函数。
*************************************************************************/
void interrupt PHANTOM(void) 
{   
	static int phantom_count;
	phantom_count ++;  
	return;	
} 

⌨️ 快捷键说明

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