1.    string

  char Str1[15];
char Str2[8] = {'a', 'r', 'd', 'u', 'i', 'n', 'o'};
char Str3[8] = {'a', 'r', 'd', 'u', 'i', 'n', 'o', '\0'};
char Str4[ ] = "arduino";
char Str5[8] = "arduino";
char Str6[15] = "arduino";
字符串要有空终止符,否则它将继续向下读取字节。
你可以像这样打包长字符串: char myString[] = “This is the first line” “ this is the second line” “ etcetera”;
2.create a arrays

创建(声明)一个数组

下面的方法都可以用来创建(声明)数组。

  myInts [6];
myPins [] = {2,4,8,3,6};
mySensVals [6] = {2,4,-8,3,2};
char message[6] = "hello";
 索引下标从0开始;
3.interrupt or noInterruptvoid loop()
{
noInterrupts();
//重要、时间敏感的代码
interrupts();
//其他代码写在这里
}
中断可以被关闭或者打开。 4.attachinterrupt
a. description:两个外部中断:0(数字引脚2)和1(数字引脚3)。
    

  attachInterrupt(interrupt, function, mode)

interrupt:中断引脚树

function:中断发生时调用函数,必须没有返回值,没有参数。被称为中断服务程序

mode:定义何时发生中断以下四个contstants预定有效值:

  • LOW 当引脚为低电平时,触发中断
  • CHANGE 当引脚电平发生改变时,触发中断
  • RISING 当引脚由低电平变为高电平时,触发中断
  • FALLING 当引脚由高电平变为低电平时,触发中断.

5.tone():在一个引脚上产生特定频率的方波(50%占空比),持续时间可以设定,否则波形会一直产生直到调用no tone()函数,

语法:tone(pin,frequency);

   tone(pin,frequency,duration)

    pin:要产生声音的引脚;

    frequency:产生声音的频率,单位hz,类型unsigned int;

    duration:声音持续的时间,单位毫秒(可选),unsigned long;

6.pulseIn():读取一个引脚的脉冲(HIGH或LOW)

语法:pulseIn(pin,value)

   pulseIn(pin,value,timeout)

   pin:要进行脉冲计时的引脚号;

      value:要读取的脉冲类型HIGH或LOW;

   timeout:指定脉冲的等待时间,单位为微秒,默认值是1秒;

7.millis():开发板从当前程序运行的毫秒数

8.constrain(x,a,b):将x约束到(a,b)范围内

9.map(value,fromLow,fromHigh,toLow,toHigh):将一个数从一个范围映射到另一个范围

  value:需要映射的值;

  fromLow:当前范围值的下限;

  fromHigh:当前范围值的上限;

  toLow:目标范围值得下限;

  toHigh:目标范围值得上限;

10.attach()

  语法:

  servo.attach(pin)

  servo.attach(pin,min,max)

  servo:舵机类型的变量

  pin :驱动舵机的管脚号

  min:脉冲宽度,对应于舵机的最小角度(0)

 max:脉冲宽度,对应于舵机的最大角度(180)

11.Mstimer2()定时器中断

MsTimer2::set(unsigned long ms, void (*f)()) ,设定定时及调用的语句
MsTimer2::start() ,定时开始
MsTimer2::stop() ,定时停止
    


arduino basic issue的更多相关文章

  1. C++银行储蓄程序代码

    */ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.cpp * 作者:常轩 * 微信公众号:Worldhe ...

  2. Arduino关于旋转编码器程序的介绍(Reading Rotary Encoders)--by Markdown

    介绍 旋转或编码器是一个角度測量装置. 他用作精确測量电机的旋转角度或者用来控制控制轮子(能够无限旋转,而电位器只能旋转到特定位置).其中有一些还安装了一个能够在轴上按的button,就像音乐播放器的 ...

  3. Brett Beauregard大神的Arduino PID算法

    大神的全部PID http://brettbeauregard.com/blog/category/pid/ Improving the Beginner’s PID – Introduction I ...

  4. Android Weekly Notes Issue #222

    Android Weekly Issue #222 September 11th, 2016 Android Weekly Issue #222 ARTICLES & TUTORIALS Fo ...

  5. 如何用 JIRA REST API 创建 Issue

    简介 最近需要把一个Excel里的issues list全部到JIRA上create 一遍, 总不能手动创建百十来个issues吧, 本文讲述一下如果调用JIRA提供的Rest API 来自动创建is ...

  6. arduino 入手

    新买了个ardhuino 入门套件 1. Win7 Driver issue: Need to install the below drivers, because my windows is ins ...

  7. zookeeper kazoo Basic Usage

    http://kazoo.readthedocs.org/en/latest/basic_usage.html Basic Usage Connection Handling To begin usi ...

  8. x86 构架的 Arduino 开发板Intel Galileo

    RobotPeak是上海的一家硬件创业团队,团队致力于民用机器人平台系统.机器人操作系统(ROS)以及相关设备的设计研发,并尝试将日新月异的机器人技术融入人们的日常生活与娱乐当中.同时,RobotPe ...

  9. Arduino VS. Raspberry Pi VS. Beaglebone Black

    The Arduino is a small Atmel-based microcontroller development board easily integrated into many dif ...

随机推荐

  1. requests.get()///post函数///base64函数

    1.requests.get() 一般的用法:r=requests.get(url) 或者是用上session: r=requests.session() r=r.get(url) get()收集的是 ...

  2. 沙龙报名 | 京东云DevOps——自动化运维技术实践

    随着互联网技术的发展,越来越多企业开始认识DevOps重要性,在企业内部推进实施DevOps,期望获得更好的软件质量,缩短软件开发生命周期,提高服务稳定性.但在DevOps 的实施与落地的过程中,或多 ...

  3. PAT B1038 统计同成绩学生超时问题

    输入格式: 输入在第 1 行给出不超过 10​5​​ 的正整数 N,即学生总人数.随后一行给出 N 名学生的百分制整数成绩,中间以空格分隔.最后一行给出要查询的分数个数 K(不超过 N 的正整数),随 ...

  4. pc页面在移动端浏览时部分字体放大,与pc字体大小不一致(Font Boosting)

    最近做一个页面时,需要pc的页面在移动端浏览时保持pc的样式缩小.但是发现部分文字被放大了.看上去特别诡异.如下图 绿框是PC端查看时的正常样式,红框是移动端看的字体放大的诡异样式 是什么原因呢? 后 ...

  5. VuePress 中增加用户登录功能

    在 VuePress 中增加用户登录 VuePress 是 Vuejs 官方提供的一个快速建设文档站点的工具,在简单配置好功能后,需要做的事情就剩下写好一个个 Markdown 文档. 因为 VueP ...

  6. spring获取当前动态代理对象

    由于spring中的aop拦截的是代理对象 当拦截的目标方法被本类的另一个方法调用时,会出现拦截失效 最佳实践: 例如拦截RegulationService的update(regulation)方法, ...

  7. 三、VIP课程:并发编程专题->01-并发编程之Executor线程池详解

    01-并发编程之Executor线程池详解 线程:什么是线程&多线程 线程:线程是进程的一个实体,是 CPU 调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系 ...

  8. BZOJ4059[Cerc2012]Non-boring sequences(扫描线/分治)

    这题正解应该是扫描线,就是发现DP的区间在两个维度都为连续段,于是可以直接扫描线.但不幸的是,扫描线常数过大,无法通过本题. 考虑分治.对于分治区间[l,r],可以记录pre和nxt表示其前/后一次出 ...

  9. 可视化---seaborn

    变量说明 x,y,hue 数据集变量 变量名 date 数据集 数据集名 row,col 更多分类变量进行平铺显示 变量名 col_wrap 每行的最高平铺数 整数 estimator 在每个分类中进 ...

  10. linux笔记(一)——基本命令和快捷键

    linux笔记(一) 1.常用BASH快捷键 编辑命令 快捷键 作用 Ctrl + a 移到命令行首 Ctrl + e 移到命令行尾 Ctrl + xx 在命令行首和光标之间移动 Ctrl + u 从 ...