查看“第三课--按钮控制的LED开关”的源代码
←
第三课--按钮控制的LED开关
跳转至:
导航
、
搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
{{Language|第三课--按钮控制的LED开关}} {| style="width: 800px;" |- | ==Objective== The first two experiments showed you how to use software to control the LED directly. If we add a button, to control the LED light, then realize the combination of hardware and software. Actually that two experiment use Microduino I/O port as the output to control the LED, if want to use the button, how to monitor the input signal of the button? Today we will take button as an example to show how to use the Microduino as the input. ==Equipment== *'''[[Microduino-Core]]''' *'''[[Microduino-FT232R]]''' *Other hardware equipment **Breadboard Jumper one box **Breadboard one piece **LED Light-emitting diodes one **220ohm resistor one **Button one **USB Data cable one ==Button== *Button principle [[File:第三课-按键原理.jpg|600px|center|thumb]] If use this wrap button making PCB, if bad wiring, it has two pairs of pins available always conduction as a conductor wiring. *Button connection [[File:第三课-按键接法.jpg|600px|center|thumb]] ==Experimental schematic== [[File:第三课-原理图.jpg|600px|center|thumb]] Using external pulldown resistor, when didn't press, it is low "0", press for high. ==Program== *LED display button value <source lang="cpp"> const int buttonPin = 2; // Define button input pin const int ledPin = 13; //Define LED pin int buttonState = 0; //Initialize the button value void setup() { pinMode(ledPin, OUTPUT); //Set the LED pin as output pinMode(buttonPin, INPUT); //Set button pin as intpu } void loop(){ buttonState = digitalRead(buttonPin);//Read the value from the buttonPin if (buttonState == HIGH) { digitalWrite(ledPin, HIGH); //If the button input signal is high, the LED will light (LED connect method is that anode connects control pin, cathode connects GND) } else { digitalWrite(ledPin, LOW); //LED goes out } } </source> *LED voltage flip <source lang="cpp"> const int buttonPin = 2; // Define button input pin const int ledPin = 13; int buttonState = 0; boolean led; //Define LED as boolean(true or false) void setup() { pinMode(ledPin, OUTPUT); // pinMode(buttonPin, INPUT); //Set the button pin as input pinMode(buttonPin, INPUT_PULLUP);//Set button pin as interanl pull-up input } void loop(){ buttonState = digitalRead(buttonPin); if (buttonState ==HIGH) //Use the external pull-down, because the initial state is low, only the press is high, the press was flipped, or not it will blink. { delay(200); //Short time delay, stabilization // delay(1000); //Long time press // if (buttonState == LOW) //Check still is low led=!led; //LED state flip } digitalWrite(ledPin, led); } </source> This experiment should be noted the button anti-shake, you can adjust the delay time, or at both ends of the input signal plus a 104 capacitor, then voltage signal does not mutant. The detailed button anti-shake information, please refer to:http://www.geek-workshop.com/thread-74-1-1.html ===digitalRead()usage=== Read a Pin's value and return HIGH or LOW. ==Result== *Program 1:LED display input button value. High value will light LED, or Put out the LED. *Program 2:Each time you press the button, led voltage flipping once, pay attention to button anti-shake. ==Video== |}
该页面使用的模板:
模板:Language
(
查看源代码
)
模板:Nmbox
(
查看源代码
)
返回至
第三课--按钮控制的LED开关
。
导航菜单
个人工具
创建账户
登录
名字空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
Welcome
首页
创客大赛
大赛详情
3D打印
安装月球车
图形化编程
操控月球车
升级月球车
编程工具下载
软件下载
Arduino
Processing
Mixly
Scratch
模块套件
Microduino 102
mCookie 102
mCookie 202
mCookie 302
IBC
其他
应用套件
四轴飞行器
平衡车
小车CUBE
音乐播放器
刷卡音乐播放器
wifi气象站
彩虹音乐触摸灯
分贝检测仪
迎门汇报
LED点阵时钟
LED点阵屏幕
硬件
mCookie
Sensor
Microduino
MicroWrt
MicroNux
MicroRobot-Core
MicroRobot-CoreESP
ideaBoard
ideaBox
MicroMV
MicroAI
帮助
常见问题
帮助
工具
链入页面
相关更改
特殊页面
页面信息