(筆記) 如何停頓n秒鐘後再繼續? (SOC) (DE2) (Nios II)

Abstract
由於CPU速度太快,很多結果人眼根本看不見,因此想停頓n秒鐘再繼續,該如何透過C在Nios II實現呢?

Introduction
使用環境:Quartus II 7.2 SP3 + Nios II EDS 7.2 SP3 + DE2(Cyclone II EP2C35F627C6)
本範例使用
(原創) DE2_NIOS_Lite 1.1 (SOC) (Nios II) (SOPC Builder) (μC/OS-II) (DE2)為範本

在unistd.h提供了usleep()函數,可以停頓n micro-seconds,若要停頓n秒,相當於usleep(n * 1000 * 1000);

hello_world.c / C

/* 
(C) OOMusou 2008
http://oomusou.cnblogs.com

Filename    : hello_world.c
Compiler    : Quartus II 7.2 SP3 + Nios II EDS 7.2 SP3
Description : Demo how to use usleep()
Release     : 08/29/2008 1.0
*/

#include
<stdio.h>
#include
"unistd.h"

int main() {
 
while(1) {
    printf(
"Hello from Nios II!\n");
    usleep(
1 * 1000 * 1000);
  }

 
return 0;
}


執行結果
(每一秒鐘顯示一次Hello from Nios II!)

Hello from Nios II!
Hello from Nios II!
Hello from Nios II!
Hello from Nios II!
Hello from Nios II!
Hello from Nios II!


完整程式碼下載
DE2_NIOS_usleep.7z

See Also
(原創) DE2_NIOS_Lite 1.1 (SOC) (Nios II) (SOPC Builder) (μC/OS-II) (DE2)

posted on 2008-08-29 11:35  真 OO无双  阅读(3998)  评论(1编辑  收藏  举报

导航