ID do artigo: 000079285 Tipo de conteúdo: Documentação e informações do produto Última revisão: 10/03/2015

Como posso definir o driver de HAL UART para operar no modo não bloqueado com o Nios II processador?

Ambiente

  • Processador Intel® Nios® II
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT
    Descrição

    O HAL fornece dois métodos para definir o driver HAL UART para operar no modo não bloqueado.

    Estilo UNIX

    Se usar chamadas de função de IO no estilo UNIX, você pode usar a função open() para definir um UART como não bloqueando. Para fazer isso, abra um descritor de arquivo em seu UART da seguinte maneira:

    fd = open("/dev/",O_NONBLOCK | O_RDWR);

    Este descritor de arquivo define o UART para operar no modo de leitura/gravação e não bloqueando. Em seguida, você pode usar o descritor de arquivo com as funções read() e write().

    ANSI C

    Ao usar chamadas de função de IO ANSI C, você pode definir um driver HAL UART para operar no modo não bloqueado usando fcntl(). Para fazer isso, você precisa fazer referência a fcntl.h e unistd.h em seu código fonte. Em seguida, você pode usar fcntl() para definir o UART no modo de não-bloqueio. Abaixo, um exemplo que define o canal de IO STDIN para operar no modo não bloqueador:

    fcntl(STDIN_FILENO, F_SETFL, O_NONBLOCK);

     

      Para obter mais informações, você pode consultar a referência HAL API Nios manual do desenvolvedor de software Nios® II. Este documento pode ser encontrado nos seguintes locais:

      Nios II instalação - /documents/n2sw_nii5v2.pdf

      Altera web site - http://www.altera.com/literature/lit-nio2.jsp®

      Produtos relacionados

      Este artigo aplica-se a 1 produtos

      Dispositivos programáveis Intel®

      O conteúdo desta página é uma combinação de tradução humana e por computador do conteúdo original em inglês. Este conteúdo é fornecido para sua conveniência e apenas para informação geral, e não deve ser considerado completo ou exato. Se houver alguma contradição entre a versão em inglês desta página e a tradução, a versão em inglês prevalecerá e será a determinante. Exibir a versão em inglês desta página.