from machine import Pin
import time
PRODUCTS = {
"04AABBCC01": ("T-shirt blanc", 12.50),
"04AABBCC02": ("Bouteille d'eau 1L", 1.95),
"04AABBCC03": ("Barre chocolat", 0.95)
}
cart = []
SIMULATED_UIDS = [
"04AABBCC01",
"04AABBCC02",
"04AABBCC03"
]
BUTTON_PINS = [14, 15, 16]
buttons = []
for pin_number in BUTTON_PINS:
button = Pin(pin_number, Pin.IN, Pin.PULL_DOWN)
buttons.append(button)
def find_product_by_uid(uid):#identifier l'article
if uid in PRODUCTS:
return PRODUCTS[uid]
else:
return None
def add_to_cart(uid): #panier
product = find_product_by_uid(uid)
if product is not None:#produit existe
name = product[0]
price = product[1]
cart.append((uid, name, price))
print("Produit ajouté au panier :", name, "-", price, "€")
else:
print("Erreur : UID non reconnu :", uid)
def cart_total():#additionner les prix dans le panier
total = 0
for item in cart:
price = item[2]#3e élément du tuple
total = total + price
return total
print("Simulation de caisse NFC ")
print("Appuie sur un bouton pour simuler un tag NFC.")
print("Bouton sur GP14 -> UID 04AABBCC01")
print("Bouton sur GP15 -> UID 04AABBCC02")
print("Bouton sur GP16 -> UID 04AABBCC03")
print("--------------------------------------------------")
while True:
for index in range(len(buttons)):
button = buttons[index]
if button.value() == 1:
uid = SIMULATED_UIDS[index]
print("\nTag détecté ! UID =", uid)
add_to_cart(uid)
total = cart_total()
print("Total actuel du panier :", total, "€")
while button.value() == 1:
time.sleep(0.05)
time.sleep(0.05)