Arduino入门实例8
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Arduino
入
门
实
例
作者:小新哥
/*实例一:定义引脚模式*/
/* pinMode(pin, mode) 数字IO口输入输出模式定义函数,pin表示为引脚0~13,mode 表示为INPUT或OUTPUT模式*/
void setup() //初始化变量,管脚模式,调用库函数等
{
pinMode(1,INPUT); //定义引脚1为输入模式
pinMode(9,OUTPUT); //定义引脚9为输出模式
}
void loop() //连续执行函数内的语句
{
}
/*实例二:定义引脚1~8为输入模式,9~13为输出模式*/
/*方法1:*/
void setup() //初始化变量,管脚模式,调用库函数等
{
pinMode(1,INPUT); //定义引脚1为输入模式
pinMode(2,INPUT); //定义引脚2为输入模式
pinMode(3,INPUT); //定义引脚3为输入模式
pinMode(4,INPUT); //定义引脚4为输入模式
pinMode(5,INPUT); //定义引脚5为输入模式
pinMode(6,INPUT); //定义引脚6为输入模式
pinMode(7,INPUT); //定义引脚7为输入模式
pinMode(8,INPUT); //定义引脚8为输入模式
pinMode(9,OUTPUT); //定义引脚9为输出模式
pinMode(10,OUTPUT); //定义引脚10为输出模式
pinMode(11,OUTPUT); //定义引脚11为输出模式
pinMode(12,OUTPUT); //定义引脚12为输出模式
pinMode(13,OUTPUT); //定义引脚13为输出模式
}
void loop() //连续执行函数内的语句
{
}
/*方法2:*/
void setup() //初始化变量,管脚模式,调用库函数等
{
for(int i=0;i<=8;i++) //for循环
pinMode(i,INPUT); //定义引脚1~8为输入模式
for(int j=9;j<=13;j++) //for循环
pinMode(j,OUTPUT); //定义引脚9~13为输出模式
}
void loop() //连续执行函数内的语句
{
}
/*方法3:*/
void setup() //初始化变量,管脚模式,调用库函数等
{
for(int i=0,j=9;i<=8,j<=13;i++,j++) //for循环
{
pinMode(i,INPUT); //定义引脚1~8为输出模式
pinMode(j,OUTPUT); //定义引脚9~13为输出模式
}
}
void loop() //连续执行函数内的语句
{
}
/*实例三:按下按钮1亮灯,松开按钮1灭灯*/
•digitalWrite(pin, value) 数字IO口输出电平定义函数,pin表示为0~13,value表示为HIGH或LOW。比如定义HIGH可以驱动LED。
•int digitalRead(pin) 数字IO口读输入电平函数,pin表示为0~13,value表示为HIGH 或LOW。比如可以读数字传感器。
•HIGH | LOW表示数字IO口的电平,HIGH表示高电平(1),LOW表示低电平(0)。
•INPUT | OUTPUT表示数字IO口的方向,INPUT表示输入(高阻态),OUTPUT表示输出(AVR能提供5V电压40mA电流)。
/*方法1:*/
void setup() //初始化变量,管脚模式,调用库函数等
{
pinMode(1,INPUT); //定义引脚1为输入模式
pinMode(13,OUTPUT); //定义引脚13为输出模式
}
void loop() //连续执行函数内的语句
{
if(digitalRead(1)==HIGH) //if语句,引脚1置高电平,即按钮1按下digitalWrite(13,HIGH); //引脚9置高电平,即亮灯
else
digitalWrite(13,LOW); //引脚9置低电平,即灭灯
}
/*方法2:最简单的方法*/
void setup() //初始化变量,管脚模式,调用库函数等{
pinMode(1,INPUT); //定义引脚1为输入模式
pinMode(13,OUTPUT); //定义引脚13为输出模式
}
void loop() //连续执行函数内的语句
{
digitalWrite(13,digitalRead(1)); //读取引脚1的电平,赋值给引脚13
}
/*方法3:*/
void setup() //初始化变量,管脚模式,调用库函数等{
for(int i=0,j=9;i<=8,j<=13;i++,j++) //for循环
{
pinMode(i,INPUT); //定义引脚1~8为输入模式pinMode(j,OUTPUT); //定义引脚9~13为输出模式
}
}
void loop() //连续执行函数内的语句
{
while(digitalRead(1)==1) //while循环HIGH即是数字信号1 digitalWrite(13,HIGH);
while(digitalRead(1)==0) //LOW即是数字信号0
digitalWrite(13,LOW);
}