agc_func.h

来自「一个完整的dsp实验程序」· C头文件 代码 · 共 76 行

H
76
字号
/*Filename: agc_func.h*/

void init_ad50(void)
{
	*(volatile u16 *)SPSA_ADDR(1)=SPCR2_SUBADDR;  //Transmit Data 0x0001 To AD50
    while(!((*(volatile u16 *)SPSD_ADDR(1)) & 0x0002)){};
    *(volatile u16 *)DXR1_ADDR(1)=0x0001;
    
    *(volatile u16 *)SPSA_ADDR(1)=SPCR2_SUBADDR;  //Transmit Data 0x0450 To AD50
    while(!((*(volatile u16 *)SPSD_ADDR(1)) & 0x0002)){};
    *(volatile u16 *)DXR1_ADDR(1)=0x0450;
     
    *(volatile u16 *)SPSA_ADDR(1)=SPCR2_SUBADDR;  //Transmit Data 0x0001 To AD50
    while(!((*(volatile u16 *)SPSD_ADDR(1)) & 0x0002)){};
    *(volatile u16 *)DXR1_ADDR(1)=0x0001;
    
    *(volatile u16 *)SPSA_ADDR(1)=SPCR2_SUBADDR;  //Transmit Data 0x0210 To AD50
    while(!((*(volatile u16 *)SPSD_ADDR(1)) & 0x0002)){};
    *(volatile u16 *)DXR1_ADDR(1)=0x0210;
   
    *(volatile u16 *)SPSA_ADDR(1)=SPCR2_SUBADDR;  //Transmit Data 0x0001 To AD50
    while(!((*(volatile u16 *)SPSD_ADDR(1)) & 0x0002)){};
    *(volatile u16 *)DXR1_ADDR(1)=0x0001;
    
    *(volatile u16 *)SPSA_ADDR(1)=SPCR2_SUBADDR;  //Transmit Data 0x0320 To AD50
    while(!((*(volatile u16 *)SPSD_ADDR(1)) & 0x0002)){};
    *(volatile u16 *)DXR1_ADDR(1)=0x0320; 
    
    *(volatile u16 *)SPSA_ADDR(1)=SPCR2_SUBADDR;  //Transmit Data 0x0001 To AD50
    while(!((*(volatile u16 *)SPSD_ADDR(1)) & 0x0002)){};
    *(volatile u16 *)DXR1_ADDR(1)=0x0001;
    
    *(volatile u16 *)SPSA_ADDR(1)=SPCR2_SUBADDR;  //Transmit Data 0x0101 To AD50
    while(!((*(volatile u16 *)SPSD_ADDR(1)) & 0x0002)){};
    *(volatile u16 *)DXR1_ADDR(1)=0x0101; 
}

void init_board(void)
{
	*(volatile u16 *)CLKMD = 0x0000;
	while(*(volatile u16 *)CLKMD & 0x0001){};
	*(volatile u16 *)CLKMD = CLKMD_VAL;
	
	*(volatile u16 *)PMST = PMST_VAL;
	*(volatile u16 *)SWWSR =SWWSR_VAL;
	*(volatile u16 *)SWCR  =SWCR_VAL;
	*(volatile u16 *)BSCR  =BSCR_VAL;
	
	*(volatile u16 *)SPSA_ADDR(1)=SPCR1_SUBADDR;  
	*(volatile u16 *)SPSD_ADDR(1)=bsp_SPCR11;
	*(volatile u16 *)SPSA_ADDR(1)=SPCR2_SUBADDR;  
	*(volatile u16 *)SPSD_ADDR(1)=bsp_SPCR21;
	*(volatile u16 *)SPSA_ADDR(1)=RCR1_SUBADDR;  
	*(volatile u16 *)SPSD_ADDR(1)=bsp_RCR11;
	*(volatile u16 *)SPSA_ADDR(1)=RCR2_SUBADDR;  
	*(volatile u16 *)SPSD_ADDR(1)=bsp_RCR21;
	*(volatile u16 *)SPSA_ADDR(1)=XCR1_SUBADDR;  
	*(volatile u16 *)SPSD_ADDR(1)=bsp_XCR11;
	*(volatile u16 *)SPSA_ADDR(1)=XCR2_SUBADDR;  
	*(volatile u16 *)SPSD_ADDR(1)=bsp_XCR21;
	*(volatile u16 *)SPSA_ADDR(1)=SRGR1_SUBADDR;  
	*(volatile u16 *)SPSD_ADDR(1)=bsp_SRGR11;
	*(volatile u16 *)SPSA_ADDR(1)=SRGR2_SUBADDR;  
	*(volatile u16 *)SPSD_ADDR(1)=bsp_SRGR21;
	*(volatile u16 *)SPSA_ADDR(1)=MCR1_SUBADDR;  
	*(volatile u16 *)SPSD_ADDR(1)=bsp_MCR11;
	*(volatile u16 *)SPSA_ADDR(1)=MCR2_SUBADDR;  
	*(volatile u16 *)SPSD_ADDR(1)=bsp_MCR21;
	*(volatile u16 *)SPSA_ADDR(1)=PCR_SUBADDR;  
	*(volatile u16 *)SPSD_ADDR(1)=bsp_PCR1;
	
	init_ad50();
}


⌨️ 快捷键说明

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