Home - Rasfoiesc.com
Educatie Sanatate Inginerie Business Familie Hobby Legal
Satisfactia de a face ce iti place.ascensiunea īn munti, pe zapada, stānca si gheata, trasee de alpinism




Alpinism Arta cultura Diverse Divertisment Film Fotografie
Muzica Pescuit Sport

Muzica


Index » hobby » Muzica
» smp - simularea unui pian


smp - simularea unui pian


 

SIMULAREA UNUI PIAN

CUPRINS



1. GENERALITATI DESPRE SUNET

A) Sunetul

B) Caracteristici fizice

C) Frecventa

D) Perceptia notelor

E) Viteza sunetului

2. CODUL SURSA

3. IDEEA PROIECTULUI

4. SCHEME ELECTRICE

GENERALITATI DESPRE SUNET

Sunetul

Sunetul este un fenomen fizic care stimuleaza simtul auzului. La oameni auzul are loc cand vibratiile de frecvente intre 15 si 20.000 de hertzi ajung la urechea interna. Hertzul, sau Hz, este unitatea de masura a frecventei egala cu o perioada pe secunda. Astfel de vibratii ajung la urechea interna cand sunt transmise prin aer, si termenul sunet este ceva restrictionat la astfel de unde care vibreaza in aer. Fizicienii moderni, insa, extind termenul pentru a include vibratii similare in medii lichide sau solide. Sunete de frecvente mai mari de 20.000 Hz sunt numite ultrasonice.


Caracteristici fizice :

Orice sunet simplu, cum ar fi o nota muzicala, poate fi descrisa in totalitate, specificand trei caracteristici perceptive: inaltime, intensitate, si calitate (timbru). Aceste caracteristici corespund exact a trei caracteristici fizice: frecventa, amplitudine, si constitutia armonica, sau respectiv forma undei. Zgomotul este un sunet complex, o mixare de multe diferite frecvente, sau note care nu sunt legate armonic.

Frecventa:

Noi percepem frecventa ca sunete mai 'inalte' sau sunete mai 'joase'. Frecventa unui sunet este numarul de perioade, sau oscilatii, pe care o unda sonora le efectueaza intr-un timp dat. Frecventa este masurata in hertzi, sau perioade pe secunda. Undele se propaga si la frecvente mari si la frecvente joase, dar oamenii nu sunt capabili sa le auda in afara unei raze relativ mici. Sunetele pot fi produse la frecvente dorite prin metode diferite. De exemplu, un sunet de 440 Hz poate fi creat activand o boxa cu un oscilator care actioneaza pe aceasta frecventa. Un curent de aer poate fi intrerupt de o roata dintata cu 44 de dinti, care se roteste cu 10 rotatii/secunda; aceasta metoda este folosita la sirena. Sunetul produs de boxa si cel produs de sirena, la aceeasi frecventa este foarte diferit in calitate dar corespund la inaltime.

Perceptia notelor:

Daca urechea unei persoane tinere este testata de un audiometru, se va observa ca este sensibila la toate sunetele de la 15-20 Hz pana la 15.000-20.000 Hz. Auzul persoanelor in virsta este mai putin acut, mai ales la frecvente mai inalte. Gradul in care o ureche normala poate separa doua note de volum putin diferit sau de frecventa putin diferita variaza in diferite raze de volum si frecventa a notelor. O diferenta in inaltime de aproape 20%(1 decibel,dB), si o diferenta in frecventa de 1/3%(aproximativ 1/20 dintr-o nota) poate fi distinsa in sunete de intensitate moderata la frecventele la care urechea este sensibila (intre 1.000-2.000 Hz). Tot in acest interval, diferenta intre cel mai mic sunet care poate fi auzit si cel mai puternic sunet care poate fi perceput ca sunet (sunetele mai puternice sunt 'simtite', sau percepute ca stimuli durerosi) este de aproape 120 dB(de aproximativ 1 trilion de ori mai puternic).

Toate aceste teste de senzitivitate se refera la note pure, cum ar fi cele produse de un oscilator electronic. Chiar si pentru astfel de note urechea este imperfecta. Note de frecventa identica dar cu intensitate foarte diferita par ca difera putin in inaltime. Mai importanta este diferenta intre intensitati aparent relative cu frecvente diferite. La volum inalt urechea este aproximativ la fel de sensibila la toate frecventele, dar la volum mai mic urechea este mai sensibila la frecventele mijlocii decat la cele mari sau mici. Astfel, aparatele care reproduc sunetele si functioneaza perfect, par ca nu reproduc corect notele cele mai mici si cele mai mari, daca volumul este scazut.

Viteza sunetului:

Frecventa unei unde sonore este o masura a numarului de unde care trec printr-un punct dat intr-o secunda. Distanta dintre doua varfuri succesive ale undei (ventre) se numeste lungime de unda. Produsul dintre lungimea de unda si frecventa este egal cu viteza de propagare a undei, si este aceeasi pentru sunetele de orice frecventa (daca sunetul se propaga in acelasi mediu la aceeasi temperatura). Viteza de propagare in aer uscat la temperatura de 0° C(32° F este de 331,6 m/sec). Daca temperatura este marita, viteza sunetului creste; astfel, la 20° C, viteza sunetului este 344 m/sec. Schimbarile presiunii la o densitate controlata, nu au nici un efect asupra vitezei sunetului. Viteza sunetului in alte gaze depinde doar de densitatea acestora. Daca moleculele sunt grele, se misca mai greu, iar sunetul se propaga mai incet. De aceea sunetul se propaga putin mai repede in aer mai umed decat in aer uscat, deoarece aerul umed contine un numar mai mare de molecule mai usoare. Viteza sunetului in cele mai multe gaze depinde de asemenea de un alt factor, caldura specifica, care afecteaza propagarea undelor sonore. Sunetul se propaga, in general, mult mai repede in lichide si solide decat in gaze. Si in lichide si in solide, densitatea are acelasi efect ca in gaze; adica, viteza este invers proportionala cu radacina patrata a densitatii. Viteza mai variaza si direct proportional cu radacina patrata a elasticitatii. Viteza sunetului in apa, de exemplu, este aproximativ 1525 m/sec la temperaturi normale dar creste foarte mult cand creste temperatura. Viteza sunetului in cupru este de aproape 3353 m/sec la temperaturi normale si scade odata cu cresterea temperaturii (din cauza elasticitatii care scade); in otel, care este mult mai elastic, sunetul se propaga cu o viteza de aproape 4877 m/sec, propagandu-se foarte eficient. Undele sonore calatoresc mai rapid si mai eficient in apa decat in aer uscat, permitand animalelor cum ar fi balenele sa comunice intre ele de la distante foarte mari. Balenele si casalotii folosesc undele sonore si pentru a le ajuta sa navigheze in ape intunecate, directionand si primind undele sonore la fel ca un radar al unei nave sau submarin.

CODUL SURSA

INCLUDE 8051.mc  ;includerea constantelor predefinite

; RESET 

ORG 0H

AJMP START

; INTERUPERI

ORG 03H

RETI

ORG 0BH

RETI

ORG 13H

RETI

ORG 1BH

RETI

ORG 23H

RETI

ORG 25H

INITIALIZE: ;set up pr registrii de control

MOV TCON,#00H

MOV TMOD,#00H

MOV PSW,#00H

MOV IE,#00H ;dezactivarea intreruperilor

RET

SUNET1:

MOV R7,#00H

LOOP_SUNET1:

INC R7

MOV A,R7

CJNE A,#B8H,LOOP_SUNET1

RET

SUNET2:

MOV R7,#00H

LOOP_SUNET2:

INC R7

MOV A,R7

CJNE A,#F8H,LOOP_SUNET2

RET

SUNET3:

MOV R7,#00H

LOOP_SUNET3:

INC R7

MOV A,R7

CJNE A,#DAH,LOOP_SUNET3

RET

SUNET4:

MOV R7,#00H

LOOP_SUNET4:

INC R7

MOV A,R7

CJNE A,#CCH,LOOP_SUNET4

RET

SUNET5:

MOV R7,#00H

LOOP_SUNET5:

INC R7

MOV A,R7

CJNE A,#B6H,LOOP_SUNET5

RET

SUNET6:

MOV R7,#00H

LOOP_SUNET6:

INC R7

MOV A,R7

CJNE A,#A4H,LOOP_SUNET6

RET

SUNET7:

MOV R7,#00H

LOOP_SUNET7:

INC R7

MOV A,R7

CJNE A,#90H,LOOP_SUNET7

RET

SUNET8:

MOV R7,#00H

LOOP_SUNET8:

INC R7

MOV A,R7

CJNE A,#88H,LOOP_SUNET8

RET

SUN1 EQU P2.0

SUN2 EQU P2.1

SUN3 EQU P2.2

SUN4 EQU P2.3

SUN5 EQU P2.4

SUN6 EQU P2.5

SUN7 EQU P2.6

SUN8 EQU P2.7

START: 

ACALL INITIALIZE ;set up pt registrii de control

LOOP

TRATARE_1:

JB SUN1,TRATARE_2

CALL SUNET1

CALL SUNET1

CALL SUNET1

CPL P1.0

JMP END_LOOP

TRATARE_2:

JB SUN2,TRATARE_3

CALL SUNET2

CALL SUNET2

CPL P1.0

JMP END_LOOP

TRATARE_3:

JB SUN3,TRATARE_4

CALL SUNET3

CALL SUNET3

CPL P1.0

JMP END_LOOP

TRATARE_4:

JB SUN4,TRATARE_5

CALL SUNET4

CALL SUNET4

CPL P1.0

JMP END_LOOP

TRATARE_5:

JB SUN5,TRATARE_6

CALL SUNET5

CALL SUNET5

CPL P1.0

JMP END_LOOP

TRATARE_6:

JB SUN6,TRATARE_7

CALL SUNET6

CALL SUNET6

CPL P1.0

JMP END_LOOP

TRATARE_7:

JB SUN7,TRATARE_8

CALL SUNET7

CALL SUNET7

CPL P1.0

JMP END_LOOP

TRATARE_8:

JB SUN8,TRATARE_9

CALL SUNET8

CALL SUNET8

CPL P1.0

JMP END_LOOP

TRATARE_9:

END_LOOP:  ;se duce la rutina ce realizeaza delay

JMP LOOP ;sare la LOOP

; s-a terminat! :)

SCHEMA ELECTRICA:


IDEEA PROIECTULUI

In procedurile SUNET1 - SUNET8 stabilim inaltimea notelor muzicale ce vor fi redate cu ajutorul buroanelor. Ele corespund notelor muzicale ale unei game majore. O gama majora e caracterizata de structura ton, ton, semiton, ton, ton, ton, semiton; adica tonuri, si semitonurile pe treptele III - IV, VII - VIII.

Pentru a stabili propriu-zis inaltimea sunetelor, in procedurile amintite mai sus "umblam" la frecventele acestora, folosindu-ne de frecventa semnalelor de ceas, adica inversul perioadei. Mai concret, numarul total de impulsuri pe secunda, il impartim in mai multe grupuri de impulsuri, numarul grupurilor depinzand de (si a stfel obtinindu-se de fapt) inaltimea dorita pentru sunetul respectiv (in limbajul de asamblare acest lucru se realizeaza propriuzis prin incrementarea registrului R7 in mod repetat de atatea ori cat se mentioneaza in linia de cod de forma CJNE A,#**H, LOOP_SUNET*).

Se remarca, spre exemplu, prezenta repetata a liniei de cod "CPL P1.0". Intr-o prima etapa, aceasta contribuie la realizarea efectiva a sunetului astfel: de fiecare data cand se executa programul principal (adica de fiecare data cand trecem prin bucla), aceasta realizeaza o alternanta 1 - 0, care nu este altceva decat emiterea efectiva a sunetului. Motivul pentru care am folosit-o in mod repetat in continuarea programului principal a fost evitarea emiterii unui sunet atata timp cat nic o tasta nu este apasat. Aceasta exprimare nu este tocmai corecta pentru ca in realitate se emite ceva. Dar atat urechea cat si calculatorul sunt pacalite. Linia de cod cu pricina este folosita atat de des, si deci vorbin de o frecventa atat de mare incat nici elementele fizice nu o pot reda cu fidelitate maxima, si chiar daca ar putea, nici urechea nu ar putea-o sesiza.

Se remarca, de asemenea, in sectiunea tratarii sunetelor, ca apelam diverse proceduri de redare a sunetului de un numar diferit de ori: de exemplu sunetul unu are procedura asociata apelata de trei ori, in timp ce toate celelalte au procedurile asociate apelate de doua ori. Explicatia este foarte simpla: acest artificiu nu face altceva, decat sa modifice inaltimea sunetelor intocmai cum facea si cu linia de cod de forma CJNE A,#**H, LOOP_SUNET*. Explicatia este ca, de exemplu, apeland de doua ori o procedura injumatatim perioada (dublam frecventa) sunetului. Este evident ce se intampla in cazul unei apelari repetate de mai multe ori: impartire(respectiv inmultire) la(respectiv cu) 2.

Ideea de baza folosita la construirea schemei pentru generarea unui sunet este preluata intocmai de la o schema care realizeaza palpairea unui led. Singurele diferente care apar sunt faptul ca in locul ledului avem un difuzor si frecventa de palpaire: in cazul ledului foloseam o frecventa mica, de exemplu de doua ori pe secunda, iar in cazul difuzorului frecventa este mare, de ordinul sutelor pe secunda. Este firesc sa fie asa: in primul caz pentru ca ochiul uma sa distinga clar alternanta aprins - stins a ledului, iar in al doilea caz sa NU distinga aceasta alternanta 1 - 0, dimpotriva, rezultatul sa fie perceput ca un sunet continuu.

SCHEMA ELECTRICA DE PRODUCERE A UNUI SUNET :

SCHEMA ELECTRICA PENTRU PALPAIREA UNUI LED:

BIBLIOGRAFIE :

https://www.iguanalabs.com/sound/

Cele mai uzuale acorduri muzicale

https://www.referatele.com/ referate/ Sunetul_in_fizica2005-03-18.html





Politica de confidentialitate





Copyright © 2024 - Toate drepturile rezervate