您的位置: OpenADSP社区论坛 -> Blackfin专区 -> 新手上路 -> BF516的串口输出问题
本帖共有26个阅读者
发表帖子 发表投票 回复主题
BF516的串口输出问题
尊贵身份标志
OpenADSP(管理员)
OpenADSP
头衔:社区公民
帮派:无帮无派
帖数:5195
金钱:34806
积分:6378
注册时间:2011/6/7
楼主信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
BF516的串口输出问题
问:我在VisualDSP++中开发BF516的项目,项目很简单,就是输出一些调试字符串。
目前这些调试字符串都输出到了VisualDSP++ 的Console窗口中.这是为什么呢?
我想在串口1中输出这些调试字符串。
刚接触ADI有DSP,还希望能得到你的帮助!
相关代码如下:
// 重定向 printf 输出到 UART
int _write(int fd, const char *buf, int nbytes) {
    int i;
    for (i = 0; i < nbytes; i++) {
        while (!(*pUART0_LSR & 0x20)); // 等待发送缓冲区空
        *pUART0_THR = buf[i];          // 发送字符
    }
    return nbytes;
}


int main( void )
{
    /* init PLL first time */
    Init_PLL();
    GPIO_DIR(H,0x00,0x80);

    init_uart();
    printf("Hello, BF516!\n");  // 输出将通过 UART 发送
//    printf("Hello World!\n");
//    DEBUG_STATEMENT("Hello, BF516!\n");
    /* Begin adding your custom code here */
    while(true)
    {
        count++;
        GPIO_SET(H,0x80);
        DELAY_CYCLES(4);
        GPIO_CLR(H,0x80);
        DELAY_CYCLES(4);
        printf("Hello World!\n");
    }
}

我是OP...
等级:管理员 参考IP地址:*.*.*.*
2025/4/7 16:45:26
尊贵身份标志
OpenADSP(管理员)
OpenADSP
头衔:社区公民
帮派:无帮无派
帖数:5195
金钱:34806
积分:6378
注册时间:2011/6/7
1信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
答:stdio.h里自带printf函数,默认输出到工程下面的窗口里,如果想串口输出,需要自己写一个prinrf的函数,从串口打印。也可以改个函数名,避免和stdio.h函数名冲突

我是OP...
等级:管理员 参考IP地址:*.*.*.*
2025/4/7 16:45:40
Powered by OpenADSP Copyright © 2010 www.Openadsp.com. All rights reserved.159113 Call, 1 Queries, Processed in 0.015625 second(s),