This shows you the differences between two versions of the page.
pm:prj2024:iotelea:alexandra.craciun02 [2024/05/25 16:45] alexandra.craciun02 [Software Design] |
pm:prj2024:iotelea:alexandra.craciun02 [2024/05/26 19:03] (current) alexandra.craciun02 [Hardware Design] |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Flashback photo frame ====== | ====== Flashback photo frame ====== | ||
- | Nume: Craciun Alexandra-Georgiana | + | <note>Nume: Craciun Alexandra-Georgiana |
- | Grupa: 331CB | + | Grupa: 331CB</note> |
Line 28: | Line 28: | ||
===== Hardware Design ===== | ===== Hardware Design ===== | ||
- | Lista de piese: | + | **Lista de piese:** |
<note tip> | <note tip> | ||
- placa Arduino | - placa Arduino | ||
Line 43: | Line 43: | ||
- | Conectare piese: | + | **Conectare piese:** |
* Ecran LCD - Arduino: | * Ecran LCD - Arduino: | ||
Line 86: | Line 86: | ||
- | Asamblare hardware: | + | **Asamblare hardware:** |
+ | |||
+ | Inainte de cod | ||
+ | |||
+ | {{ :pm:prj2024:iotelea:hardware.jpg?nolink&500 |}} | ||
+ | |||
+ | Varianta intermediara | ||
{{ :pm:prj2024:iotelea:hard_final.jpeg?nolink&400 |}} | {{ :pm:prj2024:iotelea:hard_final.jpeg?nolink&400 |}} | ||
+ | Varianta finala | ||
+ | |||
+ | {{ :pm:prj2024:iotelea:final2.jpeg?nolink&500 |}} | ||
===== Software Design ===== | ===== Software Design ===== | ||
Line 104: | Line 113: | ||
Principala funcție de execuție, loop(), coordonează afișarea imaginilor BMP pe ecranul TFT, încărcând și afișând fiecare imagine în conformitate cu interacțiunile utilizatorului. Funcția bmpDraw() este responsabilă de deschiderea și afișarea fiecărei imagini BMP, inclusiv aplicarea unui filtru alb-negru opțional. | Principala funcție de execuție, loop(), coordonează afișarea imaginilor BMP pe ecranul TFT, încărcând și afișând fiecare imagine în conformitate cu interacțiunile utilizatorului. Funcția bmpDraw() este responsabilă de deschiderea și afișarea fiecărei imagini BMP, inclusiv aplicarea unui filtru alb-negru opțional. | ||
+ | **Variabile globale** | ||
+ | |||
+ | <code c> | ||
+ | #define PIN_SD_CS 4 | ||
+ | #define PIN_TFT_CS 10 | ||
+ | #define PIN_DC 9 | ||
+ | #define PIN_RST 8 | ||
+ | #define BUTTON_PIN 2 | ||
+ | #define BACKLIGHT_PIN 5 | ||
+ | #define SENSOR_PIN 3 | ||
+ | #define BUTTON_PIN_NEXT 6 | ||
+ | #define BUTTON_PIN_BACK 7 | ||
+ | |||
+ | #define DELAY_IMAGE_SWAP 5000 // each image is shown for 5 seconds | ||
+ | #define BUFFPIXEL 20 // Number of pixels to buffer | ||
+ | |||
+ | int filtru = 0; | ||
+ | String currentFile; | ||
+ | unsigned long lastDebounceTime = 0; // Last pressed time | ||
+ | unsigned long debounceDelay = 50; // press interval | ||
+ | |||
+ | TFT TFTscreen = TFT(PIN_TFT_CS, PIN_DC, PIN_RST); //init screen | ||
+ | |||
+ | LinkedList<String> bmpFiles; // List to store all BMP files | ||
+ | int currentFileIndex = -1; // Index of the current file being displayed | ||
+ | |||
+ | </code> | ||
**Descriere Funcții** | **Descriere Funcții** | ||
Line 267: | Line 303: | ||
{{:pm:prj2024:iotelea:pm_photo_frame.rar|}} | {{:pm:prj2024:iotelea:pm_photo_frame.rar|}} | ||
- | |||
===== Rezultate Obţinute ===== | ===== Rezultate Obţinute ===== | ||