我试图在我的C ++代码中使用clock()函数,但是它不起作用。 我尝试添加#include <time.h>#include <ctime>但是它没有帮助。 我正在使用Atmel Studio。

#include <time.h>

int main(void)
{
        clock_t myClock = clock();
}

应该没有错误,但是我收到以下错误消息:

recipe for target 'SAMS70.elf' failed
undefined reference to `_times'
ld returned 1 exit status

有谁知道为什么会这样?

#1楼 票数:0

MCU通常不会暴露处理器使用时间。 clock函数调用预期的_times函数以获取该值,但由于上述原因,未为MCU定义该函数。

  ask by Jonathan Lane-Smith translate from so

未解决问题?本站智能推荐:

6回复

我的硬件上的time.h clock()坏了吗?

我尝试测量在OMAP ZOOM 3430 MDK附带的TMS32064x + DSP上执行一段代码所需的时钟周期。 我看一下DSP芯片的“程序员指南”,它说DSP支持clock()功能。 我做的很简单,我就是这么做的 然后将“start”,“stop”和“total”的值放入以前
1回复

使用 AVR Atmel Studio 库配置文件的编译器错误

这是错误“被调用的对象不是函数或指针”,这是我的私人文件,它在配置文件中包含所有单词的地址。 第一个文件: 私有文件,其中包含我的微控制器 ATmega16 的一些地址。 此外,我的配置文件是对私有文件的引用; 其中有私下定义的密钥。 例如,在 UART_Partit 我写了私有定义的 N
1回复

FRDM-KL46Z内部参考时钟为48 MHz?

我正在为FRDM-KL46Z平台开发IAR编译器。 我想使用内部时钟并将其设置为48 MHz (或尽可能最大)。 到目前为止,我已经在示例sysinit.c文件和提供的函数sysinit()完成了以下步骤。 在FEI模式下,如果执行FBI模式或BLPI模式,则得到的MCU时钟要少得多
1回复

具有64Mhz时钟的PIC18f45k22串行成帧错误

我正在尝试通过pic18f45k22 eusart外设传输串行信号。 当时钟以16Mhz运行时,消息将按预期方式发送,但是如果我将PLL设置为on(以使振荡器以64Mhz运行),则会收到帧错误。 我更改了SPBRG寄存器以解决新的时钟频率问题,并尝试将波特率发生器更改为16位和8位模式,
1回复

实时时钟,递增并在C中的LED上显示

我的时钟有一个循环,如果小键盘发送的x值为30,我试图加30秒。然后它将显示在LED显示屏上。 它可以工作,但是我似乎在添加30秒和超过59秒时遇到问题。 它最初的工作方式是不断增加30到60到90 + 120等。但是当我增加30秒时,我希望它每60秒翻转一次。 如果我应该重写代码,那么我
3回复

如何在运行时使用POSIX clock()函数监控CPU利用率?

有没有可靠的方法程序如何在运行时测量其CPU利用率? 我可能不得不使用time.h中的POSIX clock()函数。 这个想法首先是用几毫秒来设置空闲CPU负载(步骤A),然后是全CPU负载(步骤B),然后开始一个程序并不断调用clock()。 因此,我可以计算相对于步骤A和步骤B计
3回复

尝试通过示例了解时钟周期

我正在努力完全理解时钟周期是什么,所以我想出了一个测试示例,我希望有人确认或驱散并提供更好的理解。 如果我有一个简单的代码行,一个while循环,在设备上运行 命令:int x = 5是否每个时钟周期执行一次? 换句话说,时钟速度是指设备能够在每单位时间内读取和执行命令的速度吗?
1回复

程序执行期间更改CPU时钟速度

我们的微型计算机(RH850)的主要应用开发为以时钟速度X Mhz工作。 首先被alwyas执行的Bootloader将时钟速度初始化为X / 3 MHz。 由于引导加载程序使用的libaraire中存在一些限制,因此我们无法将引导加载程序中的速度更改为X Mhz。 是否有可能在Boo