Arduino常用函数总结

Posted by 肥仔 on September 21, 2020

arduino常用函数的总结

arduino编程基础

关键字,语法符号,数据类型,常量。

  • void setup() 当程序开始运行时,函数调用一次。常用于定义初始环境属性,如引脚模式,启动端口等。不要声明变量(在loop中无法访问)

  • void loop() 连续执行包含在其块内的代码行,直到程序停止。

数字i/o口的操作函数

数字操作即为高低电平操作(0/1)

  • pinMode(pin,mode) 设置引脚模式,mode有OUTPUT(输出),INPUT(输入)

  • digitalWrite(pin,value) 设置引脚的输出电压(高低),value为高低电平(0/1)

  • digitalRead(pin) 获取输入引脚的电平情况

模拟i/o口的操作函数

模拟i/o口值(0-1023),$2^{10},A/D转换$

  • analogReference() 设置用于指定用作analogRead()命令的参考电压。???

  • int analogRead(pin) 读取引脚的模拟量电压值,每读一次需要100us,返回值为0-1023,精度1位。pin的范围是0-5,对应板上的模拟口A0-A5

  • analogWrite(pin,value) 通过PWM波在引脚输出一个模拟量

高级I/O操作函数

  • tone(pin,frequency,time) 在引脚上产生一定时间的确定频率。frequency参数为 usigned int 类型,用于设置基音频率(khz)

  • notone(pin) 停止在指定引脚中产生频率。

  • shiftOut(dataPin,clockPin,bitOrder,data,count,delayTime) 将数据写入引脚,一次一位。他可以从最大或最低有效位开始写入。参数详解如下:

    • dataPin,用于发送数据的引脚
    • clockPin,该引脚作时钟
    • bitOrder,MSBFIRST(最左位)或LSBFIRST(最右位)
    • data,byte或unsigned int,要发送的数据,如果没有计数指定了一个字节(8位)计数
    • count(可选),要发送的位数(1-16)
    • delayTimer(可选参数),在时钟引脚内部产生时钟脉冲的延迟
  • shiftIn(dataPin,clockPin,bitOrder,data,count,delayTime) 读取引脚上的数据,一次一位。他可以读取从最大或最低有效位开始的位。格式如上

  • int PulseIn(pin,state,timeou) 读取引脚脉冲(1/0)的时间长度,并返回脉冲持续的时间长度

时间函数

  • delay(ms) 延时函数,参数是延时的时长,单位是毫秒

  • unsigned long millis() 计时函数,应用该函数可以获取单片机通电到现在运行的时间长度,单位是ms

中断函数

注意只有指定的引脚能感知中断的发送,主要包含主程序,中断源,中断服务子程序

  • attachInterrupt(interrupt,ISR,mode) 用于指定外部中断发生时调用的命名中断服务程序(ISR)

    • interrupt,允许外部中断源
    • ISR,中断事件发生时,要调用的函数名称
    • mode,有四种有效形式,枚举值如下。CHANGE,RISING,LOW,FALLING
  • detachInterrupt(interrupt) 取消外部中断

  • noInterrupts() 和 interrupts() 禁用以及启用中断