嵌入式开发者社区

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

作者: silent123    时间: 2015-4-13 23:32
标题: mcsdk dsp端程序怎么打印调试信息
Int main(Int argc, Char* argv[])
8 ?# C/ Y2 b: O5 l. p2 @{0 A0 J5 j0 F( O1 e! j. `
    EDMA3_DRV_Result edmaResult = EDMA3_DRV_SOK;
2 u8 @; Z# d* p$ R7 S         
& h5 ?% q0 Y4 Z9 Q    Error_Block     eb;
0 \) j9 j8 z6 j5 O7 C    Task_Params     taskParams;: a4 l& ]; ^! i" s2 a
8 n4 ^7 N/ Q8 O
    Log_print0(Diags_ENTRY, "--> main:");
1 e' z1 ?. O5 M5 X
: J) V9 w# ^) q    /* must initialize the error block before using it */3 A! P7 R' ~% x% r* w
    Error_init(&eb);
  j' H2 t+ O, {" t8 p
# a( E9 e2 P1 Y% Z9 \) v& B1 R    /* create main thread (interrupts not enabled in main on BIOS) */
) c; v" v3 c5 y9 ~  ?2 T+ x' h    Task_Params_init(&taskParams);
7 W: n3 E# _$ K    taskParams.instance->name = "smain";0 P2 C5 b# m# H6 C# q4 r- R3 T
    taskParams.arg0 = (UArg)argc;
( t8 h* W$ \" i" W6 r, o    taskParams.arg1 = (UArg)argv;8 y2 W) o+ o; {0 z6 F
    taskParams.stackSize = 0x1000;
% r! t  K' ~0 u    Task_create(smain, &taskParams, &eb);
) W- y, w) R2 J& d$ ^! P
* [1 f& X- r( }: F; `    if (Error_check(&eb)) {
* q4 n3 h9 X# v& J3 ]        System_abort("main: failed to create application startup thread");& E# y9 ?/ o% F
    }" j8 r- B+ W; w# L8 H3 _; ~, s
       
1 @1 l6 ^( L7 i7 o) F1 k    /* start scheduler, this never returns */
$ z/ x5 j2 T' j- C4 U4 Z    BIOS_start();" r# N( Y/ ?( M7 ^
  Y! H+ z+ ^2 s% w9 a; ~
    /* should never get here */
# I3 K4 o' D1 P4 s! y. b0 z- n4 B; B7 M    Log_print0(Diags_EXIT, "<-- main:");
; Y# E, f* }2 _7 x  o    return (0);
. n$ a% V+ y  G& D' l: d}; E: v& s% t/ m, L/ f/ H9 O
这是创龙helloword的main函数,其中的 Log_print0(Diags_ENTRY, "--> main:")信息没有通过串口打印出来,请问大家该dsp上运行的程序要怎么打印调试信息?我用的是软件套件是mcsdk,硬件是omapl138。请大家帮忙啊,谢谢。
- W! p" e( e5 G
$ w% R; B1 F& y$ k- U0 t. c
作者: tenny    时间: 2015-4-14 15:44
可以参考创龙的双核例程里面的 DSP 子程序 log 模块,是通过串口1查看 dsp 程序的输出。" E: G+ |8 M% g' h' ^1 h
你贴出来的程序里面Log_print0是要接 jtag,在 ccs 下面才能看到调试信息的,同时BIOS_start();是一个死循环,它之后的代码都不会被执行的
作者: silent123    时间: 2015-4-14 23:20
tenny 发表于 2015-4-14 15:44: V+ @$ |, ^$ i: D
可以参考创龙的双核例程里面的 DSP 子程序 log 模块,是通过串口1查看 dsp 程序的输出。
( s0 p9 Z( F; v' K+ |+ o你贴出来的程序里 ...
4 m! u# m. g' c& W* z! ^; a
就是说要接两个串口?我是用的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# f5 f% r3 b' C' r
你改下 dsp 端 log 模块的初始化函数,改成是串口2输出就能做到了,但是两个核同时往同个串口写数据,你看 ...
- o, w+ c" e$ D$ Z% A, R0 R, \  s0 V
非常感谢您的回答,学习了!谢谢..




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