嵌入式开发者社区

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

作者: silent123    时间: 2015-4-13 23:32
标题: mcsdk dsp端程序怎么打印调试信息
Int main(Int argc, Char* argv[])  h6 _( g7 d7 a$ w* Z
{
4 [9 }& Z9 K7 D$ n6 |2 Z    EDMA3_DRV_Result edmaResult = EDMA3_DRV_SOK;$ g0 ]+ I' r, `- u& A" j4 `9 d; w; }
         
5 [4 H7 B  L. T$ t# J3 |    Error_Block     eb;+ W* e8 z9 a4 S5 c( ^9 k" |
    Task_Params     taskParams;
) b+ v2 m& }* h5 |. H8 H/ {8 R
8 b) g" J  j! Y/ J0 H3 l    Log_print0(Diags_ENTRY, "--> main:");. a2 m0 M) p: D9 l
; y8 c6 c; Y' c" @) n0 H) ^6 T. u
    /* must initialize the error block before using it */
% q& u; q6 p7 H6 I    Error_init(&eb);
/ k9 v# u1 W6 f  X" A! n$ T3 i# K6 U/ m% y+ M! h# n; S
    /* create main thread (interrupts not enabled in main on BIOS) */: L- L, f( ]+ u; j1 F
    Task_Params_init(&taskParams);
# V0 U* t6 A% E    taskParams.instance->name = "smain";
0 n7 x  G: D9 B, L; W! x* I    taskParams.arg0 = (UArg)argc;
' `. W: K% n1 g    taskParams.arg1 = (UArg)argv;; O/ o0 F+ t1 z; Q; I2 n; b4 ?% D
    taskParams.stackSize = 0x1000;/ ]! ]  ~4 B4 b" L
    Task_create(smain, &taskParams, &eb);
. m# g3 ]- |/ G! {( L9 q  K
' _" v+ }/ H* u# f) ]    if (Error_check(&eb)) {
5 ~# b! @" I+ M! l; s        System_abort("main: failed to create application startup thread");
2 U) @7 B! g! n' ~* O8 r    }
( Z# j; O+ r/ v. X       
( A, o, y2 S1 N* F& }    /* start scheduler, this never returns */, T8 x2 H% i8 x
    BIOS_start();2 W4 K3 R2 j6 e& U2 @' d
- I: f# ?/ [8 A. h# D
    /* should never get here */
( `8 o* U' D4 Y& j  M+ b* b    Log_print0(Diags_EXIT, "<-- main:");
4 t  F) ~6 u' I8 [1 ^5 |    return (0);* r5 J5 v( W; z# n: ?0 }
}
9 G+ _$ y$ ^+ [3 }  s这是创龙helloword的main函数,其中的 Log_print0(Diags_ENTRY, "--> main:")信息没有通过串口打印出来,请问大家该dsp上运行的程序要怎么打印调试信息?我用的是软件套件是mcsdk,硬件是omapl138。请大家帮忙啊,谢谢。% {; C1 b1 ]& Y9 b1 A) D5 u4 x

% V9 z4 \8 p& }# i
作者: tenny    时间: 2015-4-14 15:44
可以参考创龙的双核例程里面的 DSP 子程序 log 模块,是通过串口1查看 dsp 程序的输出。
4 {1 y2 v' e* G" m' |( w+ p8 F你贴出来的程序里面Log_print0是要接 jtag,在 ccs 下面才能看到调试信息的,同时BIOS_start();是一个死循环,它之后的代码都不会被执行的
作者: silent123    时间: 2015-4-14 23:20
tenny 发表于 2015-4-14 15:44  m1 v7 r( [4 J; j
可以参考创龙的双核例程里面的 DSP 子程序 log 模块,是通过串口1查看 dsp 程序的输出。
% ~: K$ G( j& m* m9 q你贴出来的程序里 ...
( b2 {" e; I. s  g5 w& {* |& d) ^" ?
就是说要接两个串口?我是用的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
) {/ E8 N! \1 \& E: K' p你改下 dsp 端 log 模块的初始化函数,改成是串口2输出就能做到了,但是两个核同时往同个串口写数据,你看 ...

" \' M2 M$ h3 D8 y非常感谢您的回答,学习了!谢谢..




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