今天我将简单记录中断函数

函数分为外部中断和定时中断

外部中断的定义:一般由外设发出中断请求,如:键盘中断、打印机中断、外部中断需外部中断源发出中断请求才能发中断。

定时中断的定义:是指主程序在运行一段程序过后自动进行的中断服务程序。

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系列之中断函数的更多相关文章

  1. Arduino的外部中断

    Arduino的中断函数格式为attachInterrupt(interrput,function,mode). attachInterrupt函数用于设置外部中断,有3个参数,interrput表示 ...

  2. 深入理解javascript函数系列第一篇——函数概述

    × 目录 [1]定义 [2]返回值 [3]调用 前面的话 函数对任何一门语言来说都是一个核心的概念.通过函数可以封装任意多条语句,而且可以在任何地方.任何时候调用执行.在javascript里,函数即 ...

  3. 深入理解javascript函数系列第二篇——函数参数

    × 目录 [1]arguments [2]内部属性 [3]函数重载[4]参数传递 前面的话 javascript函数的参数与大多数其他语言的函数的参数有所不同.函数不介意传递进来多少个参数,也不在乎传 ...

  4. Arduino101学习笔记(九)—— 中断函数

    1.设置中断函数 //***************************************************************************************** ...

  5. arduino上使用sprintf()函数输出float值出错

    如果尝试使用sprintf()函数在arduino上进行对float指转换为一个字符串的话,你会发现,it doesn't work.弄了很久,还以为是没学c++的原因.其实在arduino上,这个函 ...

  6. MSP430的看门狗常见用法以及中断函数的书写方法

    今天下午看了一下MSP430的看门狗的基本用法 看门狗是为了防止程序跑飞而设定的,但是由于看门狗是一个类似于定时器,因此可以把他当作定时器来使用 示例代码:用看门狗定时器使一个led闪烁 #inclu ...

  7. 关于C51的中断函数要注意的几个问题

    转载自:http://blog.21ic.com/user1/531/archives/2006/16909.html 最近在虾潭逛,发现一些小虾米对C51中断函数有些不了解,今天周末,抽空发个技术帖 ...

  8. C51编译器扩展的关键词 & C51中断函数的写法

    C51根据单片机的特性扩展了相关的关键字,如下表示: 关键词 用途 说明 bit 位变量声明 声明了一个位变量或者位类型的函数 sbit 位变量声明 声明了一个可位寻址变量 sfr 特殊功能寄存器声明 ...

  9. SSE 系列内置函数中的 shuffle 函数

    SSE 系列内置函数中的 shuffle 函数 邮箱: quarrying@qq.com 博客: http://www.cnblogs.com/quarryman/ 发布时间: 2017年04月18日 ...

随机推荐

  1. java通过freemarker模板导出pdf

    需求:将网页内容导出为pdf文件,其中包含文字,图片,echarts图 原理:利用freemarker模板与数据渲染所得到的html内容,通过ITextRenderer对象解析html内容生成pdf ...

  2. Spring 配置内容外部化

  3. python接口自动化测试-unittest-生成测试报告

    用例的管理问题解决了后,接下来要考虑的就是报告我问题了,这里生成测试报告主要用到 HTMLTestRunner.py 这个模块,下面简单介绍一下如何使用: 一.下载HTMLTestRunner下载: ...

  4. java poi ppt 接口的基本操作

    依赖 在 pom.xml中增加以下依赖 <dependency> <groupId>org.apache.poi</groupId> <artifactId& ...

  5. js菜单栏切换

    先来看看需要实现的需求: 这是某购物网站上经常看到的效果 我们把网页的模型抽象出来,下面是我实现的效果图: 源代码仅供大家参考,具体如下: <!DOCTYPE html> <html ...

  6. Vue+Vant+Vuex实现本地购物车功能

    通常,我们做移动端商城的时候,通常会有购物车模块,那购物车模块有两种实现方式,一是储存在后台通过接口获取到购物车信息,二是存在用户手机本地,第一种方法只要调用接口获取比较简单,这里介绍的是第二种方法, ...

  7. 01_垂直居中body中的应用

    1: 应用场景 在body中书写一个代码块, 使其相对于body垂直居中 <!DOCTYPE html> <html lang="en"> <head ...

  8. 21.pyinstaller相关参数

    pyinstaller相关参数                  命令                                                          描述  -F, ...

  9. spring-boot第一章:快速开始

    快速开始 创建pom.xml文件 <?xml version="1.0" encoding="UTF-8"?> <project xmlns= ...

  10. 比特币学习笔记(二)---在windows下调试比特币源码

    根据我一贯的学习经验,学习开源代码的话,单单看是不够的,必须一边看一边调试才能尽快理解,所以我们要想法搭建windows下bitcoin源码的调试环境. 紧接着昨天的进度,想要调试linux下的比特币 ...