arduino TimerOne.h常用函数
时间: 2023-05-31 14:06:37 浏览: 109
1. Timer1.initialize(period): 设置计时器周期为period,单位为微秒。
2. Timer1.start(): 启动计时器。
3. Timer1.stop(): 停止计时器。
4. Timer1.restart(): 重启计时器。
5. Timer1.attachInterrupt(function): 设置计时器中断函数。
6. Timer1.detachInterrupt(): 取消计时器中断函数。
7. Timer1.pwm(pin, duty_cycle, frequency): 设置脉宽调制输出。其中,pin为输出引脚,duty_cycle为占空比(取值范围0-1023),frequency为信号频率。
8. Timer1.disablePwm(pin): 禁用脉宽调制输出。
9. Timer1.setPwmDuty(pin, duty_cycle): 设置脉宽调制输出的占空比。
10. Timer1.setPeriod(period): 修改计时器周期。
相关问题
arduino计时器函数
非常感谢您的提问!关于arduino计时器函数,我可以为您提供一些基本信息和使用方法。
在Arduino开发中,计时器函数可以让我们在程序中很方便地实现定时功能。常用的计时器函数包括“delay()”和“millis()”。
“delay()”函数可以让程序暂停执行一段时间。例如,delay(1000)表示程序会暂停执行1秒钟。
“millis()”函数可以用来计算程序运行的时间,实现类似定时器的功能。例如,我们可以使用“millis()”函数来控制LED闪烁的时间间隔。
除了以上两种函数,Arduino还提供了一些其他的计时器库,例如“TimerOne”和“TimerThree”等,在需要更精确地控制时间的情况下,这些库可能更为适用。
希望这些信息对您有所帮助,如果您有任何其他问题,请随时提出。
TimerOne库的源代码
以下是TimerOne库的源代码,可用于Arduino开发板:
```
/*
TimerOne.h - Version: Latest
A better Timer Library for Arduino.
Created by Jesse Tane, April 13, 2010.
Released into the public domain.
*/
#ifndef TimerOne_h_
#define TimerOne_h_
#include <inttypes.h>
// 16MHz clock = 62.5ns tick
// 65535 * 62.5ns = 4.096ms
#define RESOLUTION 4 // 4 ms tick, minimum delay
// This is the number of timer clock ticks per microsecond
#define clockCyclesPerMicrosecond() (F_CPU / 1000000L)
#define clockCyclesToMicroseconds(a) ((a) / clockCyclesPerMicrosecond())
#define microsecondsToClockCycles(a) ((a) * clockCyclesPerMicrosecond())
class TimerOne
{
public:
void initialize(long microseconds=1000000);
void attachInterrupt(void (*isr)());
void detachInterrupt();
void start();
void stop();
void restart();
void resume();
void setPeriod(long microseconds);
inline void setPwmDuty(char pin, int duty) __attribute__((always_inline));
inline unsigned long getPeriod() __attribute__((always_inline));
inline unsigned long getPwmDuty(char pin) __attribute__((always_inline));
private:
static unsigned long _timer_period;
static void (*_userFunc)();
};
extern TimerOne Timer1;
#endif
```
该库提供了一系列函数,可以方便地设置定时器,附加、分离中断,以及设置PWM占空比等。在使用前需要将该库添加到Arduino IDE的库目录中,并在代码中引用。