📄 util.c
字号:
#include"myApp.h"
void initCLK( int value)
{
int i;
CLKMD=0;
for(i=0;i<5;i++);
CLKMD=value;
for(i=0;i<5;i++);
}
void initInterrupt( void )
{
int i;
asm(" ssbx INTM");
i= PMST;
PMST =i&0xff;
IMR=0x30;
IFR=0xff;
asm(" rsbx INTM");
}
unsigned int *left,*right;
void initVal( void)
{
left =(unsigned int *)LEFT_PTR;
right=(unsigned int *)RIGHT_PTR;
*(int *)FLAG =0;
}
void initMcBSP2( void )/*configuation the McBSP1 as SPI mode*/
{
int i;
SPSA2=SPCR1;
SPSD2=0; /*reset rev */
SPSA2=SPCR2; /*reset xtm*/
SPSD2=0;
SPSA2=SPCR1;
SPSD2=0x1800;//
SPSA2=RCR1;
SPSD2=0x0a0;//
SPSA2=XCR1;
SPSD2=0x0a0;//单字,每字32位
SPSA2=SRGR2;
SPSD2=0x2000;//cpu clk
SPSA2=SRGR1;
SPSD2=0xf9;//clk/250
SPSA2=XCR2;
SPSD2=0x1;//1位数据延迟
SPSA2=RCR2;
SPSD2=0x1;//1
SPSA2=PCR;
SPSD2=0xA0d;//a0a
SPSA2=SPCR2;
SPSD2=0x240;//
for(i=0;i<10;i++);
SPSA2=SPCR1;
SPSD2=SPSD2|0x1; /*reset rev */
SPSA2=SPCR2; /*reset xtm*/
SPSD2=SPSD2|0x1;
for(i=0;i<10;i++);
}
void McBSP2_32bit( void )/*configuation the McBSP1 as SPI mode*/
{
int i;
SPSA2=SPCR1;
SPSD2=0; /*reset rev */
SPSA2=SPCR2; /*reset xtm*/
SPSD2=0;
SPSA2=SPCR1;
SPSD2=0x1800;//
SPSA2=RCR1;
SPSD2=0x300;//
SPSA2=XCR1;
SPSD2=0x300;//4字,每字8位
SPSA2=SRGR2;
SPSD2=0x2000;//cpu clk
SPSA2=SRGR1;
SPSD2=0xf9;//clk/250
SPSA2=XCR2;
SPSD2=0x5;//1位数据延迟
SPSA2=RCR2;
SPSD2=0x5;//
SPSA2=PCR;
SPSD2=0xA0d;//a0a
SPSA2=SPCR2;
SPSD2=0x240;//
for(i=0;i<10;i++);
SPSA2=SPCR1;
SPSD2=SPSD2|0x1; /*reset rev */
SPSA2=SPCR2; /*reset xtm*/
SPSD2=SPSD2|0x1;
for(i=0;i<10;i++);
}
void McBSP2_16bit( void )/*configuation the McBSP1 as SPI mode*/
{
int i;
SPSA2=SPCR1;
SPSD2=0; /*reset rev */
SPSA2=SPCR2; /*reset xtm*/
SPSD2=0;
SPSA2=SPCR1;
SPSD2=0x1800;//
SPSA2=RCR1;
SPSD2=0x100;//
SPSA2=XCR1;
SPSD2=0x100;//2字,每字8位
SPSA2=SRGR2;
SPSD2=0x2000;//cpu clk
SPSA2=SRGR1;
SPSD2=0xf9;//clk/250
SPSA2=XCR2;
SPSD2=0x5;//1位数据延迟
SPSA2=RCR2;
SPSD2=0x5;//
SPSA2=PCR;
SPSD2=0xA0d;//a0a
SPSA2=SPCR2;
SPSD2=0x240;//
for(i=0;i<10;i++);
SPSA2=SPCR1;
SPSD2=SPSD2|0x1; /*reset rev */
SPSA2=SPCR2; /*reset xtm*/
SPSD2=SPSD2|0x1;
for(i=0;i<10;i++);
}
void McBSP2_8bit( void )/*configuation the McBSP1 as SPI mode*/
{
int i;
SPSA2=SPCR1;
SPSD2=0; /*reset rev */
SPSA2=SPCR2; /*reset xtm*/
SPSD2=0;
SPSA2=SPCR1;
SPSD2=0x1800;//
SPSA2=RCR1;
SPSD2=0x000;//
SPSA2=XCR1;
SPSD2=0x000;//3字,每字8位
SPSA2=SRGR2;
SPSD2=0x2000;//cpu clk
SPSA2=SRGR1;
SPSD2=0xf9;//clk/250
SPSA2=XCR2;
SPSD2=0x5;//1位数据延迟
SPSA2=RCR2;
SPSD2=0x5;//
SPSA2=PCR;
SPSD2=0xA0d;//a0a
SPSA2=SPCR2;
SPSD2=0x240;//
for(i=0;i<10;i++);
SPSA2=SPCR1;
SPSD2=SPSD2|0x1; /*reset rev */
SPSA2=SPCR2; /*reset xtm*/
SPSD2=SPSD2|0x1;
for(i=0;i<10;i++);
}
void McBSP2_40bit( void )/*configuation the McBSP1 as SPI mode*/
{
int i;
SPSA2=SPCR1;
SPSD2=0; /*reset rev */
SPSA2=SPCR2; /*reset xtm*/
SPSD2=0;
SPSA2=SPCR1;
SPSD2=0x1800;//
SPSA2=RCR1;
SPSD2=0x400;//
SPSA2=XCR1;
SPSD2=0x400;//5字,每字8位
SPSA2=SRGR2;
SPSD2=0x2000;//cpu clk
SPSA2=SRGR1;
SPSD2=0xf9;//clk/250
SPSA2=XCR2;
SPSD2=0x5;//1位数据延迟
SPSA2=RCR2;
SPSD2=0x5;//
SPSA2=PCR;
SPSD2=0xA0d;//a0a
SPSA2=SPCR2;
SPSD2=0x240;//
for(i=0;i<10;i++);
SPSA2=SPCR1;
SPSD2=SPSD2|0x1; /*reset rev */
SPSA2=SPCR2; /*reset xtm*/
SPSD2=SPSD2|0x1;
for(i=0;i<10;i++);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -