📄 main.pp
字号:
#line 2884 "d:/program files/ti/c5500/bios/include/csl_mcbsphal.h"
#line 3002 "d:/program files/ti/c5500/bios/include/csl_mcbsphal.h"
#line 3109 "d:/program files/ti/c5500/bios/include/csl_mcbsphal.h"
#line 3176 "d:/program files/ti/c5500/bios/include/csl_mcbsphal.h"
#line 3243 "d:/program files/ti/c5500/bios/include/csl_mcbsphal.h"
#line 3422 "d:/program files/ti/c5500/bios/include/csl_mcbsphal.h"
#line 3603 "d:/program files/ti/c5500/bios/include/csl_mcbsphal.h"
#line 3668 "d:/program files/ti/c5500/bios/include/csl_mcbsphal.h"
#line 39 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 67 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 129 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 172 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 189 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 233 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 245 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 273 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 306 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 318 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 342 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 366 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 373 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 382 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 413 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 424 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 445 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 470 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 477 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 486 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 518 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 529 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 550 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 575 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 582 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 616 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 626 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 638 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 667 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 677 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 699 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 729 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 739 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 766 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 1106 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 1126 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 1175 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 1194 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 1232 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 1248 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 1270 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
typedef struct {
Uint32 Private;
} MCBSP_Private,*MCBSP_Handle;
typedef struct {
Uint16 spcr1;
Uint16 spcr2;
Uint16 rcr1;
Uint16 rcr2;
Uint16 xcr1;
Uint16 xcr2;
Uint16 srgr1;
Uint16 srgr2;
Uint16 mcr1;
Uint16 mcr2;
Uint16 pcr;
Uint16 rcera;
Uint16 rcerb;
Uint16 rcerc;
Uint16 rcerd;
Uint16 rcere;
Uint16 rcerf;
Uint16 rcerg;
Uint16 rcerh;
Uint16 xcera;
Uint16 xcerb;
Uint16 xcerc;
Uint16 xcerd;
Uint16 xcere;
Uint16 xcerf;
Uint16 xcerg;
Uint16 xcerh;
} MCBSP_Config;
extern void MCBSP_init();
extern void MCBSP_reset(MCBSP_Handle _MCBSP);
extern MCBSP_Handle MCBSP_open(int DevNum, Uint32 Flags);
extern void MCBSP_close(MCBSP_Handle _MCBSP);
extern void MCBSP_config(MCBSP_Handle _MCBSP, MCBSP_Config *Config);
extern void MCBSP_configArgs(MCBSP_Handle _MCBSP, Uint16 spcr1, Uint16 spcr2,
Uint16 rcr1, Uint16 rcr2, Uint16 xcr1, Uint16 xcr2,
Uint16 srgr1, Uint16 srgr2,Uint16 mcr1, Uint16 mcr2,Uint16 pcr,
Uint16 rcera, Uint16 rcerb, Uint16 rcerc, Uint16 rcerd,
Uint16 rcere, Uint16 rcerf,Uint16 rcerg, Uint16 rcerh,
Uint16 xcera,Uint16 xcerb, Uint16 xcerc,Uint16 xcerd,
Uint16 xcere,Uint16 xcerf,Uint16 xcerg,Uint16 xcerh);
extern void MCBSP_getConfig(MCBSP_Handle _MCBSP, MCBSP_Config *Config);
extern CSLBool MCBSP_start(MCBSP_Handle hMcbsp, Uint16 StartMask, Uint32 SampleRateDelay);
extern Uint32 MCBSP_read32(MCBSP_Handle _MCBSP);
extern void MCBSP_write32(MCBSP_Handle _MCBSP,Uint32 Val);
extern Uint16 MCBSP_read16(MCBSP_Handle _MCBSP);
extern Uint16 MCBSP_read(MCBSP_Handle _MCBSP);
extern void MCBSP_write16(MCBSP_Handle _MCBSP,Uint16 Val);
extern void MCBSP_write(MCBSP_Handle _MCBSP,Uint16 Val);
#line 1393 "d:/program files/ti/c5500/bios/include/csl_mcbsp.h"
#line 14 "main.c"
MCBSP_Config ConfigLoopBack32= {
((Uint16)( ((((Uint16)((0x0000u)) & 0x0001u) << (0x0000u))) | ((((Uint16)(0) & 0x0001u) << (0x0003u))) | ((((Uint16)((0x0000u)) & 0x0003u) << (0x0004u))) | ((((Uint16)((0x0000u)) & 0x0001u) << (0x0006u))) | ((((Uint16)((0x0000u)) & 0x0001u) << (0x0007u))) | ((((Uint16)((0x0000u)) & 0x0003u) << (0x000Bu))) | ((((Uint16)((0x0000u)) & 0x0003u) << (0x000Du))) | ((((Uint16)((0x0001u)) & 0x0001u) << (0x000Fu))) ) ),
#line 32 "main.c"
((Uint16)( ((((Uint16)((0x0000u)) & 0x0001u) << (0x0000u))) | ((((Uint16)(0) & 0x0001u) << (0x0003u))) | ((((Uint16)((0x0000u)) & 0x0003u) << (0x0004u))) | ((((Uint16)((0x0000u)) & 0x0001u) << (0x0006u))) | ((((Uint16)((0x0000u)) & 0x0001u) << (0x0007u))) | ((((Uint16)((0x0000u)) & 0x0001u) << (0x0008u))) | ((((Uint16)((0x0000u)) & 0x0001u) << (0x0009u))) ) ),
#line 41 "main.c"
((Uint16)( ((((Uint16)((0x0005u)) & 0x0007u) << (0x0005u)))| ((((Uint16)(((Uint16)(0))) & 0x007Fu) << (0x0008u))) ) ),
((Uint16)( ((((Uint16)((0x0002u)) & 0x0003u) << (0x0000u))) | ((((Uint16)((0x0000u)) & 0x0001u) << (0x0002u))) | ((((Uint16)((0x0000u)) & 0x0003u) << (0x0003u))) | ((((Uint16)((0x0000u)) & 0x0007u) << (0x0005u))) | ((((Uint16)(((Uint16)(0))) & 0x007Fu) << (0x0008u))) | ((((Uint16)((0x0000u)) & 0x0001u) << (0x000Fu))) ) ),
#line 53 "main.c"
((Uint16)( ((((Uint16)((0x0005u)) & 0x0007u) << (0x0005u)))| ((((Uint16)(((Uint16)(0))) & 0x007Fu) << (0x0008u))) ) ),
((Uint16)( ((((Uint16)((0x0002u)) & 0x0003u) << (0x0000u)))| ((((Uint16)((0x0000u)) & 0x0001u) << (0x0002u)))| ((((Uint16)((0x0000u)) & 0x0003u) << (0x0003u)))| ((((Uint16)((0x0000u)) & 0x0007u) << (0x0005u)))| ((((Uint16)(((Uint16)(0))) & 0x007Fu) << (0x0008u)))| ((((Uint16)((0x0000u)) & 0x0001u) << (0x000Fu))) ) ),
#line 66 "main.c"
( (Uint16)( ((((Uint16)(((Uint16)(1))) & 0x00FFu) << (0x0000u)))| ((((Uint16)(((Uint16)(1))) & 0x00FFu) << (0x0008u))) )),
( (Uint16)( ((((Uint16)(((Uint16)(15))) & 0x0FFFu) << (0x0000u)))| ((((Uint16)((0x0000u)) & 0x0001u) << (0x000Cu)))| ((((Uint16)((0x0001u)) & 0x0001u) << (0x000Du)))| ((((Uint16)((0x0000u)) & 0x0001u) << (0x000Eu)))| ((((Uint16)((0x0000u)) & 0x0001u) << (0x000Fu))) )),
#line 77 "main.c"
(0x0000u),
(0x0000u),
((Uint16)( ((((Uint16)((0x0000u)) & 0x0001u) << (0x0000u))) | ((((Uint16)((0x0000u)) & 0x0001u) << (0x0001u))) | ((((Uint16)((0x0000u)) & 0x0001u) << (0x0002u))) | ((((Uint16)((0x0000u)) & 0x0001u) << (0x0003u))) | ((((Uint16)((0x0000u)) & 0x0001u) << (0x0008u))) | ((((Uint16)((0x0001u)) & 0x0001u) << (0x0009u))) | ((((Uint16)(0) & 0x0001u) << (0x0005u))) | ((((Uint16)((0x0000u)) & 0x0001u) << (0x0007u))) | ((((Uint16)((0x0000u)) & 0x0001u) << (0x000Au))) | ((((Uint16)((0x0001u)) & 0x0001u) << (0x000Bu))) | ((((Uint16)((0x0000u)) & 0x0001u) << (0x000Cu))) | ((((Uint16)((0x0000u)) & 0x0001u) << (0x000Du))) | ((((Uint16)((0x0000u)) & 0x0001u) << (0x000Eu))) ) ),
#line 94 "main.c"
(0x0000u),
(0x0000u),
(0x0000u),
(0x0000u),
(0x0000u),
(0x0000u),
(0x0000u),
(0x0000u),
(0x0000u),
(0x0000u),
(0x0000u),
(0x0000u),
(0x0000u),
(0x0000u),
(0x0000u),
(0x0000u)
};
MCBSP_Handle mhMcbsp;
Uint32 xmt[10], rcv[10];
volatile Uint16 XfrCnt = 0;
Uint16 err = 0;
Uint16 old_intm;
Uint16 rcvEventId, xmtEventId;
extern void VECSTART(void);
interrupt void writeIsr(void);
interrupt void readIsr(void);
void taskFxn(void);
void main(void)
{
Uint16 i;
CSL_init();
IRQ_setVecs((Uint32)(&VECSTART));
for (i = 0; i <= 10 - 1; i++) {
xmt[i] = ((Uint32)i << 17) + i;
rcv[i] = 0;
}
taskFxn();
}
void taskFxn(void)
{
Uint16 i;
old_intm = IRQ_globalDisable();
mhMcbsp = MCBSP_open((0), (0x0001));
rcvEventId = ( (((MCBSP_PrivateObj*)mhMcbsp)->RcvEvent));
xmtEventId = ( (((MCBSP_PrivateObj*)mhMcbsp)->XmtEvent));
IRQ_clear(rcvEventId);
IRQ_clear(xmtEventId);
IRQ_plug(rcvEventId, &readIsr);
IRQ_plug(xmtEventId, &writeIsr);
MCBSP_config(mhMcbsp, &ConfigLoopBack32);
IRQ_enable(rcvEventId);
IRQ_enable(xmtEventId);
MCBSP_start(mhMcbsp,
(4u) | (8u),
0x300
);
MCBSP_start(mhMcbsp,
(1u) | (2u),
0
);
while(!(Uint16)( ((*(volatile ioport Uint16*)(((((MCBSP_PrivateObj*)(mhMcbsp))->Port * 0x0400u) + (0x2804u))))&((((Uint16)(0x0001u) & 0x0001u) << (0x0001u))))>>(0x0001u) )){
;
}
MCBSP_write32(mhMcbsp,xmt[XfrCnt]);
IRQ_globalEnable();
while (XfrCnt < 10) {
;
}
for(i = 0; i <= 10 - 1; i++){
if (rcv[i] != xmt[i]){
++err;
break;
}
}
printf ("%s\n",err?"TEST FAILED" : "TEST PASSED");
IRQ_globalRestore(old_intm);
MCBSP_close(mhMcbsp);
}
interrupt void writeIsr(void)
{
IRQ_disable(xmtEventId);
MCBSP_write32(mhMcbsp,xmt[XfrCnt]);
}
interrupt void readIsr(void)
{
rcv[XfrCnt] = MCBSP_read32(mhMcbsp);
++XfrCnt;
if (XfrCnt == 10) {
IRQ_disable(rcvEventId);
IRQ_disable(xmtEventId);
MCBSP_reset(mhMcbsp);
}
else {
IRQ_enable(xmtEventId);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -