編輯:關於Android編程
對於硬件的控制,我們常用硬件開關來控制Arduino開發板上其他外接硬件的通斷邏輯。比如,一盞LED燈,硬件上最好有個開關,按一下開關,就讓LED燈亮,再按一下開關,就讓LED燈關閉。
開關的外形有多種式樣,四根引腳、三根引腳。不論是三引腳還是四引腳,原理都是相同的。如果選擇四引腳開關,開發者就得自己搭建一個簡單的電路;三引腳的按鈕開關是對四引腳開關的集成封裝,簡化了外圍電路的設計,很適合對硬件缺乏深入認識的軟件開發者。
這裡我們選用使用最方便的三引腳按鈕開關。我們安豆雜貨鋪提供的按鈕開關,就是這樣的三引腳開關。
三引腳按鈕開關的引腳對應如下,
在實際的使用當中,按鈕開關經常連接到擴展板上。例如這裡將按鈕開關連接到10組擴展口上,
首先我們初始化引腳,按鈕使用的是D10,就要初始化D10為輸入引腳,
int BUTTON_PIN = 10; void setup() { //D10是作為輸入使用的引腳 pinMode(BUTTON_PIN, INPUT); Serial.begin(9600); }
每按一次按鈕,都會觸發按下和
松開兩個響應,也就是說,按鈕按下後會自動彈起,不會保持被按下的狀態,
當按下開關按鈕的時候,S引腳會變成LOW電平; 當松開開關按鈕的時候,S引腳會變成HIGH電平;
所以當出現了這兩個變化的時候,才能判斷按鈕被按下並抬起了一次。
采用
digitalRead()讀取按鈕對應引腳的電平,判斷它當前是否被按下,
//初始情況下,按鈕是沒有按下的,所以是HIGH電平
int oldButtonState = HIGH;
void loop() {
//讀取開關引腳的電平,判斷當前是否被按下
int buttonState = digitalRead(BUTTON_PIN);
//當前被按下(LOW),之前沒有被按下(HIGH),
//說明使用者按下了按鈕
if(buttonState == LOW && oldButtonState == HIGH)
{
Serial.println("button press down");
oldButtonState = buttonState;
}
//當前沒有被按下(HIGH),之前被按下(LOW),
//說明使用者松開了按鈕
if(buttonState == HIGH && oldButtonState == LOW)
{
Serial.println("button press up");
oldButtonState = buttonState;
}
}
5.3 查看結果
把以上代碼部署到設備上,打開串口調試窗口,按下並松開開關,可以看到類似如下輸出信息,
1、Kotlin介紹 [Kotlin](https://kotlinlang.org/) Kotlin是一門基於JVM的編程語言,它正成長為Android開發中用於替代J
昨天的(今天凌晨)的博文《Android中Fragment和ViewPager那點事兒》中,我們通過使用Fragment和ViewPager模仿實現了微信的布局框架。今天
側滑菜單在很多應用中都會見到,最近QQ5.0側滑還玩了點花樣~~對於側滑菜單,一般大家都會自定義ViewGroup,然後隱藏菜單欄,當手指滑動時,通過Scroller或者
1.JDK是向下兼容的,JDK安裝高版本,eclipse、ADT、SDK安裝低本版本是可以的。2.eclipse的版本與ADT、SDK的版本必須是匹配的。無論是低版本的e