This shows you the differences between two versions of the page.
|
pm:prj2026:atoader:george.simion2005 [2026/05/24 17:16] george.simion2005 [Folosirea conceptelor din laboratoare] |
pm:prj2026:atoader:george.simion2005 [2026/05/25 17:59] (current) george.simion2005 |
||
|---|---|---|---|
| Line 63: | Line 63: | ||
| * **Status** - afisarea starii sistemului. | * **Status** - afisarea starii sistemului. | ||
| - | {{:pm:prj2026:atoader:flipperone_blockdiagram_george.simion2005.png?700|Schema bloc Flipper One}} | + | {{:pm:prj2026:atoader:flipperone_blockdiagram_george.simion2005.png?600|}} |
| ===== Hardware Design ===== | ===== Hardware Design ===== | ||
| Line 89: | Line 88: | ||
| PN532 si PCF8574 sunt pe aceeasi magistrala I2C, iar OLED-ul si MicroSD-ul impart magistrala SPI. Pentru a evita conflictele pe SPI, fiecare dispozitiv are pinul sau de chip select: OLED pe D10 si SD pe A3. | PN532 si PCF8574 sunt pe aceeasi magistrala I2C, iar OLED-ul si MicroSD-ul impart magistrala SPI. Pentru a evita conflictele pe SPI, fiecare dispozitiv are pinul sau de chip select: OLED pe D10 si SD pe A3. | ||
| - | {{:pm:prj2026:atoader:fliiper1_real.jpeg?900|Montajul fizic Flipper One}} | + | {{:pm:prj2026:atoader:flipper1_real.png?650}} |
| - | {{:pm:prj2026:atoader:schema_flipper1.png?900|Schema hardware detaliata a montajului}} | + | {{:pm:prj2026:atoader:schema_flipper1.png?650}} |
| ==== Componente folosite ==== | ==== Componente folosite ==== | ||
| Line 133: | Line 132: | ||
| | **A5** | SCL PCF8574 + PN532 | Magistrala I2C | | | **A5** | SCL PCF8574 + PN532 | Magistrala I2C | | ||
| - | ==== Conexiuni importante ==== | + | ==== Conexiuni ==== |
| === OLED SPI === | === OLED SPI === | ||
| Line 392: | Line 391: | ||
| Cele mai mari probleme au fost: | Cele mai mari probleme au fost: | ||
| * zgomotul RF produs de receptor in lipsa unui semnal util; | * zgomotul RF produs de receptor in lipsa unui semnal util; | ||
| - | * bufferul mic disponibil pentru raw RF; | ||
| - | * incompatibilitatea unor telecomenzi cu RCSwitch; | ||
| * memoria Flash foarte limitata; | * memoria Flash foarte limitata; | ||
| * memoria RAM limitata, mai ales cand SD, SoftwareSerial si OLED sunt folosite simultan; | * memoria RAM limitata, mai ales cand SD, SoftwareSerial si OLED sunt folosite simultan; | ||
| - | * conflictele potentiale pe SPI intre OLED si MicroSD, rezolvate prin control atent al pinilor CS. | + | * conflictele intalnite pe parcursul motanrii pe SPI intre OLED si MicroSD; |
| ===== Concluzii ===== | ===== Concluzii ===== | ||
| Line 405: | Line 402: | ||
| Pe langa RF, resursele foarte limitate ale lui ATmega328P au adus mai multe **constrangerile de memorie** greu de rezolvat, combinatia dintre OLED, SD, ESP, PN532, RF Raw/RCSwitch a fortat optimizari serioase. In final, modularizarea in doua firmware-uri separate a fost solutia corecta: firmware-ul principal pentru RFID/WiFi/SD/RFraw si firmware-ul RF pentru captura/decodare/salvare RF. | Pe langa RF, resursele foarte limitate ale lui ATmega328P au adus mai multe **constrangerile de memorie** greu de rezolvat, combinatia dintre OLED, SD, ESP, PN532, RF Raw/RCSwitch a fortat optimizari serioase. In final, modularizarea in doua firmware-uri separate a fost solutia corecta: firmware-ul principal pentru RFID/WiFi/SD/RFraw si firmware-ul RF pentru captura/decodare/salvare RF. | ||
| - | ===== Download ===== | + | ===== Link-uri si Resurse ===== |
| + | |||
| + | Pentru documentarea si realizarea acestui proiect, am consultat urmatoarele resurse tehnice si bibliografii: | ||
| + | |||
| + | ==== Cod ==== | ||
| + | |||
| + | * **GitHub:** [[https://github.com/George0Simion/FlipperOne|FlipperOne]] | ||
| + | |||
| + | ==== Laboratoare PM ==== | ||
| + | |||
| + | Resurse utilizate pentru implementarea interfetelor, perifericelor si comunicatiilor cu modulele externe: | ||
| + | |||
| + | * [[https://ocw.cs.pub.ro/courses/pm/lab/lab0-2024|Lab 0 - GPIO]] | ||
| + | * [[https://ocw.cs.pub.ro/courses/pm/lab/lab1-2023|Lab 1 - UART]] | ||
| + | * [[https://ocw.cs.pub.ro/courses/pm/lab/lab2-2023|Lab 2 - Intreruperi]] | ||
| + | * [[https://ocw.cs.pub.ro/courses/pm/lab/lab3-2023-2024|Lab 3 - Timere / PWM]] | ||
| + | * [[https://ocw.cs.pub.ro/courses/pm/lab/lab5-2023-2024|Lab 5 - SPI]] | ||
| + | * [[https://ocw.cs.pub.ro/courses/pm/lab/lab6-2023-2024|Lab 6 - I2C / TWI]] | ||
| + | |||
| + | ==== Datasheet-uri si Documentatii Componente ==== | ||
| - | * [[https://ocw.cs.pub.ro/courses/pm/prj2026/atoader/george.simion2005|Link pagina proiect]] | + | Documentatia tehnica oficiala a componentelor si bibliotecilor utilizate: |
| - | * [[https://ocw.cs.pub.ro/courses/pm/prj2026/atoader/george.simion2005?do=export_pdf|Export in PDF]] | + | |
| - | * [[?do=export_pdf|Buton export PDF pentru pagina curenta]] | + | |
| - | * Cod sursa: se incarca separat ca arhiva PlatformIO / GitHub. | + | |
| - | ===== Bibliografie / Resurse ===== | + | * **Microcontroler:** [[https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf|ATmega328P Datasheet]] |
| + | * **Arduino UNO:** [[https://docs.arduino.cc/hardware/uno-rev3/|Arduino UNO Rev3 Documentation]] | ||
| + | * **PlatformIO:** [[https://docs.platformio.org/|PlatformIO Documentation]] | ||
| + | * **OLED SH1106 / U8g2-U8x8:** [[https://github.com/olikraus/u8g2|U8g2 / U8x8 Library]] | ||
| + | * **RCSwitch:** [[https://github.com/sui77/rc-switch|RCSwitch Library]] | ||
| + | * **ESP8266 / ESP-01 AT Commands:** [[https://www.espressif.com/sites/default/files/4a-esp8266_at_instruction_set_en_v1.5.4_0.pdf|ESP8266 AT Instruction Set]] | ||
| + | * **PN532 RFID/NFC:** [[https://www.nxp.com/docs/en/user-guide/141520.pdf|PN532 NXP User Manual]] | ||
| + | * **Arduino SD Library:** [[https://docs.arduino.cc/libraries/sd/|SD Library Documentation]] | ||
| - | * [[https://docs.arduino.cc/hardware/uno-rev3/|Documentatie Arduino UNO / ATmega328P]] | + | <html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> |
| - | * [[https://docs.platformio.org/|Documentatie PlatformIO]] | + | |
| - | * [[https://github.com/olikraus/u8g2|Documentatie U8g2 / U8x8]] | + | |
| - | * [[https://github.com/sui77/rc-switch|Documentatie RCSwitch]] | + | |
| - | * [[https://www.espressif.com/sites/default/files/4a-esp8266_at_instruction_set_en_v1.5.4_0.pdf|Documentatie ESP8266 AT Commands]] | + | |
| - | * [[https://www.nxp.com/docs/en/user-guide/141520.pdf|Documentatie PN532 - NXP User Manual]] | + | |
| - | * [[https://docs.arduino.cc/libraries/sd/|Documentatie SD library Arduino]] | + | |
| - | * [[https://ocw.cs.pub.ro/courses/pm/lab/lab0-2024|Laboratorul 0 - GPIO]] | + | |
| - | * [[https://ocw.cs.pub.ro/courses/pm/lab/lab1-2023|Laboratorul 1 - UART]] | + | |
| - | * [[https://ocw.cs.pub.ro/courses/pm/lab/lab2-2023|Laboratorul 2 - Intreruperi]] | + | |
| - | * [[https://ocw.cs.pub.ro/courses/pm/lab/lab3-2023-2024|Laboratorul 3 - Timere / PWM]] | + | |
| - | * [[https://ocw.cs.pub.ro/courses/pm/lab/lab4-2023-2024|Laboratorul 4]] | + | |
| - | * [[https://ocw.cs.pub.ro/courses/pm/lab/lab5-2023-2024|Laboratorul 5 - SPI]] | + | |
| - | * [[https://ocw.cs.pub.ro/courses/pm/lab/lab6-2023-2024|Laboratorul 6 - I2C]] | + | |