Architektura, programowanie i zastosowanie mikrokontrolera |
||
|
Grupa:
216 A |
Data wykonania ćwiczenia:
29.05.2006 r. |
1) OPIS STANOWISKA LABORATORYJNEGO:
Na zdjęciu przedstawiono wygląd stanowiska wraz z zaznaczonym rozmieszczeniem poszczególnych elementów.
Wygląd stanowiska
Opis elementów modelu:
Silnik krokowy
Opis parametrów silnika krokowego wraz z przykładową charakterystyką dla tej klasy silników krokowych
Klawiatura
Wyświetlacz
Włącznik układu
Przycisk resetujący układ
Schemat układu
Diody sygnalizujące załączenie tranzystorów
Diody sygnalizujące załączenie uzwojeń silnika
Złącze ISP pozwalające załadować program sterujący
Układ sterownika
Instrukcja obsługi
2) SCHEMAT BLOKOWY
W stanowisku laboratoryjnym, można wyróżnić poszczególne bloki: blok mikrokontrolera, klawiaturę, wyświetlacz, blok sterowania silnikiem oraz silnik.
Na rysunku 1 przedstawiono schemat blokowy układu.
Rys. 1. Schemat blokowy układu sterowania
3) SCHEMATY ELEKTRYCZNE POSZCZEGÓLNYCH UKŁADÓW
Schemat elektryczny zasilacza do układu
Na rysunku 2 przedstawiono schemat elektryczny zasilacza.
Zasilacz stabilizowany dla układu dostarcza dwóch napięć: +5V do zasilania układu scalonego mikroprocesora oraz +12V do zasilania uzwojeń silnika oraz przetwornika cyfrowo-analogowego. Zasilacz został oparty na wykorzystaniu stabilizatorów scalonych 7805 oraz 7812.
Rys. 2. Schemat zasilacza stabilizowanego
Schemat elektryczny układu
Na rysunku 3 przedstawiono schemat elektryczny układu sterowania silnikiem krokowym oraz dla sterowania innymi elementami (silnikiem prądu stałego, diodami świecącymi, przetwornikiem dźwiękowym itd.). Wyróżnione na nim zostały bloki: mikroprocesora oraz układy wejścia wyjścia.
Rys. 3 Schemat głównego układu mikrokontrolera
Rys. 4. Zdjęcie płytki sterownika wraz zamontowanymi elementami
4) PRZYKŁADOWE KONFIGURACJE:
Przerzutnik monostabilny:
'PRZERZUTNIK MONOSTABILNY ====================================================
' Konfiguracja
$regfile = "8535def.dat"
$crystal = 8000000
' wylacz silnik DC
Config Pind.5 = Output
Reset Pind.5
' Konfiguracja wyswietlacza LCD
Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = Portb.7 , Db5 = Portb.6 , Db6 = Portb.5 , Db7 = Portb.4 , E = Portb.2 , Rs = Portb.3
Config Lcd = 16 * 2
' konfiguracja portow
Config Pina.0 = Input 'przycisk S1 jako port we
Config Pina.4 = Output 'dioda LED1 jako wy
Porta.4 = 1 'wylaczenie diody
Cls
Do
Home Upper
If Pina.0 = 0 Then
Porta.4 = 0 ' załacznie lampki
Lcd " zapalam LED 1 " 'wyświetlenie na wyświetlaczu LCD
Wait 5 'odmierza czas ..sek
End If
Cls
Porta.4 = 1
Lcd "LED wyl.- S1 "
Loop
End
Woltomierz:
' Konfiguracja wyswietlacza LCD
Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = Portb.7 , Db5 = Portb.6 , Db6 = Portb.5 , Db7 = Portb.4 , E = Portb.2 , Rs = Portb.3
' konfiguracja wyjsc
Config Pina.2 = Input
Dim Wartosc As Word
Dim Napiecie As Single
Dim Przelicznik As Single
' konfiguracja przetwornika
Config Adc = Single , Prescaler = Auto
' Procedura glowna programu
'===============================================================================
'Wystartuj przetwornik
Start Adc
Cursor Off
Upperline : Lcd " Multimetr "
Lowerline : Lcd "Napiecie:" : Lcd Wartosc : Lcd " "
' wartosc mnoznika dla napiecia
Przelicznik = 0.00484282907
'Petla zczytywania przetwornika
Wartosc = 0
Do
'pobieranie wartosci z przetwornika z kanalu drugiego (PA.2)
Wartosc = Getadc(2)
' obliczanie napiecia
Napiecie = Przelicznik * Wartosc
Napiecie = 5 - Napiecie
Lowerline : Lcd "Napiecie:" : Lcd Napiecie : Lcd " "
Loop
Wyświetlacz LCD
Klawiatura
Silnik
TDA844
DAC4
DAC3
DAC2
DAC1
ATMEL
8535
I2C
E
Reg.napięcia 1
Reg.napięcia 2
Reg.napięcia
Reg. napięcia 4