fras,systemy wbudowane L, Kontroler51 d藕wi臋k

Systemy wybudowane

Sprawozdanie: Kontroler 8051-d藕wi臋k

Wst臋p teoretyczny

Podczas laboratorium zapoznali艣my si臋 z obs艂ug膮 oraz zasad膮 dzia艂ania g艂o艣nika oraz przerwa艅 .

Naszym zadaniem by艂o napisanie programu w j臋zyku C, dzi臋ki kt贸remu po naci艣ni臋ciu jednego z 8 ustalonych przycisk贸w, us艂yszymy z g艂o艣nika d藕wi臋k o ustalonej cz臋stotliwo艣ci.

cz臋stotliwo艣膰

d藕wi臋ku

warto艣ci zmiennych
523 FC8F
587 FCEF
659 FD45
698 FD6C
784 FDB4
880 FDF4
988 FE2E
1046 FE48

Warto艣ci zmiennych z tabeli po podziale na p贸艂 (czyli po 8 bit贸w) s膮 przypisywane do wart1 i wart2, kt贸re s膮 wykorzystane przez nas w programie. S膮 one obliczone z poni偶szego wzoru.

warto艣ci zmiennych = 65536-(cz臋stotliwo艣膰 zegara(11059200)/(24*cz臋stotliwo艣膰 d藕wi臋ku))

Jak dzia艂a g艂o艣nik oraz jak powstaje d藕wi臋k ???

Do umieszczonej w polu magnetycznym cewki dostarczany jest pr膮d. Odpowiednia cz臋stotliwo艣膰 impuls贸w elektrycznych powoduje wychylanie si臋 karkasu cewki w g贸r臋 i w d贸艂, a wraz z nim membrany g艂o艣nika. Jej wychylanie si臋 powoduje poruszenie cz膮steczek powietrza. Dok艂adnie tak powstaj膮 fale d藕wi臋kowe.

Kod programu

#include "8051.h"

#define TH0_RELOAD 0x49

#define TL0_RELOAD 0x49

#define TIK 9

typedef unsigned char BYTE;

int i;

int wart1;

int wart2;

void timer_isr (void) __interrupt (1) __using (0)

{

TH0= wart1;

TL0= wart2;

P1_0=!P1_0;

}

int main()

{

EA=0;

TMOD= 0x01;

EA=1;

while(1)

{

if (P3_0==0)

{

wart1=0xFC;

wart2=0x8F;

TR0=1;

ET0=1;

while (P3_0==0);

TR0=0;

ET0=0;

}

if (P3_1==0)

{

wart1=0xFC;

wart2=0xEF;

TR0=1;

ET0=1;

while (P3_1==0);

TR0=0;

ET0=0;

}

if (P3_2==0)

{

wart1=0xFD;

wart2=0x45;

TR0=1;

ET0=1;

while (P3_2==0);

TR0=0;

ET0=0;

}

if (P3_3==0)

{

wart1=0xFD;

wart2=0x6C;

TR0=1;

ET0=1;

while (P3_3==0);

TR0=0;

ET0=0;

}

if (P3_4==0)

{

wart1=0xFD;

wart2=0xB4;

TR0=1;

ET0=1;

while (P3_4==0);

TR0=0;

ET0=0;

}

if (P3_5==0)

{

wart1=0xFD;

wart2=0xF4;

TR0=1;

ET0=1;

while (P3_5==0);

TR0=0;

ET0=0;

}

if (P3_6==0)

{

wart1=0xFE;

wart2=0x2E;

TR0=1;

ET0=1;

while (P3_6==0);

TR0=0;

ET0=0;

}

if (P3_7==0)

{

wart1=0xFE;

wart2=0x48;

TR0=1;

ET0=1;

while (P3_7==0);

TR0=0;

ET0=0;

}

}

return 0;

}

Om贸wienie kodu:

W g艂贸wnej p臋tli programu sprawdzamy po kolei ka偶dy przycisk je偶eli, kt贸ry艣 jest wci艣ni臋ty nast臋puje przypisanie zmiennym wart1 i wart2 odpowiednich warto艣ci, kt贸re po po艂膮czeniu stanowi膮 odpowiedni膮 cz臋stotliwo艣膰(spowodowane jest to tym, 偶e rejestry do kt贸rych potem trafi膮 s膮 o艣miobitowe, a warto艣膰 cz臋stotliwo艣ci zapisana jest w postaci 16 bitowej ) . W艂膮czane s膮 przerwania oraz nast臋puje p臋tla 鈥瀙odtrzymuj膮ca鈥 while. Po zwolnieniu przycisku wy艂膮czane s膮 przerwania. Samo odtwarzanie d藕wi臋ku nast臋puje w funkcji przerwania (1), gdzie do odpowiednich rejestr贸w s膮 przypisane warto艣ci zmiennych wart1 i wart2.

Wnioski

-Uk艂ad dzia艂a zgodnie z oczekiwaniami

-Naciskaj膮c kolejno przyciski mo偶na us艂ysze膰 ca艂膮 gam臋.

-Mimo pocz膮tkowego wydobywaj膮cego si臋 z g艂o艣niczka 鈥瀙yk pyk pyk鈥 uda艂o nam si臋 uzyska膰

czysto brzmi膮ce d藕wi臋ki 鈥瀌o re mi fa so la si do鈥


Wyszukiwarka

Podobne podstrony:
fras,systemy wbudowane L, sprawozdanie ARM 7 obs艂uga przetwornika?
fras,systemy wbudowane L, Realizacja mikroprocesora w uk艂adach CPLD
fras,systemy wbudowane L, Wst臋p do mikrokontroler贸w rodziny MCS 51
fras,systemy wbudowane, pytania Nieznany
fras,systemy wbudowane L, Transmisja szeregowa?51
fras,systemy wbudowane L, ARM 7 鈥 obs艂uga wy艣wietlacza LCD
fras,systemy wbudowane L, Obs艂uga wy艣wietlacza siedmiosegmentowego oraz programowanie eliminacji ze
SYSTEMY WBUDOWANE PTOLEMY II PR臉DKO艢膯 D殴WI臉KU PROJEKT 2
Uk艂ady cyfrowe i systemy wbudowane 1 SPRAWOZDANIE 2
SYSTEMY WBUDOWANE MULTISIM 艢WIAT艁A DROGOWE PROJEKT 1
Uk艂ady cyfrowe i systemy wbudowane 1 SPRAWOZDANIE 6
Systemy wbudowane i mikroproces
艣ci膮ga(1), WAT, semestr IV, Systemy wbudowane
Interfejsy w systemach wbudowanych
Pa艅stwowy system nadzoru i kontroli nad warunkami pracy oraz jego zadania i uprawnienia
Om贸wi膰 konstrukcj臋 przyk艂adowych modu艂贸w pomiarowych stosowanych do budowy rozproszonych system贸w po
SldL18 Systemy wbudowane

wi臋cej podobnych podstron