📄 main.c
字号:
#include <csl.h>
#include <stdio.h>
//#include <csl_pll.h>
#include <csl_mcbsp.h>
//#include <csl_gpio.h>
//#include <csl_irq.h>
#include <csl_chip.h>
//#include <csl_timer.h>
//#include <csl_irqhal.h>
//#include <csl_emif.h>
//#include <csl_dma.h>
//#include <math.h>
//#define XF_ptr 0x0007
unsigned int *ST1_ptr;
unsigned int senddata[64];
MCBSP_Handle hMcbsp1;
void main()
{
int i,j;
CSL_init();
/*初始化McBSP0*/
hMcbsp1 = MCBSP_open(MCBSP_PORT1,MCBSP_OPEN_RESET);
//对串口1的发送接收器以及SRG进行复位
MCBSP_FSET_H(hMcbsp1, SPCR1, RRST,0x0);
MCBSP_FSET_H(hMcbsp1, SPCR2, FRST,0x0);
MCBSP_FSET_H(hMcbsp1, SPCR2, GRST,0x0);
MCBSP_FSET_H(hMcbsp1, SPCR2, XRST,0x0);
//对接收器端相应的寄存器进行配置
MCBSP_FSET_H(hMcbsp1, SPCR1, DLB,0x0);
MCBSP_FSET_H(hMcbsp1, SPCR1, RJUST,0x0);
MCBSP_FSET_H(hMcbsp1, SPCR1, CLKSTP,0x0);
MCBSP_FSET_H(hMcbsp1, SPCR1, DXENA,0x0);
MCBSP_FSET_H(hMcbsp1, SPCR1, RINTM,0x2);
MCBSP_FSET_H(hMcbsp1, SPCR1, RSYNCERR,0x0);
MCBSP_FSET_H(hMcbsp1, SPCR1, RFULL,0x0);
MCBSP_FSET_H(hMcbsp1, SPCR1, RRDY,0x0);
MCBSP_FSET_H(hMcbsp1, SPCR2, FREE,0x0);
MCBSP_FSET_H(hMcbsp1, SPCR2, SOFT,0x0);
MCBSP_FSET_H(hMcbsp1, SPCR2, XINTM,0x2);
MCBSP_FSET_H(hMcbsp1, SPCR2, XSYNCERR,0x0);
MCBSP_FSET_H(hMcbsp1, SPCR2, XEMPTY,0x0);
MCBSP_FSET_H(hMcbsp1, SPCR2, XRDY,0x0);
MCBSP_FSET_H(hMcbsp1, RCR1, RFRLEN1,0x0);
MCBSP_FSET_H(hMcbsp1, RCR1, RWDLEN1,0x02);
MCBSP_FSET_H(hMcbsp1, RCR2, RPHASE,0x0);
MCBSP_FSET_H(hMcbsp1, RCR2, RFRLEN2,0x0);
MCBSP_FSET_H(hMcbsp1, RCR2, RWDLEN2,0x2);
MCBSP_FSET_H(hMcbsp1, RCR2, RCOMPAND,0x0);
MCBSP_FSET_H(hMcbsp1, RCR2, RFIG,0x0);
MCBSP_FSET_H(hMcbsp1, RCR2, RDATDLY,0x0);
MCBSP_FSET_H(hMcbsp1, XCR1, XFRLEN1,0x0);
MCBSP_FSET_H(hMcbsp1, XCR1, XWDLEN1,0x02);
MCBSP_FSET_H(hMcbsp1, XCR2, XPHASE,0x0);
MCBSP_FSET_H(hMcbsp1, XCR2, XFRLEN2,0x0);
MCBSP_FSET_H(hMcbsp1, XCR2, XWDLEN2,0x2);
MCBSP_FSET_H(hMcbsp1, XCR2, XCOMPAND,0x0);
MCBSP_FSET_H(hMcbsp1, XCR2, XFIG,0x0);
MCBSP_FSET_H(hMcbsp1, XCR2, XDATDLY,0x0);
MCBSP_FSET_H(hMcbsp1, SRGR1, FWID,0x0f);
MCBSP_FSET_H(hMcbsp1, SRGR1, CLKGDV,0x18);
MCBSP_FSET_H(hMcbsp1, SRGR2, GSYNC,0x0);
MCBSP_FSET_H(hMcbsp1, SRGR2, CLKSP,0x0);
MCBSP_FSET_H(hMcbsp1, SRGR2, CLKSM,0x1);
MCBSP_FSET_H(hMcbsp1, SRGR2, FSGM,0x1);
MCBSP_FSET_H(hMcbsp1, SRGR2, FPER,0x1f);
MCBSP_FSET_H(hMcbsp1, PCR, XIOEN,0x0);
MCBSP_FSET_H(hMcbsp1, PCR, RIOEN,0x0);
MCBSP_FSET_H(hMcbsp1, PCR, FSXM,0x1);
MCBSP_FSET_H(hMcbsp1, PCR, FSRM,0x0);
MCBSP_FSET_H(hMcbsp1, PCR, CLKXM,0x1);
MCBSP_FSET_H(hMcbsp1, PCR, CLKRM,0x0);
// MCBSP_FSET_H(hMcbsp1, PCR, SCLKME,0x0);
MCBSP_FSET_H(hMcbsp1, PCR, CLKSSTAT,0x0);
MCBSP_FSET_H(hMcbsp1, PCR, DXSTAT,0x0);
MCBSP_FSET_H(hMcbsp1, PCR, DRSTAT,0x0);
MCBSP_FSET_H(hMcbsp1, PCR, FSXP,0x1);
MCBSP_FSET_H(hMcbsp1, PCR, FSRP,0x1);
MCBSP_FSET_H(hMcbsp1, PCR, CLKXP,0x1);
MCBSP_FSET_H(hMcbsp1, PCR, CLKRP,0x0);
/*
for(;;)
{
for(i=0;i<0x100;i++)
{
MCBSP_FSET_H(hMcbsp1, PCR, FSXP,0x1);
}
for(i=0;i<0x100;i++)
{
MCBSP_FSET_H(hMcbsp1, PCR, CLKXP,0x1);
}
for(i=0;i<0x100;i++)
{
MCBSP_FSET_H(hMcbsp1, PCR, FSXP,0x0);
}
for(i=0;i<0x100;i++)
{
MCBSP_FSET_H(hMcbsp1, PCR, CLKXP,0x0);
}
}
*/
MCBSP_FSET_H(hMcbsp1, SPCR2, GRST,0x1);
MCBSP_FSET_H(hMcbsp1, SPCR2, XRST,0x1);
MCBSP_FSET_H(hMcbsp1, SPCR1, RRST,0x1);
MCBSP_FSET_H(hMcbsp1, SPCR2, FRST,0x1);
// ST1_ptr=(unsigned int *)0x0007;
// *ST1_ptr=(*ST1_ptr)&0xDFFF;
/*
for(;;)
{
asm(" SSBX XF");
for(i=0;i<100;i++)
{
asm(" NOP");
}
asm(" RSBX XF");
for(i=0;i<100;i++)
{
asm(" NOP");
}
}
*/
for(;;)
{
}
for(i=0;i<32;i++)
{
senddata[2*i]=0;
senddata[2*i+1]=1;
}
//调制解调算法
//算法1-- PSK
//算法2-- QPSK
//算法3-- FSK
//算法4-- MSK
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -