首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

[求助]打开UART file文件失败?

[求助]打开UART file文件失败?

通过文件指针访问串口,程序如下:

#include<stdio.h>
#include<string.h>

int main()
{
    char* msg = "Detected the character 't'.\n";
    FILE* fp;
    char prompt = 0;
    fp = fopen("/dev/uart_0","r+");
    if(fp)
    {
        while(prompt != 'v')
        {
            prompt = getc(fp);
            if(prompt == 't')
            {
                fwrite(msg,strlen(msg),1,fp);
            }
        }
        fprintf(fp,"Closing the UART file.\n");
        fclose(fp);
    }
    return 0;
}

功能是发送字符“t”,串口返回"Detected the character 't'。发送字符”v“,则关闭串口。

在用串口调试程序的时候,提示 open file failed。

我检查了了一下,system.h中uart的名字的确是uart_0,时钟也应该是系统时钟没错。

论坛里有很多关于uart的帖子,我都看了看,但是似乎都没有最后的解决方法,所以我还发帖问问。

也有说把uart设为stdout,stdin,这样可以解决问题么?如何设呢?

现在我将stdout,stdin设为uart_0,编译正常通过,可是出现:can't open uart : permission denied.不知道是什么原因导致不能打开串口呢?
返回列表