Ardunio是一个易于硬件和软件开发的开源电子平台,它可以接收来自多种传感器的输入数据来感知环境,并控制LED,电机等多种设备的运转。你可以使用Java,C++,Python等Ardunio支持的编程语言来控制Ardunio的运行。
当LED引脚电平为以下波形时 高电平铺满整个PWM时钟周期,设此时LED亮度为100%。若为以下波形时
则此时LED亮度为50%。设时间1为一个PWM时钟周期。在该时钟周期内,占空比(高电平保持的时间与PWM的时钟周期的总时间之比)为0.5,此时占空比可以看作LED亮度。
数模转换:把数字信号转换为模拟信号或者把模拟信号转换为数字信号。R1为上拉电阻,若开关S1断开,Input通过两个电阻接+5V,为稳定高电平。若开关S1闭合,Input接地,为稳定低电平。若没有上拉电阻R1,则开关断开时Input浮空,不确定其电平,产生电子噪声。
下拉电阻:下拉电阻的作用是将一个未知的电平拉低到稳定的低电平状态。R1为下拉电阻,若开关S1断开,Input通过两个电阻接地,为稳定低电平。若开关S1闭合,Input与+5V相连,为稳定高电平。若没有下拉电阻R1,则开关断开时Input浮空,不确定其电平,产生电子噪声。
param1:引脚编号 param2:模式,可选关键字INPUT(输入)或OUTPUT(输出) 例如pinMode(2, OUTPUT)为设置2号引脚为输出模式 Ardunio引脚开机默认为INPUT模式。当引脚设定为OUTPUT模式时,引脚为低阻抗状态,Ardunio可以向其它电路元器件提供电流,若元器件驱动电流超过40mA,则需要其他辅助元器件。当引脚设置为INPUT模式时,此时引脚处于高阻抗状态,等同于在引脚前串联一个100MΩ的电阻,所以只需要很小的电流就能改变引脚电平状态。当引脚设置为INPUT_PULLUP模式,则启用引脚内部上拉电阻,相当于引脚通过上拉电阻连接到高电平上。
向引脚写数字信号 void digitalWrite(param1, param2);param1:引脚编号 param2:要输出的数字信号,可选关键字HIGH(高电平5V)或LOW(低电平0V/GND) 例如digitalWrite(2, HIGH)为设置2号引脚上的电平为高电平,该函数需要先设置pinMode(2, OUTPUT),即设置2号引脚为输出模式。
从数字引脚中读取数字信号 HIGH/LOW digitalRead(param1);param1:引脚编号 return:返回HIGH表示此时引脚为高电平,返回LOW表示此时引脚为低电平 例如digitalRead(2) == LOW为判断此时2号引脚是否为低电平
设置延迟 void delay(param1);param1:延迟时间(ms) 例如delay(1000)为等待1000毫秒后执行下一条语句。
串口通信用于Ardunio开发板与电脑或者其他设备之间进行通信
初始化串口通信 Serial.begin(param);param1:串口通信传输位数 例如Serial.begin(9600)为初始化串口通信,每秒9600位
输出变量到串口监视器 Serial.println(param);param:需要的输出信息 例如Serial.println(buttonState)为向串口输出buttonState数据
param1:可以取到的随机数的最小值 param2:不可以取到的随机数的最大值 return:long型随机数 例如random(1, 10)为获取大于等于1且小于10的随机整数
param1:引脚编号 param2:要输出的模拟信号,范围为0~255 例如analogWrite(9, 128)为向9号引脚写入数据128 在Ardunio Uno中只有3,5,6,9,10,11能够输出模拟信号
从模拟输入引脚中读取数据数值 int analogRead(param);param:引脚编号 return:返回int类型数据,范围在0-1023之间 Ardunio控制器有多个10位数模转换通道,因此有0~2^10-1共1024个数值。