Cuprins
- 1. Prezentarea generală a aplicaţiei 2
- 2. Prezentarea componentelor implementate 3
- 2.1. Modulul PIT 3
- 2.2. Modulul de conversie analog-numerică 5
- 2.3. Portul paralel B 11
- 2.4. Aplicaţie soft 11
- 3. Organigramă aplicaţie soft 14
- 4. Bibliografie 14
Extras din proiect
1. Prezentarea generală a aplicaţiei
Aplicaţia permite măsurarea amplitudinii unui semnal periodic aplicat de la un generator de semnal. Semnalul este aplicat la pinul 67 al procesorului, corespunzător canalului 0 al convertorului analog-numeric cu 8 canale ATD0. Secvenţa de conversii analog-numerice (care va conţine o singură conversie) se declanşează la comanda modulului temporizator pentru întreruperi periodice PIT. În momentul terminării unei conversii, ATD0 generează o întrerupere, în care se fac prelucrările software necesare asupra eşantionului obţinut prin conversie analog-numerică. După prelucrare, rezultatul numeric, reprezentând valoarea amplitudinii semnalului de intrare comanda aprinderea led-urilor de la portul B.
Eşantionarea se va face cu o frecvenţă fE=10 kHz, ceea ce înseamnă o perioadă a temporizării de TE= =100 μs. Astfel, conversiile analog-numerice se vor efectua cu perioada TE. Comanda ATD0 se realizează de către modulul PIT. Acesta generează evenimente periodice concretizate prin semnale, transmise convertorului analog-numeric o dată la 100 μs. Temporizatorul conţine un numărător al cărui conţinut se decrementează cu câte o unitate la fiecare impuls de intrare, de frecvenţă dată fBUS. Temporizarea (evenimentul) corespunde anulării conţinutului numărătorului. Primul impuls de intrare după anularea conţinutului numărătorului declanşează încărcarea numărătorului cu o constantă de timp CT memorată într-un registru şi a cărei valoare determină durata temporizării. După încărcarea constantei de timp se continuă cu decrementarea conţinutului numărătorului rezultând temporizări periodice. Procedura prezentată corespunde funcţionării unui numărător modulo (CT+1) cu decrementare (modulus down-counter). Perioada temporizării este (CT+1)/f, unde f este frecvenţa semnalului de la intrarea numărătorului.
Semnalul generat de PIT constituie semnal de comandă pentru convertorul analog-numeric ATD0, care va eşantiona cu perioada TE semnalul periodic de intrare. La terminarea conversiei analog-numerice se generează o întrerupere.
În cadrul blocului de prelucrare software eşantioanele rezultate se introduc într-un şir reprezentând o “fereastră temporală”, care funcţionează pe principiul cozii FIFO. În această fereastră se reţin 100 de eşantioane, cel curent fiind depus la coada şirului. Se calculează maximul acestui şir de eşantioane care reprezintă de fapt valoarea corespunzătoare amplitudinii semnalului. Pentru o precizie mai mare, se calculează 20 de astfel de valori maxime. Ele se sortează crescător, după care se elimină cele mai mici 3 valori şi cele mai mari 3 valori pentru neglijarea rezultatelor eventual aberante. Apoi se calculează o medie a valorilor maxime rămase. În funcţie de valoarea numerică a acesteia, se comandă aprinderea graduală a led-urilor de la portul paralel B al sistemului de dezvoltare SK-Z12A. Comanda se realizează prin compararea cu anumite valori-prag a mediei, ţinând cont ca valoarea maximă a amplitudinii este 5,1 V. Astfel, cuanta convertorului pe N=8 biţi este Ştind că avem 8 led-uri, vom împarţi domeniul 0÷5,1 V în trepte de 0,7 V, calculând pragul numeric corespunzător cu formula , unde În funcţie de intervalul căruia îi aparţine media, vor fi luate deciziile de a aprinde 0, 1 8 led-uri. Pentru valori mai mari de 5,1 V, se vor aprinde intermitent 8 respectiv 0 led-uri, pentru a semnala ca amplitudinea depăşeşte limita maximă admisă.
Preview document
Conținut arhivă zip
- Masurarea Amplitudinii unui Semnal Periodic.doc