This shows you the differences between two versions of the page.
pm:prj2023:dene:tania.dorobantu [2023/05/26 19:32] tania.dorobantu |
pm:prj2023:dene:tania.dorobantu [2023/05/29 21:06] (current) tania.dorobantu [Bibliografie/Resurse] |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Barber Shop ====== | ====== Barber Shop ====== | ||
- | ===== Introducere ===== | ||
<note tip> | <note tip> | ||
Line 7: | Line 6: | ||
Grupa: 333CC | Grupa: 333CC | ||
</note> | </note> | ||
+ | |||
+ | ===== Introducere ===== | ||
<note tip> | <note tip> | ||
Line 49: | Line 50: | ||
===== Software Design ===== | ===== Software Design ===== | ||
- | |||
<note tip> | <note tip> | ||
- | Descrierea codului aplicaţiei (firmware): | + | Pentru a realiza aceasta aplicatie de tip multitasking am utilizat libraria FreeRTOS deoarece aceasta imi ofera tehnici de management |
- | * mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR) | + | al task-urilor, elemente de sincronizare si ma ajuta sa programez task-urile. |
- | * librării şi surse 3rd-party (e.g. Procyon AVRlib) | + | |
- | * algoritmi şi structuri pe care plănuiţi să le implementaţi | + | |
- | * (etapa 3) surse şi funcţii implementate | + | |
- | </note> | + | |
- | ===== Rezultate Obţinute ===== | + | **Arhitectura software:** |
- | <note tip> | + | **Identificarea task-urilor** |
- | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | + | ● Barber 1, Barber 2, Barber 3: preiau clienți din coadă (accesul se face prin intermediul semaforului binar ”mutex coadă”) și oferă |
+ | servicii de frizerie într-un timp aleatoriu stabilit la început (2,5 - 7,5 secunde) | ||
+ | ● Clienți - adaugă clienți în coada prin apăsarea butonului de intrare doar dacă mai sunt locuri libere | ||
+ | |||
+ | **Identificarea task-urilor** | ||
+ | ● Coada - reprezinta coada de clienti din sala de așteptare și pentru fiecare client existent se aprinde cate un led | ||
+ | ● Display - afișarea pe display-ul TFT a activității de lucru a frizerilor | ||
+ | |||
+ | **Identificare mecanisme de sincronizare** | ||
+ | ● Mutex coadă - folosit pentru stabilirea accesului ordonat al clienților din coadă | ||
+ | ● Mutex buzzer - folosit pentru a anunța intrarea în coadă a unui client și finalizarea serviciilor oferite de frizeri | ||
</note> | </note> | ||
===== Concluzii ===== | ===== Concluzii ===== | ||
+ | |||
+ | In final, am reusit sa obtin un barber shop functional, cu 3 frizeri ce tund in mod eficient clientii aflati in coada fiind afisat | ||
+ | in fiecare moment cine pe cine tunde, timpul ramas din programare si coada de clienti. | ||
===== Download ===== | ===== Download ===== | ||
- | |||
- | <note warning> | ||
- | O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-). | ||
- | |||
- | Fişierele se încarcă pe wiki folosind facilitatea **Add Images or other files**. Namespace-ul în care se încarcă fişierele este de tipul **:pm:prj20??:c?** sau **:pm:prj20??:c?:nume_student** (dacă este cazul). **Exemplu:** Dumitru Alin, 331CC -> **:pm:prj2009:cc:dumitru_alin**. | ||
- | </note> | ||
- | |||
- | ===== Jurnal ===== | ||
<note tip> | <note tip> | ||
- | Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. | + | Aici se poate gasii codul aplicatiei: {{:pm:prj2023:dene:dorobantu_tania_pm.zip|}} |
</note> | </note> | ||
Line 84: | Line 85: | ||
<note> | <note> | ||
- | Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. | + | * https://microcontrollerslab.com/use-freertos-arduino/ |
+ | * https://techtutorialsx.com/2017/05/06/esp32-arduino-creating-a-task/ | ||
</note> | </note> | ||
<html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | <html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | ||