matlab与Arduino通讯,按键输入控制LED
- 实验材料
- 实验步骤
- 实验现象
- 函数介绍
- 利用simulink读取按键状态,控制输出。
实验材料
• Uno R3开发板
• 配套USB数据线
• 1个轻触按键
• 用开发板自带的LED(引脚13)
实验步骤
① 根据原理图搭建电路,实验原理图如下图所示:
② 新建sketch,拷贝如下代码替换自动生成的代码并进行保存。
const int keyPin = 7; //按键管脚定义
const int ledPin = 13;//LED灯管脚定义
void setup()
{
pinMode(keyPin,INPUT);//设置引脚7为按键输入
pinMode(ledPin,OUTPUT);//设置引脚13为LED输出
}
void loop()
{
boolean Value=digitalRead(keyPin);//读按键的状态赋值给Value
//检查按键是否按下
if(Value ==HIGH )
{
digitalWrite(ledPin,LOW);
}
else
{
digitalWrite(ledPin,HIGH);
}
}
实验现象
按下按键,LED灯点亮。放开按键,LED灯熄灭。
函数介绍
digitalRead()
• 描述:读取指定数字引脚的值
• 函数原型:digitalRead(pin)
• 参数:要读取的数字引脚编号
• 返回值:HIGH(1)或LOW(0)
利用simulink读取按键状态,控制输出。
一如既往的简单,利用硬件支持包中的模块组建如下模型,一个数字量的读,一个数字的写,输入直接给输出,但simulink默认是低电平有效,需要加一个取反模块。环境的配置及部署方式请参见: 我的博客MATLAB与Arduino通讯,点亮双色LED.
这里就部位大家展现图形化编程的程序了,有兴趣的朋友,自己变一下,图形化编程软件在主页有,可自行下载。
关注我,我们一起进步!