衡水专业网站建设公司,网络公司网站设计多少钱,阿里云怎么做淘客网站,网站建设 响应式注意#xff1a;学习和写作过程中#xff0c;部分资料搜集于互联网#xff0c;如有侵权请联系删除。
前言#xff1a;学习定时器的功能。
1.定时器介绍 定时器也是一种中断#xff0c;属于软件中断。 它就像一个时钟#xff0c;可以测量事件的时间间隔。 比如早…注意学习和写作过程中部分资料搜集于互联网如有侵权请联系删除。
前言学习定时器的功能。
1.定时器介绍 定时器也是一种中断属于软件中断。 它就像一个时钟可以测量事件的时间间隔。 比如早晨闹钟可以准时在7点半叫你醒不醒就是你自己的事了。
2.Arduino UNO R3的定时器 Arduino Uno 采用的是 16Mhz 的晶振。单次计数需要 1/16000000 秒或 62 纳秒。这意味着 Arduino 62 纳秒从一条指令移动到另一条指令。当然时钟频率越高处理速度就越快。
每个定时器都有一个计数器在计时器的每个时钟周期递增。因此你需要定的时间单片机自己通过数数来实现。
在 Arduino Uno 中有三个定时器他们分别被使用到以下官方函数和库中
Timer08 位定时器 delay()delayMicroseconds()millis()micros()Timer116 位定时器 伺服电机库 Servo.hTimer28 位定时器 tone()函数
各个定时器与引脚功能、软件库功能对应关系
Timer0D5/D6的PWM输出、delay()、millis()、delayMicroseconds()。 Timer1D9/D10的PWM输出、舵机库Servo.h、TimerOne库。 Timer2D3/D11的PWM输出、无源蜂鸣器的tone()、 MsTimer2库(三方库)。
3.今日知识点讲解 MsTimer2库(三方库)的使用 #include MsTimer2.h //调用三方库 MsTimer2::set(time, Task_Time); //初始化库函数在setup函数里。 参数一time是指定时多久单位毫秒。 参数二定时的时间到了需要去执行的任务函数。 MsTimer2::start(); //开启定时器无参数。在setup函数里三方库的初始化后面。
4.应用及电路连接图
实验内容 LED 闪烁运行。
电路接线图 5.实现代码
#include MsTimer2.h //调用三方库定时器库#define led 13
boolean LEDStatus;void Task_Time() //时间到了的执行函数
{LEDStatus !LEDStatus; //灯状态翻转if (LEDStatus)digitalWrite(led, HIGH);else digitalWrite(led, LOW);
}void setup()
{pinMode(led, OUTPUT); //13引脚设置为输出MsTimer2::set(1000, Task_Time); //初始化定时器库设置一秒执行一次Task_TimeMsTimer2::start(); //开启定时器
}void loop()
{
//不用写内容自动调用。
}
5.仿真视频 定时器仿真视频 上一篇Arduino UNO R3自学笔记15 之 Arduino如何驱动数码管?
下一篇Arduino UNO R3自学笔记17 之 Arduino为啥要用中断