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

📄 main.c

📁 详细描述了,由DSP5402控制的ISP1362的初始化,以及设为HC模式的整个工作过程
💻 C
字号:
#include "Hc_comm.h"
#include "int.h"
#include "hc_struct.h"
#include <stdio.h>

/* dsp5410 */
extern unsigned int  *pmem=0;
#define IMR   *(pmem+0x0000)
#define IFR   *(pmem+0x0001)
#define PRD0  *(pmem+0x0025)  /* timer0 period register */
#define TCR0  *(pmem+0x0026)  /* timer0 control register */
#define PMST  *(pmem+0x001D)
#define SWCR  *(pmem+0x002B)
#define SWWSR *(pmem+0x0028)
#define BSCR  *(pmem+0x0029)
#define CLKMD *(pmem+0x0058)
#define PMST_VAL        0x00A0  //interupt vectors from ox80  
#define SWWSR_VAL       0x7fff  
#define SWCR_VAL        0x0001  
#define BSCR_VAL        0x8802
#define CLKMD_VAL		0x9807

void dsp_init()
{
	CLKMD = 0x0000;//???
	while(CLKMD & 0x0001){};//??
	CLKMD = CLKMD_VAL;//??
	PMST = PMST&0xFFD7;//PMST_VAL;
	PMST = PMST|0x0040;
	SWWSR =SWWSR_VAL;
	SWCR  =SWCR_VAL;
	BSCR  =BSCR_VAL;
} 

void dspInt_init()
{
   asm(" ssbx intm");
   PMST=0x3FA0;
   SWWSR=0x7fff;
   SWCR=0x0000;
   IMR=IMR|0x0007;//enable int0、int1、int2
   IFR=IFR;
   asm(" rsbx intm");
}

void init()
{
    //dsp_init();
    software_reset();
    check_1362_connection();
    software_reset();
    Hc_reset();
    set_regValue();
    buffer_setting();
    dspInt_init();
    Operational_set();
}

void main()
{
//	unsigned short tmp;//int iii,tmp;
/*	while(1)
	{
		//usb_wake=0x55;
//		for(iii=0;iii<10;iii++);
		usb_00=0x55aa;
//		for(iii=0;iii<10;iii++);
		tmp=usb_00;
		//for(iii=0;iii<10;iii++);
		usb_wake=0xaa;
//		for(iii=0;iii<10;iii++);
		usb_00=0xaa55;
		usb_02=0x55aa;
//		for(iii=0;iii<10;iii++);
	//	tmp=usb_wake;
//		for(iii=0;iii<10;iii++);
		
	}*/
	
    init();
    usb_connect();
    set_address(0,1);
    while(1)
    {
    }
    
}

⌨️ 快捷键说明

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