如何利用调试打印?

6个帖子/ 0新
最后一篇
vesan.
离线
最后一次露面:5年11个月前
格鲁鲁 掌握
加入:2014年6月26日08:49
如何利用调试打印?

你好,

我希望能够从我的项目打印到串口监听。怎么做?我想有作为外围设备使用的例子类似的功能,但它说(不要为你的设计中使用)。

最好的问候,VESA

vesan.
离线
最后一次露面:5年11个月前
格鲁鲁 掌握
加入:2014年6月26日08:49
你好,

你好,

我仍然需要的答案。有何意见?

BR,VESA

vesan.
离线
最后一次露面:5年11个月前
格鲁鲁 掌握
加入:2014年6月26日08:49
我尝试添加uart.c我

我尝试添加uart.c到我的项目,包括项目包括路径的驱动程序路径。我不能编译的项目,然后,我也得到了许多错误:
.. \ .. \ .. \ SRC \ PLF \ refip的\ src \驱动程序\ UART \ uart.c(290):错误:#101: “uint32_t的” 已在当前范围内声明
的extern常量uint32_t的jump_table_struct [];
.. \ .. \ .. \ SRC \ PLF \ refip \ SRC \驱动\ UART \ uart.c(290):错误:#65:预期 “;”
的extern常量uint32_t的jump_table_struct [];
.. \ .. \ .. \ SRC \ PLF \ refip \ SRC \驱动\ UART \ uart.c(296):错误:#18:预期 “)”
PtrFunc =(创建my_function)(jump_table_struct [uart_init_pos]);
.. \ .. \ .. \ SRC \ PLF \ refip \ SRC \驱动\ UART \ uart.c(346):错误:#18:预期 “)”
PtrFunc =(创建my_function)(jump_table_struct [uart_flow_on_pos]);
......

je_dialog.
离线
最后一次露面:3个月2周前
职员
加入:2013-12-05 14:02
对不起,延迟,我会得到

对不起,延迟,我会找人来看看这个。BR JE_DIALOG.

RVA.
离线
最后一次露面:2个月2个星期前
职员
加入:2014-02-07 14:10
嗨VESA,

嗨VESA,
你看我们的串行端口服务的参考设计?这是一个DA14580串行端口服务参考应用,模拟串行电缆通信。这可能是一个很好的适合你的串行监控项目。
此致,
RvA的(对话)

vesan.
离线
最后一次露面:5年11个月前
格鲁鲁 掌握
加入:2014年6月26日08:49
谢谢RvA的,

谢谢RvA的,

我设法最终解决这个问题。出于某种原因,印刷尚不工作与我自己的项目,这是template_fh的副本,我只是附带的电池服务。印刷可与template_fh:

  1. 我定义CFG_PRINTFda14580_config.h.在线路30〜。这个定义将GPIO保留并配置在GPIOperiph_setup.c
    periph_setup.c

    #ifdef cfg_printf_uart2.
    RESERVE_GPIO(UART2_TX,GPIO_PORT_0,GPIO_PIN_4,PID_UART2_TX);
    RESERVE_GPIO(UART2_RX,GPIO_PORT_0,GPIO_PIN_5,PID_UART2_RX);
    #万一
    //
    #ifdef cfg_printf_uart2.
    GPIO_ConfigurePin(GPIO_PORT_0,GPIO_PIN_4,OUTPUT PID_UART2_TX,FALSE);
    GPIO_ConfigurePin(GPIO_PORT_0,GPIO_PIN_5,INPUT,PID_UART2_RX,FALSE);
    #万一
  2. periph_init()功能:一是必须启用UART时钟,也UART初始化可以执行:
    periph_setup.c

    #ifdef cfg_printf_uart2.
    SetBits16(CLK_PER_REG,UART2_ENABLE,1);
    uart2_init(UART_BAUDRATE_115K2,3);
    #万一
  3. 这时我犯了宏定义app_template_proj.c根据UM-B-004:
    app_template_proj.c

    的#define DBG_PRINT(STR)\
    uart2_flow_on();\
    uart2_flow_off();\
    uart2_finish_transfers();\
    uart2_write((uint8_t *)海峡,的sizeof(STR),NULL)
  4. 我不知道的流量控制和FTDI但它的工作。

编辑:我发现我不小心使用uart_finish_transfers()而不是uart2_finish_tranfers()中的上方。现在,这是固定的,一切似乎工作,我上述的方法。出于某种原因,它甚至uart.c不包括在我的项目(其中uart_finish_tranfers()函数中实现)两种情况下进行编译。

主题锁定