用户工具

站点工具


learing:examples:button

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
learing:examples:button [2017/10/05 03:26] 弘毅learing:examples:button [2023/06/07 04:23] (当前版本) – 外部编辑 127.0.0.1
行 1: 行 1:
 +====== Button(按键) ======
 +
 +<WRAP left round info 65%>
 +当你按下按键的时候会接通电路的两点。这个例子是当你按下按键的时候点亮连接在12号脚上的LED。
 +</WRAP>
 +
 +
 +<WRAP left round box 100%>
 +===== ALPHA MEGA328-U核心 =====
 +==== 硬件 ====
 +  * [[ocrobot:alpha:parallelexpansion:index|ALPHA 并行扩展板]]
 +  * [[ocrobot:alpha:mega328-u:main|ALPHA MEGA328-U]]
 +  * [[ocrobot:alpha:microswitch:index|ALPHA 微动开关模块]]
 +  * [[ocrobot:alpha:11led:index|ALPHA 11 LED模块]]
 +==== 搭建电路 ====
 +
 +  - ALPHA MEGA328-U模块插入并行扩展版1号槽位。
 +  - ALPHA 11 LED模块插入1号槽位,堆叠于MEGA328-U上。
 +  - ALPHA 微动开关模块插入并行扩展板2号槽位。
 +  - USB线连接计算机与ALPHA MEGA328-U。
 +
 +==== 代码 ====
 +
 +<code cpp>
 + /*
 +  Button
 + 按下连结在15号脚的按键之后,让LED亮灭
 + */
 +const int buttonPin = 15;     //按键脚
 +const int ledPin =  2;      // LED脚
 +
 + 
 +// 变量:
 +int buttonState = 0;         // 按键状态的变量
 + 
 +void setup() {
 +  // 初始化LED作为输出:
 +  pinMode(ledPin, OUTPUT);      
 +  // 初始化按键作为输入:
 +  pinMode(buttonPin, INPUT);     
 +}
 + 
 +void loop(){
 +  // 读取按键值:
 +  buttonState = digitalRead(buttonPin);
 + 
 +  // 检查按键是否被按下.
 +  //如果是 buttonState就为high:
 +  if (buttonState == HIGH) {     
 +    // 点亮LED:    
 +    digitalWrite(ledPin, HIGH);  
 +  } 
 +  else {
 +    // 熄灭LED:
 +    digitalWrite(ledPin, LOW); 
 +  }
 +}</code>
 +
 +</WRAP>
 +
 +<WRAP left round box 100%>
 +===== ALPHA 8F328D-U核心 =====
 +==== 硬件 ====
 +
 +==== 搭建电路 ====
 +
 +==== 代码 ====
 +</WRAP>
 +
 +<WRAP left round box 100%>
 +===== MangoII =====
 +
 +==== 硬件要求 ====
 +
 +  * OCROBOT控制器
 +  * 按键或开关
 +  * 10K欧姆电阻
 +  * 面包板
 +  * 跳线
 +
 +连接三根线到控制器,前两根红黑线,连接到面包板的长直端,提供5V电压和GND。第三根线连到数字口2到按键。同样的按键一端接下拉电阻(10K欧姆)到GND,按键另一个脚连接到5V。
 +
 +当按键没按下去,也就是断开的时候,是连接到GND的,我们读取到LOW,当按下去,按键两个脚之间接通,进而连接到5V,控制器就读取到5V。
 +
 +你也可以反着来,用上拉电阻保持输入端HIGH,按下后LOW。
 +
 +如果你断开数字脚的连接,LED将会无规律闪烁,因为输入端是悬空着的,会随机返回HIGH或LOW,所以需要在电路里加了上拉电阻或者下拉电阻。
 +
 +==== 代码 ====
 +
 +<code cpp>
 + /*
 +  Button
 + 按下连结在2号脚的按键之后,让LED亮灭
 + */
 +const int buttonPin = 2;     //按键脚
 +const int ledPin =  13;      // LED脚
 +
 + 
 +// 变量:
 +int buttonState = 0;         // 按键状态的变量
 + 
 +void setup() {
 +  // 初始化LED作为输出:
 +  pinMode(ledPin, OUTPUT);      
 +  // 初始化按键作为输入:
 +  pinMode(buttonPin, INPUT);     
 +}
 + 
 +void loop(){
 +  // 读取按键值:
 +  buttonState = digitalRead(buttonPin);
 + 
 +  // 检查按键是否被按下.
 +  //如果是 buttonState就为high:
 +  if (buttonState == HIGH) {     
 +    // 点亮LED:    
 +    digitalWrite(ledPin, HIGH);  
 +  } 
 +  else {
 +    // 熄灭LED:
 +    digitalWrite(ledPin, LOW); 
 +  }
 +}</code>
 +</WRAP>
 +
  
learing/examples/button.txt · 最后更改: 2023/06/07 04:23 由 127.0.0.1