嵌入式开发者社区

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

作者: silent123    时间: 2015-4-13 23:32
标题: mcsdk dsp端程序怎么打印调试信息
Int main(Int argc, Char* argv[])
. L# h  L$ z  d{
5 N4 T# J. w' J- d) Z6 h/ E- n" R    EDMA3_DRV_Result edmaResult = EDMA3_DRV_SOK;; X4 ]% w5 U* T: O* d4 M
         & v0 t, J1 m+ ]" |' P
    Error_Block     eb;
" \2 g3 b+ ~$ N    Task_Params     taskParams;, l7 m# @' ^% ?2 m) s$ `

1 ]$ R, N$ G' B. R9 p1 Y( }* v    Log_print0(Diags_ENTRY, "--> main:");
' M5 b: \( M6 a+ s  w- z) C( f! ~1 y) Z, {7 M' ]0 b
    /* must initialize the error block before using it */. b+ A! G' F1 ^& j" M8 P, t
    Error_init(&eb);5 g5 F+ k: a4 A7 h) j0 @

; S# x: U/ j8 x5 y    /* create main thread (interrupts not enabled in main on BIOS) */9 t: k  g8 L9 F2 ~  q
    Task_Params_init(&taskParams);
2 z+ b$ K( J# D+ T  N    taskParams.instance->name = "smain";* u1 d) I$ k6 ?" h1 V
    taskParams.arg0 = (UArg)argc;; T6 d* m. b  x2 a) W& @
    taskParams.arg1 = (UArg)argv;
( P/ B- A: ?' l0 L    taskParams.stackSize = 0x1000;
( Y0 p4 y! c& V; u. {    Task_create(smain, &taskParams, &eb);6 Y* k/ p1 b9 G% n4 H5 Q

. O& C, k) `' T    if (Error_check(&eb)) {
7 @5 h* B6 C% a$ p1 {1 ^8 @        System_abort("main: failed to create application startup thread");8 o1 q9 a8 _% b# C
    }
6 P$ v9 c- l! c+ p9 D! {       
! i3 j5 r, ?+ p7 F" T    /* start scheduler, this never returns */
5 y, z  x( E. D2 N4 w    BIOS_start();: y/ j$ R9 A, H* Z" S
: e7 ]. n2 ]) j$ b( K
    /* should never get here */' I- V. t4 O- {% g' c7 h1 g
    Log_print0(Diags_EXIT, "<-- main:");6 f( |* J* c1 m
    return (0);
# P, T3 N. E2 @8 w}
8 N5 K* g. }1 X5 @& f9 e& Q- B3 s3 ?这是创龙helloword的main函数,其中的 Log_print0(Diags_ENTRY, "--> main:")信息没有通过串口打印出来,请问大家该dsp上运行的程序要怎么打印调试信息?我用的是软件套件是mcsdk,硬件是omapl138。请大家帮忙啊,谢谢。( W7 A5 Z4 @# I  L* H6 ^. O& o

1 f. |( X- E; a) D7 R/ k+ [6 T# @
作者: tenny    时间: 2015-4-14 15:44
可以参考创龙的双核例程里面的 DSP 子程序 log 模块,是通过串口1查看 dsp 程序的输出。
' p% e" d! h1 `: B+ m3 p+ Q1 g1 H& g你贴出来的程序里面Log_print0是要接 jtag,在 ccs 下面才能看到调试信息的,同时BIOS_start();是一个死循环,它之后的代码都不会被执行的
作者: silent123    时间: 2015-4-14 23:20
tenny 发表于 2015-4-14 15:44. g% f' f6 _8 O, y, o/ H
可以参考创龙的双核例程里面的 DSP 子程序 log 模块,是通过串口1查看 dsp 程序的输出。
6 p6 K& f/ d$ f# J7 T$ ?! j你贴出来的程序里 ...
* ?. P& T/ t* _
就是说要接两个串口?我是用的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
/ c6 z; w! G5 F0 u. m5 g  }0 d( J你改下 dsp 端 log 模块的初始化函数,改成是串口2输出就能做到了,但是两个核同时往同个串口写数据,你看 ...
1 z: ?, d- N, T6 W
非常感谢您的回答,学习了!谢谢..




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