Arduino系列之中断函数
今天我将简单记录中断函数
函数分为外部中断和定时中断
外部中断的定义:一般由外设发出中断请求,如:键盘中断、打印机中断、外部中断需外部中断源发出中断请求才能发中断。
定时中断的定义:是指主程序在运行一段程序过后自动进行的中断服务程序。
interrupt 可以被中断的代码
nointerrupt 可以被中断的代码
外部中断:
attach interrupt(interrupt,function,mode)
1)interrupt:中断号,UNO只用0,1,即代表D2,D3口
2)function:调用中断函数,中断发生时调用的函数
3)mode:中断触发模式
UNO R3支持四种模式
low 当针脚输入为低时,触发中断
change 当针脚输入发生变化时,触发中断
rising 当针脚由低变高时,触发中断
falling 当针脚由高到低时,触发中断
1.中断服务程序不能够有参数和返回值,即void Function name(void){}
2.在中断函数中delay()函数将不起作用
3.在中断函数中millis()函数的值不会增加
4.得到的串行数据将会丢失
5.需在中断函数内部更改的值需声明为volatile类型
detach interrupt (interrupt)
定时中断
常见的定时库有FlexiTimer2.h和Ms.Timer2.h
void start() 开启定时中断
void stop() 关闭定时中断
#include<MsTimer2.h>
void flash()
{
static boolean cutput=HIGH;
digitalWrite(13,OUTPUT);
OUTPUT=!OUTPUT;
MsTimer2:set(500,flash);
MsTimer2:start();
}
void loop()
{}
Arduino系列之中断函数的更多相关文章
- Arduino的外部中断
Arduino的中断函数格式为attachInterrupt(interrput,function,mode). attachInterrupt函数用于设置外部中断,有3个参数,interrput表示 ...
- 深入理解javascript函数系列第一篇——函数概述
× 目录 [1]定义 [2]返回值 [3]调用 前面的话 函数对任何一门语言来说都是一个核心的概念.通过函数可以封装任意多条语句,而且可以在任何地方.任何时候调用执行.在javascript里,函数即 ...
- 深入理解javascript函数系列第二篇——函数参数
× 目录 [1]arguments [2]内部属性 [3]函数重载[4]参数传递 前面的话 javascript函数的参数与大多数其他语言的函数的参数有所不同.函数不介意传递进来多少个参数,也不在乎传 ...
- Arduino101学习笔记(九)—— 中断函数
1.设置中断函数 //***************************************************************************************** ...
- arduino上使用sprintf()函数输出float值出错
如果尝试使用sprintf()函数在arduino上进行对float指转换为一个字符串的话,你会发现,it doesn't work.弄了很久,还以为是没学c++的原因.其实在arduino上,这个函 ...
- MSP430的看门狗常见用法以及中断函数的书写方法
今天下午看了一下MSP430的看门狗的基本用法 看门狗是为了防止程序跑飞而设定的,但是由于看门狗是一个类似于定时器,因此可以把他当作定时器来使用 示例代码:用看门狗定时器使一个led闪烁 #inclu ...
- 关于C51的中断函数要注意的几个问题
转载自:http://blog.21ic.com/user1/531/archives/2006/16909.html 最近在虾潭逛,发现一些小虾米对C51中断函数有些不了解,今天周末,抽空发个技术帖 ...
- C51编译器扩展的关键词 & C51中断函数的写法
C51根据单片机的特性扩展了相关的关键字,如下表示: 关键词 用途 说明 bit 位变量声明 声明了一个位变量或者位类型的函数 sbit 位变量声明 声明了一个可位寻址变量 sfr 特殊功能寄存器声明 ...
- SSE 系列内置函数中的 shuffle 函数
SSE 系列内置函数中的 shuffle 函数 邮箱: quarrying@qq.com 博客: http://www.cnblogs.com/quarryman/ 发布时间: 2017年04月18日 ...
随机推荐
- cookies 与session
cookies :存放在浏览器(客户端)的用户信息 - 优点: 可以将数据存在客户端一方: - 缺点: 不安全,可以存放多份,导致服务端占用空间过大 session :存放在服务端的用户信息 - 优点 ...
- elasticsearch定时删除索引第二版
该版本对于上一个版本做了升级.兼容性更好了. #!/bin/bash ####################################################### # $Name: ...
- 处理样本不平衡的LOSS—Focal Loss
0 前言 Focal Loss是为了处理样本不平衡问题而提出的,经时间验证,在多种任务上,效果还是不错的.在理解Focal Loss前,需要先深刻理一下交叉熵损失,和带权重的交叉熵损失.然后我们从样本 ...
- C语言之while循环
while循环能做什么??? 先来个概念格式,while循环的一般形式为: while(表达式){ 语句块 } 意思是,先计算"表达式"的值,当值为真(非0)时, 执行" ...
- day2(使用list和tuple)
list list是一种有序的集合 >>>aaa = ['abc','bob','tracy'] >>>aaa ['abc','bob','tracy'] len( ...
- POJ 1458 Common Subsequence (动态规划)
题目传送门 POJ 1458 Description A subsequence of a given sequence is the given sequence with some element ...
- Tomcat的性能优化及JVM内存工作原理
JVM性能优化原则:代码运算性能.内存回收.应用配置(影响Java程序主要原因是垃圾回收机制)代码层优化:避免过多循环嵌套.调用和复杂逻辑. Tomcat调优主要内容 1.增加最大连接数 2.调整工作 ...
- 值得收藏!my.cnf配置文档详解
MySql对于开发人员来说应该都比较熟悉,不管是小白还是老码农应该都能熟练使用.但是要说到的各种参数的配置,我敢说大部分人并不是很熟悉,当我们需要优化mysql,改变某项参数的时候.还是要到处在网上查 ...
- css控制div等比高度
在移动端开发中,在banner轮播图未加载出来之前,banner层是不占文档流高度的,当从服务器获取完banner数据,展示的时候,banner层因为有了内容 所以会撑开,导致banner层下面的内容 ...
- [Micropython]TPYBoard v202 智能WIFI远控小车
转载请注明文章来源,更多教程可自助参考docs.tpyboard.com,QQ技术交流群:157816561,公众号:MicroPython玩家汇 前言---------------------- 之 ...