Newton’un hareket yasalarında açıkladığı gibi, her eyleme karşı bir tepki oluşur.
Elektronik sistemler kullanıcılardan komutlar alır ve görevlerini yerine getirir. Bu iş için genellikle bir tuş takımı, dokunmatik ekran veya bir düğme kullanılır. Elektronik cihazlar, kullanıcıya görevinin bittiğini ve görev sırasında neler olup bittiğini bildirmek için sözlü, yazılı veya görsel olarak yanıt verir. Bu tepkiler kullanıcıyı bilgilendirmenin yanı sıra olası bir arızada hatanın nerede olabileceğini anlamaya yardımcı olabilir.
Butonlar, üzerinden girdi sağlayabildiğimiz devre bileşenleridir. Elektronik sistemlerde farklı türlerde butonlar kullanılır: geçiş anahtarları, basmalı butonlar ve daha fazlası.
PicoBricks, potansiyometre ve düğme modülünde 1 ve Micro:Bit’te 2 olmak üzere toplam 3 basmalı düğmeye sahiptir. Basmalı düğmeler anahtarlara benzer şekilde çalışır; basıldıklarında akım iletirler ve bırakıldıklarında iletmezler. PicoBricks, potansiyometre ve düğme modülünde 1 ve Micro:Bit’te 2 basmalı düğme olmak üzere toplam 3 basmalı düğmeye sahiptir. Basmalı butonlar anahtarlar gibi çalışır. Basmalı düğmeler basıldığında akım iletir ve bırakıldığında iletmez.
Projede potansiyometre & buton modülü üzerindeki butona basıldığında Micro:Bit LED matris üzerinde oluşturduğumuz gülen yüz emojisinin yanıp sönmesini sağlayacağız.
Bağlantı Şeması:
Bu projeyi herhangi bir kablo bağlantısı yapmadan hazırlayabilirsiniz.
Proje Görselleri


Projenin MakeCode Kodları:
Projenin Python Kodları:
#Action-Reaction Project
from microbit import *
from picobricks import *
# Pin Initialization
Button_Pin = pin2
# Function Initialization
oled = SSD1306()
oled.init()
oled.clear()
oled.add_text(0,0,"Hello World")
#smile images
pb_smile = [
[1, 1, 0, 1, 1],
[1, 1, 0, 1, 1],
[0, 0, 0, 0, 0],
[1, 0, 0, 0, 1],
[0, 1, 1, 1, 0],
]
#blink images
pb_blink = [
[1, 1, 0, 0, 0],
[1, 1, 0, 1, 1],
[0, 0, 0, 0, 0],
[1, 0, 0, 0, 1],
[0, 1, 1, 1, 0],
]
while True:
button = Button_Pin.read_digital()
if button == 1:
for y in range(5):
for x in range(5):
if pb_blink[y][x] == 1:
display.set_pixel(x, y, 9)
else:
display.set_pixel(x, y, 0)
else:
for y in range(5):
for x in range(5):
if pb_smile[y][x] == 1:
display.set_pixel(x, y, 9)
else:
display.set_pixel(x, y, 0)
Projenin MicroBlocks Kodları:
