常量

  • HIGH | LOW 表示数字IO口的电平,HIGH 表示高电平(1),LOW 表示低电平(0)。
  • INPUT | OUTPUT 表示数字IO口的方向,INPUT 表示输入(高阻态),OUTPUT 表示(AVR单片机能提供5V电压,40mA输出)

    数字 I/O

  • pinMode(pin, mode)数字IO口输入输出模式定义函数,pin表示为0~13, mode表示为INPUT或OUTPUT。

  • digitalWrite(pin, value) 数字IO口输出电平定义函数,pin表示为0~13,value 表示为HIGH或LOW。比如定义HIGH可以驱动LED。
  • int digitalRead(pin) 数字IO口读输入电平函数,pin表示为0~13,value 表示为HIGH或LOW。比如可以读数字传感器。

    模拟 I/O

  • int analogRead(pin) 模拟IO口读函数,pin表示为0~5。比如可以读模拟传感器(10 bit 采集,0~5V表示为0~1023)。Arduino有模拟0~模拟5共计6个模拟接口,这6个接口也可以算作为接口功能复用,除模拟接口功能以外,这6个接口可作为数字接口使用,编号为数字14—数字19

  • analogWrite(pin, value):PWM 数字IO口PWM输出函数,Arduino数字IO口 标注了PWM的IO口可使用该函数,pin 包括 3, 5, 6, 9, 10, 11,value表示为0~255。

Arduino每一次对引脚执行analogWrite()指令,都会给该引脚一个固定频率的PWM信号。PWM信号的频率大约490Hz。在Arduino UNO控制器中,5号引脚和6号引脚的PWM频率为980Hz。

image.png
图中~表示可以实现PWM输出的管脚

时间函数

  • delay(ms) 延时函数(单位ms)。
  • delayMicroseconds(us) 延时函数(单位us)。

    数学函数

  • z min(x, y) 求最小值

  • max(x, y) 求最大值
  • abs(x) 计算绝对值
  • constrain(x, a, b) 约束函数,下限a,上限b,x必须在ab之间才能返回。
  • map(value, fromLow, fromHigh, toLow, toHigh) 约束函数,value必须在fromLow与toLow之间和fromHigh与toHigh之间。
  • pow(base, exponent) 开方函数,base的exponent次方。
  • sq(x) 平方
  • sqrt(x) 开根号

定时器

https://www.arduino.cn/thread-2890-1-1.html