HS-KEY12A-L 12-Tasten-Matrix-Tastatur

HS-KEY12A-L 12-Tasten-Matrix-Tastatur

1、Einführung

2、Schemazeichnung

3、Modulparameter

Pinbezeichnung

Beschreibung

G

GND(Spannungsversorgungsminus)

V

VCC(Spannungsversorgungsplus)

S

Simulations-Signal-Pin

  • Spannungsversorgung: 3.3V / 5V

  • Verbindungsart: PH2.0 Steckerkabel

  • Montageart: Fest mit vier Schrauben

4, Platinegröße

5、Arduino IDE Beispielprogramm

Arduino UNO Grafische Beispielprogramme:

volatile boolean buttonState;
volatile int buttonvaule;
void light(boolean G, boolean Y, boolean R) {
 digitalWrite(9,G);
 digitalWrite(10,Y);
 digitalWrite(11,R);
}
void setup(){
 Serial.begin(9600);
 buttonState = 0;
 buttonvaule = 0;
 // 按键状态值
 pinMode(A0, INPUT);
 pinMode(9, OUTPUT);
 pinMode(10, OUTPUT);
 pinMode(11, OUTPUT);
}
void loop(){
 //1按键模拟值:36±1;
 //2按键模拟值:76±1;
 //3按键模拟值:108±1;
 //4按键模拟值:139±1;
 //5按键模拟值:169±1;
 //6按键模拟值:196±1;
 //7按键模拟值:216±1;
 //8按键模拟值:235±1;
 //9按键模拟值:252±1;
 //*按键模拟值:270±1;
 //0按键模拟值:285±1;
 //#按键模拟值:307±1;
 //按键没被按下模拟值:1023
 //矩阵键盘接A0,交通灯接D9,D10,D11
 //效果:按下数字0关灯,按下数字1亮绿灯;
 //按下数字2亮黄灯;按下数字3亮红灯;
 buttonvaule = analogRead(A0);
 if (buttonvaule == 1023) {
 buttonState = 0;
 }
 if ((buttonvaule >= 35 && buttonvaule <= 37) && buttonState == 0) {
 light(HIGH, LOW, LOW);
 buttonState = 1;
 } else if ((buttonvaule >= 75 && buttonvaule <= 77) && buttonState == 0) {
 light(LOW, HIGH, LOW);
 buttonState = 1;
 } else if ((buttonvaule >= 107 && buttonvaule <= 109) && buttonState == 0) {
 light(LOW, LOW, HIGH);
 buttonState = 1;
 } else if ((buttonvaule >= 284 && buttonvaule <= 286) && buttonState == 0) {
 light(LOW, LOW, LOW);
 buttonState = 1;
 }
 Serial.println(buttonvaule);
}

ESP32 Python-Beispiel (geeignet für Mixly IDE / Mezishi)
(Entwicklungsboard auswählen Python ESP32 【ESP32 Generic(4MB)】in den Code-Modus wechseln und hochladen ):

import machine


pin25 = machine.Pin(25, machine.Pin.OUT)
pin26 = machine.Pin(26, machine.Pin.OUT)
pin27 = machine.Pin(27, machine.Pin.OUT)
adc32 = machine.ADC(machine.Pin(32))
while True:
if 3000 < adc32.read_u16() < 4000:
pin25.value(1)
pin26.value(0)
pin27.value(0)
print(adc32.read_u16())
elif 11000 < adc32.read_u16() < 13000:
pin25.value(0)
pin26.value(1)
pin27.value(0)
print(adc32.read_u16())
elif 18000 < adc32.read_u16() < 20000:
pin25.value(0)
pin26.value(0)
pin27.value(1)
print(adc32.read_u16())

6、米思齐 Mixly 示例程序(图形化语言)

Arduino UNO Grafische Beispielprogramme:2、第二步将UNO开发板的库文件下载后解压在桌面。

ESP32 Python-Grafikbeispielprogramm:2、第二步将UNO开发板的库文件下载后解压在桌面。

7, Aufbau des Testumgebungs

Testumgebung für Arduino UNO einrichten

Vorbereiten Sie die Komponenten:

  • HELLO STEM UNO R3 Entwicklungsplatine *1

  • HELLO STEM UNO R3 P Erweiterungsplatte *1

  • USB type-c Datenkabel *1

  • Signalmodul (HS-F05L) *1

  • 12-Tasten-Matrixtastatur (HS-KEY12A-L) *1

  • PH2.0 4P-Doppelkopfsteckerkabel *1 Stück

  • PH2.0 3P-Doppelkopfsteckerkabel *1 Stück

Schaltplan der Leitung:

ESP32 Python Testumgebung Einrichtung

8, Video-Tutorial

Arduino UNO Video-Tutorial:Klicken Sie zum Anzeigen

ESP32 Python Videoanleitung:

9, Testergebnis

Arduino UNO Testergebnis:

ESP32 Python-Testergebnis: