This shows you the differences between two versions of the page.
pm:prj2025:iivasciuc:marina.oprea2302 [2025/05/20 23:11] marina.oprea2302 [Implementation details] |
pm:prj2025:iivasciuc:marina.oprea2302 [2025/05/21 09:09] (current) marina.oprea2302 [Results] |
||
---|---|---|---|
Line 157: | Line 157: | ||
==== Optimizations ==== | ==== Optimizations ==== | ||
-> As mentioned above, rerendering is avoided as much as possible. Thus, when screen changes, tile are rendered only if they have different value than before. \\ | -> As mentioned above, rerendering is avoided as much as possible. Thus, when screen changes, tile are rendered only if they have different value than before. \\ | ||
- | -> When rendering tiles, color is chosen based on their value. In order to perform this efficiently, ILI9341 provided colors are stored in an array and bitwise dividing is used in order to find __idx = log2(val)__. | + | -> When rendering tiles, color is chosen based on their value. In order to perform this efficiently, ILI9341 provided colors are stored in an array and bitwise dividing is used in order to find __idx = log2(val)__. \\ |
+ | -> ''EEPROM.update'' was used instead of ''EEPROM.write'' in order to preserve non-volatile memory lifetime. | ||
==== Used labs ==== | ==== Used labs ==== | ||
* Lab0: GPIO | * Lab0: GPIO | ||
Line 171: | Line 171: | ||
===== Results ===== | ===== Results ===== | ||
[[https://github.com/marinaoprea/2048_Arduino_minigame|GitHub repository]] | [[https://github.com/marinaoprea/2048_Arduino_minigame|GitHub repository]] | ||
+ | |||
+ | [[https://drive.google.com/file/d/1MYe3Vqu2S6hLiaHRXt_nY94sQPNRhBG9/view?usp=sharing | Demo video]] | ||
{{https://drive.google.com/file/d/1Xz-yoFstKYTesYOhvp8GsY_ydz1bZbdR/view?usp=sharing|Start screen image}} \\ | {{https://drive.google.com/file/d/1Xz-yoFstKYTesYOhvp8GsY_ydz1bZbdR/view?usp=sharing|Start screen image}} \\ |