Robotyzacja.com

..robotyka wokół naszych myśli

  • Zwiększ rozmiar czcionki
  • Domyślny  rozmiar czcionki
  • Zmniejsz rozmiar czcionki
Automatyka i Robotyka Mikrokontrolery ADUC831 ADUC831 ADC DAC przetwornik cyfrowo-analogowy i analogowo-cyfrowy - Funkcja timera2

ADUC831 ADC DAC przetwornik cyfrowo-analogowy i analogowo-cyfrowy - Funkcja timera2

Email Drukuj
Ocena użytkowników: / 11
SłabyŚwietny 
Spis treści
ADUC831 ADC DAC przetwornik cyfrowo-analogowy i analogowo-cyfrowy
Funkcja timera2
main - inicjalizacja
Pętla główna
Definicje funkcji
Wszystkie strony

////////////////////////////////////////////////////////////

//Funkcja obsługująca przerwanie timera2

///////////////////////////////////////////////////////////

/*

Przykładowy obraz

 

Z powyższego rysunku widać iż 4 strasze bity danych ADCDATAH nie zawieraja informacji o sporóbkowanym sygnale, dlatego założyłem maske ADCDATAH&=~(11110000) oznaczającą zerowanie 4 najstarszych bitów.

Iloczyn logiczny z maską ~(11110000) gdzie tylda (~) oznacza negacje logiczną otrzymująć 00001111. Dla przypomnienia iloczyn logiczny:

0&0=0

0&1=0

1&0=0

1&1=1

 

 

 

Powyższa tabela zawiera wektor przerwań. Timer2 ma pozycje 6 dlatego przy słowie interrupt znajduje się 6 w poniższym kodzie.

DAC0H i DAC0L to odpowiednio 8 straszych i 8 młodzych bitów danchy przetwornika cyfrowo-analogowego.

*/

void przerwanie() interrupt 6{

ADCDATAH&=~(11110000); //skrucenie 16bitów ADC

//do 12bitów DAC

//rozmiar DAC-12bitów

DAC0H =ADCDATAH; //4 starsze bity DAC

DAC0L =ADCDATAL; //8 młodszych bitów DAC

 

 

TL2 = 0xD2; //ustawienie timera2

TH2 = 0xFF; //młodze i starsze 8bitów

//Progaram jest przerywany odkładany na stos i wykonywana jest funkcja przerwania po jej //wykonaniu należy zdjąć danie ze stosu, uzyskujemy to dzięki return.

return;

}



 
Naszą witrynę przegląda teraz 8 gości 

Szukaj artykułu

Partnerzy