嵌入式开发者社区

标题: mcsdk dsp端程序怎么打印调试信息 [打印本页]

作者: silent123    时间: 2015-4-13 23:32
标题: mcsdk dsp端程序怎么打印调试信息
Int main(Int argc, Char* argv[])7 \# b7 V5 f! @/ r, h/ c3 l$ z) l
{1 J$ H" Y+ w9 i! [
    EDMA3_DRV_Result edmaResult = EDMA3_DRV_SOK;
) z" r) d! y& ~         & E2 f$ m8 Q$ Y2 A& M6 m: |
    Error_Block     eb;
" H0 n2 f, ?: D5 s1 u    Task_Params     taskParams;/ Q$ R. s3 X2 ^' \( E0 N0 L# h

+ V6 e( l- u, c# @/ D2 G    Log_print0(Diags_ENTRY, "--> main:");
! _. F  m9 L2 |' v7 y- F9 b' y( S
    /* must initialize the error block before using it */3 O' J  @1 `5 @9 ?" j1 r) y- f& J2 U
    Error_init(&eb);
7 }( _. O$ C2 D2 g0 _; [( g* `9 X. s' j2 c/ B) T4 \* n
    /* create main thread (interrupts not enabled in main on BIOS) */
1 ?# I; r" }7 r% P" i$ m6 {    Task_Params_init(&taskParams);
6 U: {% `% q. z8 l    taskParams.instance->name = "smain";' T( V9 z5 s& N
    taskParams.arg0 = (UArg)argc;
. T4 U, A9 t) X8 N$ w; P; F6 |+ V1 {    taskParams.arg1 = (UArg)argv;1 m. \5 F+ S' s* U; m
    taskParams.stackSize = 0x1000;
. J9 Z5 g' D. s; P8 n    Task_create(smain, &taskParams, &eb);% x  y* P  P5 l4 A% Q
. \0 S" [' t8 q% E! _
    if (Error_check(&eb)) {
8 S5 m( h1 r, J        System_abort("main: failed to create application startup thread");" N; {# d4 _+ Y1 D* h: r
    }
) K/ Q- d, s2 G: Y) Q( K! W, D        4 V& x. u" J: e0 y5 U5 @9 ?
    /* start scheduler, this never returns */, P4 d+ o$ k1 l. D7 e
    BIOS_start();, I* |' y8 u& R# q1 i  X8 p

0 v! h. R4 e: K  P    /* should never get here */
6 s' r& R  T) U6 p( B    Log_print0(Diags_EXIT, "<-- main:");
" u8 X. h5 Y3 H  b0 r6 w! P    return (0);
* \% G3 Y  v3 W: `}
" a* Y! ~7 V  K# Y( l这是创龙helloword的main函数,其中的 Log_print0(Diags_ENTRY, "--> main:")信息没有通过串口打印出来,请问大家该dsp上运行的程序要怎么打印调试信息?我用的是软件套件是mcsdk,硬件是omapl138。请大家帮忙啊,谢谢。5 l1 c; y( l1 ^+ g3 g# B# j
" R4 l+ M" B3 z5 P

作者: tenny    时间: 2015-4-14 15:44
可以参考创龙的双核例程里面的 DSP 子程序 log 模块,是通过串口1查看 dsp 程序的输出。
1 d1 b+ k, Y; f3 I你贴出来的程序里面Log_print0是要接 jtag,在 ccs 下面才能看到调试信息的,同时BIOS_start();是一个死循环,它之后的代码都不会被执行的
作者: silent123    时间: 2015-4-14 23:20
tenny 发表于 2015-4-14 15:44- n7 A4 b# \& B- H" _
可以参考创龙的双核例程里面的 DSP 子程序 log 模块,是通过串口1查看 dsp 程序的输出。
, H  L( q! t, s% e+ Q  \" E& Q' a& _; H你贴出来的程序里 ...
- ]: t# c2 Q0 J' W
就是说要接两个串口?我是用的omapl138,在arm下面使用slaveloader加载server.xe674到dsp核运行的,有办法和arm下执行的程序打印到同一个串口吗?这样比较方便啊。谢谢!
作者: tenny    时间: 2015-4-29 10:51
你改下 dsp 端 log 模块的初始化函数,改成是串口2输出就能做到了,但是两个核同时往同个串口写数据,你看到的log 输出会是混乱的
作者: silent123    时间: 2015-4-29 23:27
tenny 发表于 2015-4-29 10:51; m$ n/ E5 _5 D8 \) u; ^
你改下 dsp 端 log 模块的初始化函数,改成是串口2输出就能做到了,但是两个核同时往同个串口写数据,你看 ...
' [1 W4 L- M9 s
非常感谢您的回答,学习了!谢谢..




欢迎光临 嵌入式开发者社区 (https://www.51ele.net/) Powered by Discuz! X3.4