嵌入式开发者社区

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

作者: silent123    时间: 2015-4-13 23:32
标题: mcsdk dsp端程序怎么打印调试信息
Int main(Int argc, Char* argv[])
9 ~* ]3 D: H' x: o+ _/ C7 K) X* V! D{
4 Q3 Y1 G3 W0 r% g5 w5 U" X/ f' |, Y    EDMA3_DRV_Result edmaResult = EDMA3_DRV_SOK;
, }4 L" v7 ]+ R         
" t% E3 \7 N& S4 {/ f& Q1 J    Error_Block     eb;
; v2 g' P' d/ k    Task_Params     taskParams;
$ W9 T0 i1 a$ a# F4 M( u% S+ A' _. @  g* U* M) K1 q
    Log_print0(Diags_ENTRY, "--> main:");  r. S* H, i; Z$ |

3 l3 R. b, \( r5 x    /* must initialize the error block before using it */, p( l7 c5 `0 s+ \: b" W( Y
    Error_init(&eb);& @; s/ i1 D: g0 F

2 `3 J1 t& R+ R' D# f, ?# L    /* create main thread (interrupts not enabled in main on BIOS) */
( V0 o4 C  g( t2 I. b- L    Task_Params_init(&taskParams);1 _/ J# \0 f# ~; F
    taskParams.instance->name = "smain";& G* i" _4 h! I
    taskParams.arg0 = (UArg)argc;
( B+ @0 V. T- z/ _% _& W; F    taskParams.arg1 = (UArg)argv;+ A2 ?9 f, ?8 H8 ^
    taskParams.stackSize = 0x1000;& t+ ]( p& I4 R+ R
    Task_create(smain, &taskParams, &eb);
% y+ m1 ~$ ~- e7 D0 l* f
4 l+ x! ]" G5 P  z5 @, w    if (Error_check(&eb)) {$ @* H/ }7 o, |: ]( }" p
        System_abort("main: failed to create application startup thread");5 k* h+ ?1 C* ~; V6 y
    }% Q5 K) U+ }- s1 @& b- \1 m) y
        ) X4 X% D, r% U. O7 d
    /* start scheduler, this never returns */
9 i8 Y8 l, w0 j" K) F9 I7 J; s2 W    BIOS_start();
! n; I5 O. d  @+ Z4 f9 b, l  ]2 }
9 b; c& {0 q" Z8 j. r' `& D& `    /* should never get here */0 I3 ^+ W4 c* Z( j9 I4 A6 t
    Log_print0(Diags_EXIT, "<-- main:");
5 r0 W" Y% ^8 m( s" E# b    return (0);
8 p: [) \. ?$ O9 u) {}
- o( ?) R9 Z+ P& I8 h! \这是创龙helloword的main函数,其中的 Log_print0(Diags_ENTRY, "--> main:")信息没有通过串口打印出来,请问大家该dsp上运行的程序要怎么打印调试信息?我用的是软件套件是mcsdk,硬件是omapl138。请大家帮忙啊,谢谢。) O$ I# q; R# a9 R

" J! \! s$ m+ p
作者: tenny    时间: 2015-4-14 15:44
可以参考创龙的双核例程里面的 DSP 子程序 log 模块,是通过串口1查看 dsp 程序的输出。: c  x9 k0 H9 P7 A, Z: L, v/ t
你贴出来的程序里面Log_print0是要接 jtag,在 ccs 下面才能看到调试信息的,同时BIOS_start();是一个死循环,它之后的代码都不会被执行的
作者: silent123    时间: 2015-4-14 23:20
tenny 发表于 2015-4-14 15:44
, B4 Y. _9 E9 O9 T可以参考创龙的双核例程里面的 DSP 子程序 log 模块,是通过串口1查看 dsp 程序的输出。
- f& P) M& L! d% Z2 v你贴出来的程序里 ...

& t) Q: E5 d: S, j5 B9 v! Y就是说要接两个串口?我是用的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:519 J; B. \% z% {+ c1 T7 E6 ^/ x
你改下 dsp 端 log 模块的初始化函数,改成是串口2输出就能做到了,但是两个核同时往同个串口写数据,你看 ...

& y) j  r0 v* v& ^$ p- i/ t/ W非常感谢您的回答,学习了!谢谢..




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