ID บทความ: 000079285 ประเภทข้อมูล: ข้อมูลผลิตภัณฑ์และเอกสารประกอบ การตรวจสอบครั้งล่าสุด: 10/03/2015

ฉันจะตั้งค่าไดรเวอร์ UART HAL ให้ทํางานในโหมดไม่บล็อกกับโปรเซสเซอร์ Nios II ได้อย่างไร

สิ่งแวดล้อม

  • โปรเซสเซอร์ Intel® Nios® II
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT
    คำอธิบาย

    HAL มีสองวิธีในการตั้งค่าไดรเวอร์ UART HAL เพื่อทํางานในโหมดไม่บล็อก

    สไตล์ UNIX

    หากใช้การเรียกฟังก์ชัน IO แบบ UNIX คุณสามารถใช้ฟังก์ชัน open() เพื่อตั้งค่า UART ให้เป็นแบบไม่บล็อก ในการทําเช่นนี้ ให้เปิดตัวอธิบายไฟล์ไปยัง UART ของคุณในลักษณะต่อไปนี้:

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

    ตัวอธิบายไฟล์นี้ตั้งค่า UART ให้ทํางานในโหมดอ่าน/เขียนและแบบไม่บล็อก จากนั้นคุณสามารถใช้ตัวอธิบายไฟล์กับฟังก์ชัน read() และ write()

    ANSI C

    หากใช้การเรียกใช้ฟังก์ชัน ANSI C IO คุณจะสามารถตั้งค่าไดรเวอร์ UART HAL เพื่อทํางานในโหมดไม่บล็อกโดยใช้ fcntl() โดยคุณจะต้องอ้างอิง fcntl.h และ unistd.h ในซอร์สโค้ดของคุณ จากนั้นคุณสามารถใช้ fcntl() เพื่อตั้งค่า UART เป็นโหมดไม่บล็อก ด้านล่างนี้เป็นตัวอย่างที่ตั้งค่าช่องสัญญาณ STDIN IO ให้ทํางานในโหมดไม่บล็อก:

    fcntl(STDIN_FILENO, F_SETFL, O_NONBLOCK);

     

      สําหรับข้อมูลเพิ่มเติม คุณสามารถอ้างอิงการอ้างอิง HAL API Reference ใน คู่มือนักพัฒนาซอฟต์แวร์ Nios® II เอกสารนี้สามารถพบได้ในตําแหน่งต่อไปนี้:

      การติดตั้งNios II - ไดเรกทอรีการติดตั้ง/เอกสาร/n2sw_nii5v2.pdf

      ® เว็บไซต์Altera - http://www.altera.com/literature/lit-nio2.jsp

      ผลิตภัณฑ์ที่เกี่ยวข้อง

      บทความนี้จะนำไปใช้กับ 1 ผลิตภัณฑ์

      อุปกรณ์ที่ตั้งโปรแกรมได้ Intel®

      เนื้อหาในหน้านี้เป็นการผสมผสานระหว่างการแปลเนื้อหาต้นฉบับภาษาอังกฤษโดยมนุษย์และคอมพิวเตอร์ เนื้อหานี้จัดทำขึ้นเพื่อความสะดวกของคุณและเพื่อเป็นข้อมูลทั่วไปเท่านั้นและไม่ควรอ้างอิงว่าสมบูรณ์หรือถูกต้อง หากมีความขัดแย้งใด ๆ ระหว่างเวอร์ชันภาษาอังกฤษของหน้านี้กับคำแปล เวอร์ชันภาษาอังกฤษจะมีผลเหนือกว่าและควบคุม ดูเวอร์ชันภาษาอังกฤษของหน้านี้