本人使用的是CCSv5,芯片是TMS320C6670,我在调试定时器和EDMA传输时,总出现这样一个问题,程序执行到请求DMA通道时,会不能继续执行。程序的大致流程为1.启动定时器计时,2.启动DMA传输,3.检测定时,当定时到时关闭定时器。定时器的中断是基于CSL的,EMDA是在BIOS上的。请求通道的底层函数是EDMA3_DRV_requestChannel(hEdma, &chId, &tcc,(EDMA3_RM_EventQueue)0,&callback1, NULL) 。就算是将定时器改为查询方式,不要中断,还是会出现以下错误信息:
A1=0x0
A2=0x0 A3=0x0
A4=0x834620 A5=0x42a
A6=0x836670 A7=0x0
A8=0x8212c0 A9=0x0
A10=0x0 A11=0x0
A12=0x0 A13=0x0
A14=0x0 A15=0x0
A16=0x0 A17=0x0
A18=0x836470 A19=0x0
A20=0x6c A21=0x4c
A22=0x100008 A23=0x4008000
A24=0x23108031 A25=0x4c
A26=0x841224 A27=0x841224
A28=0x82ed58 A29=0x1
A30=0x0 A31=0x0
B0=0x0 B1=0x834620
B2=0x836737 B3=0x801098
B4=0x8346a0 B5=0x1
B6=0x0 B7=0x841a00
B8=0x0 B9=0x3a
B10=0x0 B11=0x0
B12=0x0 B13=0x0
B14=0x840cf8 B15=0x836578
B16=0x30 B17=0x83669c
B18=0xf00 B19=0x40
B20=0x0 B21=0x100
B22=0x363088bf B23=0x1
B24=0x8201c15 B25=0x4
B26=0x82ed6c B27=0x620
B28=0x2e4 B29=0x14c
B30=0x835660 B31=0xffffffff
NTSR=0x1000f
ITSR=0xf
IRP=0x803258
SSR=0x0
AMR=0x0
RILC=0x0
ILC=0x0
Exception at 0x800138
EFR=0x2 NRP=0x800138
Internal exception: IERR=0x8
Opcode exception
ti.sysbios.family.c64p.Exception: line 248: E_exceptionMin: pc = 0x00800138, sp = 0x00836578.
To see more exception detail, use ROV or set 'ti.sysbios.family.c64p.Exception.enablePrint = true;'
xdc.runtime.Error.raise: terminating execution
实在不知道怎么改了,求大神帮忙啊!!!!