步驟1:硬件清單
3 *杜邦母對母
1 * pcDuino
上一張幻燈片
步驟2:接線圖
霍爾傳感器pcDuino
VCC 3.3V
GND GND
D1-D13之一必須與代碼相同
步驟3:測試代碼
GPIO控制實體類
package com.test;
import java.io.BufferedReader;
import java.io.File ;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
公共類GPIO_Pin {
private String modeURI =“/sys/devices/virtual/misc/gpio/mode/“;
私有字符串statusURI =”/sys/devices/virtual/misc/gpio/pin/“;
private int pin = 0;
public static final String高=“ 1”,低=“ 0”,輸入=“ 0”,輸出=“ 1”,輸入_PU =“ 8 “;
public GPIO_Pin(int引腳){
modeURI + =” gpio“ +引腳;
statusURI + =” gpio“ +引腳;
this.pin =引腳;
}
public GPIO_Pin(String pin){
//終結文件路徑
modeURI + =“ gpio” +引腳;
statusURI + =“ gpio” +引腳;
this.pin =整數。 parseInt(pin);
}
public int getPin(){
return pin;
}
public void overlayURI(String uri){
modeURI = uri +“ mode/gpio “ + pin;
statusURI = uri +” pin/gpio“ + pin;
}
public void setMode(字符串模式){
writeToFile(getModeURI(),mode);
}
public void set(String state){
writeToFile(getStatusURI(),state);
}
public void setHIGH(){
writeToFile(getStatusURI(),HIGH);
}
public void setLOW(){
writeToFile(getStatusURI(),LOW);
}
public void setModeINPUT(){
writeToFile(getModeURI(),INPUT);
}
public void setModeOUTPUT(){
writeToFile(getModeURI(),OUTPUT);
}
public void setModeINPUT_PU(){
writeToFile(getModeURI(),INPUT_PU);
}
public String getModeURI(){
return modeURI;
}
public String getStatusURI(){
return statusURI;
}
public String getPinMode(){
試試{
BufferedReader reader = new BufferedReader(new FileReader(getModeURI()));
字符串數據= reader.readLine();
reader.close();
返回數據;
} catch(IOException e){
}
return“”;
}
public String getPinStatus(){
試試{
BufferedReader reader = new BufferedReader(new FileReader (getStatusURI()));
字符串數據= reader.readLine();
reader.close();
返回數據;
} catch(IOException e){
}
返回“”;
}
私有無效writeToFile(String URI,String data){
試試{
File file = new File(URI);
file.delete();
文件newFile =新文件(URI);
newFile.createNewFile();
FileWriter writer =新FileWriter(URI);
writer.write(data);
writer.close() ;
} catch(IOException e){
e.printStackTrace();
}
}
public static void main(S tring [] args)拋出InterruptedException {
GPIO_Pin ledpin = new GPIO_Pin(1);
ledpin.setModeOUTPUT();
while(true){
ledpin.setHIGH();
線程.sleep(400);
ledpin.setLOW();
Thread.sleep(400);
}
}
}
測試類
包com.trc。 gpio;
公共類測試{
/**
* @param args
* @throws InterruptedException
*/
public static void main(String [] args)拋出InterruptedException {
//TODO自動生成的方法存根
GPIO_Pin buttenpin =新的GPIO_Pin(9);
GPIO_Pin ledpin =新的GPIO_Pin(8);
buttenpin.setModeINPUT();
ledpin.setModeOUTPUT ();
while(true){
System.out.println();
//ledpin.setLOW();
System.out.println(buttenpin.getPinMode());
Thread.sleep(4);
}
}
}
步驟4:測試結果
有金屬蓋時,將顯示不同的顯示。
責任編輯:wv
-
霍爾傳感器
+關注
關注
27文章
736瀏覽量
63460 -
JAVA
+關注
關注
19文章
2978瀏覽量
105365
發布評論請先 登錄
相關推薦
高效學習 霍爾傳感器
霍爾傳感器的輸出電壓大小由誰決定
開關磁阻電機中的霍爾傳感器的作用
霍爾開關傳感器分為哪些類型
霍爾式傳感器可以用于哪些參數測定
霍爾式傳感器的結構及特點
霍爾電流傳感器的原理 霍爾傳感器的特點及作用
霍爾電流傳感器工作原理 霍爾電流傳感器應用案例分析

評論