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

在NiosII中使用时间戳定时器

在NiosII中使用时间戳定时器

本文转自:http://blog.ednchina.com/_swordflyer_/243011/Message.aspx

在NiosII中如果想要测试一段代码执行的时间,可以使用时间戳来测试。
       在NiosII中使用时间戳前必须在SOPC中加入一个定时器来产生时间标记,然后需要在编译NiosII中的软件工程前指定产生时间戳的是哪个定时器。在软件工程结点右击》systemlibrary properties》system library,在Timestamptimer后的下拉框中选择在SOPC里加入的想要用作时间戳的时间器。
       在软件中,必须包含头文件:#include<sys/alt_timestamp.h>,否则在编译时会出现undefinedreference to 'alt_timestamp_start'  undefinedreference to 'alt_timestamp'和 undefined reference to'alt_timestamp_freq' .
       在应用中最重要的就3个函数,alt_timestamp_start()、alt_timestamp()和alt_timestamp_freq()。alt_timestamp_start()复位定时器的计数器,必须在使用alt_timestamp()前调用;alt_timestamp()返回当前定时器的计数器的值(单位是clockticks);alt_timestamp_freq()返回此软件工程每秒钟的clockticks的个数。
       例如得到do something的时间:
       time1 = alt_timestamp();
       // do some thing
       time2 = alt_timestamp();
       timer_overhead = time2 -time1;

返回列表