PROIECTE 2011
Proiectele realizate in cadrul Laboratorului de SMP, 2011, le gasiti mai jos, Fiecare echipa are de completat in pagina WIKI corespunzatoare proiectului sau capitolele existente.
Punctaj Proiect
-
2p Pagina Wiki in format HTML cu capitolele create - poze(diferite stadii ale proiectului) + schema hardware + listing software (microcontroller + OpenWatcom la Z3)
-
5p Functionalitate proiect - punctaj in functie de cerintele cerute/realizate
-
1p Calitatea proiectului - cat de organizati ati fost in realizarea acestuia, cod format frumos, optimizari etc...
-
2p Nota individuala - participarea voastra in proiect, raspunsul vostru la intrebarile laborantului la presentarea proiectului
Cerinte general valabile:
- Toate proiectele se vor integra software si/sau hardware cu placa EV/Z3. Pentru integrarea hardware se va folosi portul serial al placii EV/Z3
- Logica software de baza se va regasi pe placa EV/Z3 si va fi realizata în C + inline assembly folosind template-ul OpenWatcom de la laborator
- Pagina de wiki trebuie sa contina o descriere a ce a realizat fiecare student in cadrul proiectului
- Daca nu puneti pe site alta schema de proiectare hardware se va folosi cea cu PIC16F628A pusa la dispozitie
- Wiki-ul trebuie updat ca sa vad stadii intermediare ale proiectului
Elemente de electronica
-
Pentru a vedea/comanda un pret estimativ a componentelor va propun www.conexelectronic.ro . Mi-a fost recomandat si mie de ceilalti laboranti.
-
Pentru conectarea la porturile de I/O trebuie sa izolati galvanic folosind optocuploare, ex LTV817 - puteti sa cautati pe site, si rezistente sa limiteze curentul maxim la 5mA U=R*I si trebuie avut in vedere ca rezistentele sa reziste la puterea la care e proiectat circuitul P=U*I...
-
Pentru alte elemente elecronice puteti folosi diode 1N4007, tranzistori BD139/140 de putere mare. Binenteles ca nu sunteti limitati la folosirea acestora, e doar o propunere.
-
Letconul ar trebui sa aiba cam 40W , nu mai mult de 60 oricum , iar fludorul la 1mm-1.5mm. Sa aveti si un voltmetru cu voi.
-
Va recomand inainte sa alegeti proiectul sa cititi cateva elemente de electronica de AICI.
2011_P18
(Restore this version)
Modified: 5 April 2010, 3:12 PM User: Tonia Robitu → TR
Instrument Muzical
Descrierea proiectului
Proiectul presupune redarea sunetului a trei instrumente muzicale cu ajutorul tastaturii placutei EV/Z3.
Doua din cele trei instrumente, pianul si chitara, vor fi actionate de la tastatura placutei, sunetul fiind redat cu ajutorul unui player prin intermediul calculatorului Al treilea instrument, flautul, va fi actionat cu ajutorul tastaturii placii, in schimb sunetul va fi redat prin buzzer-ul incorporat pe placuta EV/Z3.
Cerintele proiectului
Placa EV/Z3 se concteaza la PC prin seriala.
La PC vom reda sunete cu ajutorul programului MIDIPlayer.
La pornirea aplicatiei, pe display va fi afisat instrumentul selectat, presetat este Pianul.
Pentru a face comutarea intre cele trei instrumente : Pian, Flaut si Chitara; se vor apasa tastele 1,2 sau 3. Aplicatia mai permite si redarea unei melodii aflate in memorie, tasta 0, cat si modificarea frecventelor notelor flautului, tasta 4.
Pentru a iesi din modulul de selectare al instrumentului se va apasa pe orice tasta in afara celor 5 (0-4). Se va realiza saltul catre instrumentul dorit, pe display ramanand numele instrumentului selectat pana se va apasa prima nota, apoi afisandu-se nota apasata cu frecventa acesteia.
Pian
Pentru simularea comportamentului pianului s-au atribuit fiecarei taste de la 1pana la 9 cate o frecventa din cadrul primei octave.
Pentru iesirea din pian, se va apasa o tasta A-F sau 0, taste neatribuite cu nici o nota. Saltul se va realiza inapoi la selectia instrumentului.
Flaut
Functionalitatea flautului a fost simulata in mod asemanator cu cele ale chitarei si pianului, variind doar frecventa si numarul tastelor ce simuleaza iesirile din cadrul flautului, trei la numar.
Pentru iesirea din programul de simulare a fluierului se va apasa orice tasta intre 4-F sau tasta 0.
Componente
INT 10H
Aceasta intrerupere comanda emiterea de sunete cu buzzer-ul. Este posibilspecificarea frecventei si duratei sunetului emis.
INPUT BX = duration
CX = frequency
OUTPUT none Altered none Registers
Z3ev_io.c
S-au implementat trei functii specializate: Afisare, Sound si Pred (predefinit)
Sound are ca parametrii frecventa si durata sunetului de redat, avand rolul de a accesa intreruperea buzzerului (10H), iar functia Pred are rolul de a reda o succesiune de frecvente predefinite si de a accesa intreruperea de buzzer pentru fiecare frecventa in parte.
Functia de Afisare primeste ca parametru frecventa introdusa de la tastatura, o converteste intr-un string dupa care o afiseaza pe display-ul EVZ3.
Algoritmul se bazeaza pe impartirea numarului cu rest la 10 si pe urma impartirea numarului la 10, adaugarea resturilor intr-un vector de caractere, pornind de la dreapta spre stanga, exact in ordinea obtinerii resturilor. Pe pozitiile imediat urmatoare inserarii frecventei, se vor adauga caracterele H si z, de la Hertz.
o sa aveti un program care va asculta prin seriala notele de la instrumentul curent folsit (precum si gama) si le va randa. Puteti folosi un player de MIDI si uitati-va si pe specificatia protocolului.
La placa EV/Z3 utilizatorul va alege unul din cele 2 intrumente puse la dispozitie. Pe LCD-ul placii se va afisa instrumentul curent: "Chitara"
Apoi user-ul va alege o gama. Tot asa pe LCD se va pune gama posibila (2 game pentru fiecare instrument - puteti sa folositi 3 butoane)
Pentru a canta userul va apasa din tastele placii. Placa va trimite un caracter pentru fiecare tasta apasata prin seriala PC-ului. Acesta o va canta.
Atentie: cand trimiteti un caracter , acesta va encoda cei 3 parametrii folositi - instrument + gama + nota:
|1b instr| 1b gama| 6b nota curenta|
Un al 3-llea instrument reprezinta buzzerul. Acesta va actiona ca un subwoofer :) . Pentru notele joase < o valoare si o anumita gama acesta va bipaii pana cand utilizatorul nu apasa alta nota.
De asemenea bipaitul (frecventa) va fi data de nota apasata. Aceeasi nota se trimite pentru a fi randata si la PC
User Flow
Descriere cum poate un utilizator sa foloseasca proiectul. Pasii necesari pentru a-l pune in functiune. Elemente generale pe care le puneti la dispozitie unui utilizator.
Sectiunea aceasta va fi completata cu screenshot-uri ale proiectului vostru in functiune - frumos ar fi un film pe youtube.
Required components
Componentele pe care le-ati folosit:
- in cadrul proiectelor cu elemente hardware - lista de componente + poza facuta. De asemenea trebuie sa adaugati si o schema (poza) cu simularea aplicatiei vostre intr-un IDE.
Daca folositi schema cu PIC16F628A trebuie sa adaugati la ea componentele folosite (sa legati ledurile de exemplu la PIC) si sa puneti un screenshot,
- in cadrul proiectelor software - poza cu placa EV/Z3 pe care o editati in paint cu componentele folosit - gen LCD, tastatura.
De asemenea veti preciza si ce functii din interfata platform_io.h ati folosit si de ce.
Software Design
Descrierea codului aplicaţiei din punct de vedere software. Va include listing despre partea importanta a codului, algoritmi folositi. In caz ca folositi si un uC la placa secundara
codul pentru aceia. Se va adauga si modalitatea de compilare, ce IDE(Proteus, AVR Studio, Open Watcom) ati folosit in compilare
Results
O imagine de ansamblu a cum functioneaza proiectul, screenshoturi, filmulete cu proiectul functionand. Alte detalii care le credeti importante.
Download
Arhiva cu schema hardware + cod microcontroller + tot proiectul OpenWatcom.
Arhiva va contine 2 directoare (1 singur pentru proiecte doar software)
Hardware design - schema uC + codul folosit pentru a genera fisierul .HEX
Software design - template-ul Open Watcom folosit
Status
O pagina in care sa updatati saptamanal cum stati cu proiectul. Sa spuneti ziua in care ati realizat diferite componente
Eg
1 Mai - board finaly done
15 Mai - board working - starting to write EV/Z3 software part