📄 main.c
字号:
#include "DspRegDefine.h"
extern void Send();
extern void Recv();
extern void Sendinit();
extern void DRDY();
#define LEN 256
int data_buff[LEN];
//--------------------------------------------------------------------
// 函数名称 : InitDSP(void)
// 函数说明 : 初始化CPU
void InitDSP(void)
{ asm(" nop ");
asm(" nop ");
asm(" nop ");
*(unsigned int*)CLKMD=0x0; //switch to DIV mode clkout= 1/2 clkin
while(((*(unsigned int*)CLKMD)&01)!=0);
*(unsigned int*)CLKMD=0x9007; //switch to PLL X 4 mode
*(unsigned int*)PMST=0x3FF2;
*(unsigned int*)SWWSR=0x7fff;
*(unsigned int*)SWCR=0x0001;
*(unsigned int*)BSCR=0xf800;
asm(" ssbx intm "); //Disable all mask interrupts
*(unsigned int*)IMR=0x0;
*(unsigned int*)IFR=0xffff;
*(unsigned int*)TCR = 0xffff;
*(unsigned int*)PRD = 0x0029;
*(unsigned int*)TCR = 0x04E0;
asm(" nop ");
asm(" nop ");
asm(" nop ");
}
/*
***********************************************************
- 函数名称 : void Delay(int numbers)
- 函数说明 : 延时
***********************************************************
*/
void Delay(long int m)
{
long int i,j;
for(i=0;i<4000;i++)
{ for(j=0;j<m;j++)
{}
}
}
/*
*************************************************************************
- 函数名称 : InitMCBSP_SPI
- 函数说明 : MCBSP0设置为SPI模式
- 输入参数 : 无
- 输出参数 : 无
- 补充说明 :
**************************************************************************
*/
void InitMCBSP_SPI(void)
{ //复位 McBSP0
*(unsigned int*)McBSP0_SPSA=0x0000;//SPCR1
*(unsigned int*)McBSP0_SPSD=0x0000;//设置SPCR1.0(RRST=0)
*(unsigned int*)McBSP0_SPSA=0x0001;//SPCR2
*(unsigned int*)McBSP0_SPSD=0x0000;//设置SPCR1.0(XRST=0)
Delay(0); //延迟 4000*CPU 时钟周期 等待复位稳定
//配置 McBSP0为 SPI 模式
*(unsigned int*)McBSP0_SPSA=0x0000;//SPCR1
*(unsigned int*)McBSP0_SPSD=0x1800;
*(unsigned int*)McBSP0_SPSA=0x0001;//SPCR2
*(unsigned int*)McBSP0_SPSD=0x0000;
*(unsigned int*)McBSP0_SPSA=0x000E;//PCR
*(unsigned int*)McBSP0_SPSD=0x0A0C;
*(unsigned int*)McBSP0_SPSA=0x0002;//RCR1
*(unsigned int*)McBSP0_SPSD=0x0040;//
*(unsigned int*)McBSP0_SPSA=0x0003;//RCR2
*(unsigned int*)McBSP0_SPSD=0x0041;//
*(unsigned int*)McBSP0_SPSA=0x0004;//XCR1
*(unsigned int*)McBSP0_SPSD=0x0040;
*(unsigned int*)McBSP0_SPSA=0x0005;//XCR2
*(unsigned int*)McBSP0_SPSD=0x0041;
*(unsigned int*)McBSP0_SPSA=0x0006;//SRGR1
*(unsigned int*)McBSP0_SPSD=0x0009;
*(unsigned int*)McBSP0_SPSA=0x0007;//SRGR2
*(unsigned int*)McBSP0_SPSD=0x2000;
*(unsigned int*)McBSP0_SPSA=0x0001;//SPCR2
*(unsigned int*)McBSP0_SPSD=(*(unsigned int*)McBSP0_SPSD)|0x0040;
Delay(0); //延迟 4000*CPU 时钟周期 等待时钟稳定
*(unsigned int*)McBSP0_SPSA=0x0000;//SPCR1
*(unsigned int*)McBSP0_SPSD=(*(unsigned int*)McBSP0_SPSD)|0x0001;//RRST=1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -