Realizarea unei aplicații modulare pentru un microcontroler (MCU) care să controleze dispozitive de acționare binare (bec electric sau ventilator) folosind comenzi recepționate prin interfața STDIO, fie prin terminal serial, fie prin tastatură (Keypad), și să raporteze starea actuatorului către un afișaj LCD sau prin interfața serială.
Să se realizeze o aplicație bazată pe MCU care va controla dispozitivele binare de acționare (bec electric sau ventilator), respectând următoarele cerințe:
Control prin interfața STDIO:
Recepționarea comenzilor utilizatorului fie prin intermediul unui terminal serial, fie prin intermediul tastaturii matriciale 4x4.
Comenzile acceptate vor fi:
relay on pentru activarea dispozitivului de acționare;
relay off pentru dezactivarea dispozitivului de acționare.
Raportarea stării actuatorului:
Aplicația trebuie să raporteze confirmarea comenzilor și starea curentă a actuatorului prin intermediul afișajului LCD și/sau a interfeței seriale folosind funcțiile bibliotecii STDIO (ex.: printf()).
Interfață hardware-software clar definită:
Componentele periferice (releu, keypad, LCD etc.) să fie implementate în module separate cu interfețe clar definite.
Control Releu:
Utilizarea pinilor digitali ai MCU pentru a controla releul cu funcția digitalWrite().
Implementarea unei logici clare pentru ON/OFF pe baza comenzilor primite.
Comunicare STDIO:
Pentru terminal serial, utilizarea funcțiilor scanf() și printf() pentru interacțiunea cu utilizatorul.
Pentru Keypad, citirea și interpretarea comenzilor cu biblioteci specifice (ex. Keypad.h).
Task-uri (opțional FreeRTOS):
Implementarea în task-uri dedicate FreeRTOS, pentru gestionarea clară a citirii comenzilor, controlului releului și afișării informațiilor.
printf(), scanf()) pentru interacțiune și raportare.NOTĂ:
Pontajul maxim este posibil doar la prezentarea funcționării fizice complete a soluției și implementarea comportamentului adițional improvizat!
Penalizare: -10% pentru fiecare săptămână întârziere față de termenul stabilit.
Care este principiul de funcționare al unui releu electromagnetic utilizat în aplicațiile embedded?
Cum se realizează citirea comenzilor text folosind interfața STDIO (scanf) și cum sunt acestea interpretate?
Care sunt avantajele implementării modulare a funcționalităților perifericelor în proiectele embedded?
Ce probleme pot apărea la comandarea unui releu și cum pot fi rezolvate acestea (ex.: interferențe electromagnetice)?
De ce este importantă raportarea stărilor actuatorului și cum poate influența această raportare utilizarea aplicației finale?