Technika mikroprocesorowa laboratorium. dr inż. Dorota Rabczuk

Wielkość: px
Rozpocząć pokaz od strony:

Download "Technika mikroprocesorowa laboratorium. dr inż. Dorota Rabczuk"

Transkrypt

1 Technika mikroprocesorowa laboratorium dr inż. Dorota Rabczuk

2 Features High Performance, Low Power AVR 8-Bit Microcontroller Advanced RISC Architecture 131 Powerful Instructions Most Single Clock Cycle Execution 32 x 8 General Purpose Working Registers Fully Static Operation Up to 20 MIPS Throughput at 20 MHz On-chip 2-cycle Multiplier High Endurance Non-volatile Memory Segments 4/8/16/32K Bytes of In-System Self-Programmable Flash progam memory (ATmega48PA/88PA/168PA/328P) 256/512/512/1K Bytes EEPROM (ATmega48PA/88PA/168PA/328P) 512/1K/1K/2K Bytes Internal SRAM (ATmega48PA/88PA/168PA/328P) Write/Erase Cycles: 10,000 Flash/100,000 EEPROM Data retention: 20 years at 85 C/100 years at 25 C(1) Optional Boot Code Section with Independent Lock Bits In-System Programming by On-chip Boot Program True Read-While-Write Operation Programming Lock for Software Security ATmega48PA ATmega88PA ATmega168PA ATmega328P

3 Features Peripheral Features Two 8-bit Timer/Counters with Separate Prescaler and Compare Mode One 16-bit Timer/Counter with Separate Prescaler, Compare Mode, and Capture Mode Real Time Counter with Separate Oscillator Six PWM Channels 8-channel 10-bit ADC in TQFP and QFN/MLF package Temperature Measurement 6-channel 10-bit ADC in PDIP Package Temperature Measurement Programmable Serial USART Master/Slave SPI Serial Interface Byte-oriented 2-wire Serial Interface (Philips I2C compatible) Programmable Watchdog Timer with Separate On-chip Oscillator On-chip Analog Comparator Interrupt and Wake-up on Pin Change ATmega48PA ATmega88PA ATmega168PA ATmega328P

4 Features Special Microcontroller Features Power-on Reset and Programmable Brown-out Detection Internal Calibrated Oscillator External and Internal Interrupt Sources Six Sleep Modes: Idle, ADC Noise Reduction, Power-save, Power-down, Standby, and Extended Standby I/O and Packages 23 Programmable I/O Lines 28-pin PDIP, 32-lead TQFP, 28-pad QFN/MLF and 32-pad QFN/MLF Operating Voltage: V for ATmega48PA/88PA/168PA/328P Temperature Range: -40 C to 85 C Speed Grade: V Low Power Consumption at 1 MHz, 1.8V, 25 C for ATmega48PA/88PA/168PA/328P: Active Mode: 0.2 ma Power-down Mode: 0.1 μa Power-save Mode: 0.75 μa (Including 32 khz RTC) ATmega48PA ATmega88PA ATmega168PA ATmega328P

5 ATmega328P - pinout

6 Block Diagram

7 Clock Systems and their Distribution The device has the following clock source options, selectable by Flash Fuse bits

8 Default Clock Source The device is shipped with internal RC oscillator at 8.0MHz and with the fuse CKDIV8 programmed, resulting in 1.0MHz system clock. The startup time is set to maximum and time-out period enabled. (CKSEL = "0010", SUT = "10", CKDIV8 = "0"). The default setting ensures that all users can make their desired clock source setting using any available programming interface. Other clock sources Low power crystal oscillator crystal External oscillator Low frequency crystal oscillator Used for real time clock

9 Active Clock Domains and Wake-up Sources in the Different Sleep Modes

10 Reset Logic

11 General Digital I/O

12 Port Pin Configurations

13

14 Binary and hex numbers are best suited to address ports Examples: 0b = 0x01 0b = 0x02 0b = 0x04 0b = 0x08 0b = 0x10 0b = 0x20 0b = 0x40 0b = 0x80 _BV(0) = 0b _BV(1) = 0b _BV(2) = 0b _BV(3) = 0b _BV(4) = 0b _BV(5) = 0b _BV(6) = 0b _BV(7) = 0b

15 Bitwise operators: & AND OR ~ NOT << SHIFT LEFT >> SHIFT RIGHT Examples: ~ 0b = ~ _BV(0) = 0b = 0xFE ~ 0b = ~ _BV(1) = 0b = 0xFD ~ 0b = ~ _BV(2) = 0b = 0xFB ~ 0b = ~ _BV(3) = 0b = 0xF7 ~ 0b = ~ _BV(4) = 0b = 0xEF ~ 0b = ~ _BV(5) = 0b = 0xDF ~ 0b = ~ _BV(6) = 0b = 0xBF ~ 0b = ~ _BV(7) = 0b = 0x7F

16 Bitwise operators: & AND OR ~ NOT << SHIFT LEFT >> SHIFT RIGHT 0b = (1<<0) 0b = (1<<1) 0b = (1<<2) 0b = (1<<3) 0b = (1<<4) 0b = (1<<5) 0b = (1<<6) 0b = (1<<7) ~ 0b = 0b = ~(1<<0) ~ 0b = 0b = ~(1<<1) ~ 0b = 0b = ~(1<<2) ~ 0b = 0b = ~(1<<3) ~ 0b = 0b = ~(1<<4) ~ 0b = 0b = ~(1<<5) ~ 0b = 0b = ~(1<<6) ~ 0b = 0b = ~(1<<7)

17 Example: Bitwise OR PORTD = 0b???????? Number= 0b ???????? unknown bits =?????1?? result: one bit set Example: Bitwise NOT PORTD = 0b ~PORTD = 0b Example: Bitwise AND PORTD = 0b???????? Number= 0b Example: Bitwise SHIFT PORTD = 0b PORTD<<1 = 0b ???????? unknown bits & =?????0?? result: one bit cleared

18 PORTD, 2 as input internally pulled up DDRD = DDRD & 0xFB; (input) PORTD = PORTD 0x04; (pullup) PORTD, 2 as input floating (high Z) DDRD = DDRD & 0xFB; (input) PORTD = PORTD & 0xFB; (floating) PORTB, 5 as output DDRB = DDRB 0x20; (output) PORTB = PORTB 0x20; (high) PORTB = PORTB & 0xDF; (low)

19 PORTD, 2 as input internally pulled up DDRD = DDRD & ~(1<<2); (input) PORTD = PORTD (1<<2); (pullup) PORTD, 2 as input floating (high Z) DDRD = DDRD & ~(1<<2); (input) PORTD = PORTD & ~(1<<2); (floating) PORTB, 5 as output DDRB = DDRB (1<<5); PORTB = PORTB (1<<5); PORTB = PORTB & ~(1<<5); (output) (high) (low)

20 #define cbi(reg, bitmask) *reg &= ~bitmask #define sbi(reg, bitmask) *reg = bitmask Przykłady: cbi (PORTD, (1<<6)); PORTD &= ~(1<<6); cbi (PORTD, PORTD6); PORTD &= ~(1<< PORTD6); cbi (PORTD, _BV(6)); PORTD &= ~(1<<_BV(6)); sbi (PORTB, (1<<6)); PORTD = (1<<6); sbi (PORTD, PORTD6); PORTD = (1<< PORTD6); sbi (PORTD, _BV(6)); PORTD = (1<<_BV(6));

21 #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> void setup() { } int main(void) { setup(); while (1) loop() return 0; } void setup() { DDRB = DDRB 0x20; } void loop() { PORTB = PORTB 0x20; delay(1000); // wait for a second PORTB = PORTB & 0xDF; delay(1000); }

22 Interrupt Vectors in ATmega328P

23 External Interrupts The External Interrupts are triggered by the INT0 and INT1 pins Register Description

24 External Interrupts Register Description

25 Przerwanie poziomem niskim hierarchia przerwań #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> void setup() { DDRD = (1<<5) (1<<6); PORTD = (1<<5) (1<<6); DDRD &= ~(1<<2) & ~(1<<3); PORTD = (1<<2) (1<<1<<3); EICRA =0; EIMSK = sei(); } ISR (INT0_vect) { PORTD = PORTD & ~(1<<5); } ISR (INT1_vect) {.. } void loop() {.. }

26 Przerwanie zboczem - stany nieustalone przycisku

27 Przerwanie zboczem - przykład #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> void setup() { DDRD = (1<<5); PORTD = (1<<5); DDRD &= ~(1<<2); PORTD = (1<<2); EICRA = (1<<ISC00); EIMSK = sei(); } void loop() {.. } ISR (INT0_vect) { switch(a) { } } case(0): _delay_ms(50); PORTD = PORTD & ~(1<<5); EIFR = EIFR (1<<INTF0); a =.; break; case(1):.. break;

28 Przerwania zewnętrzne PCINT Przerwania zewnętrzne PCINT dostępne są na pinach PCINT23 - PCINT0. W rejestrze PCICR leżą bity aktywacji przerwań PCINT0-7(bit PCIE0), PCINT8-14(bit PCIE1), PCINT15-23(bit PCIE2). W rejestrach PCMSK0, 1, 2 leżą maski indywidualne przerwań PCINT23-0. Przerwania PCINT23-0 są aktywowane każda zmianą na odpowiadających pinach wejściowych.

29 Przerwanie zewnętrzne PCINT - przykład #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> void setup() { DDRB = (1<<z); PORTB = (1<<z); PCICR = (1<<PCIEy); PCMSKy = (1<<PCINTx); sei(); } int main(void) { setup(); while (1) loop() return 0; } ISR(PCINTy_vect) { switch(a) { case(0): _delay_ms(50); PORTB = PORTB (1<<z); PCIFR = PCIFR (1<<PCIFy); a =.; break; } } void loop() {} case(1):.. break;

30 Timery/Liczniki Moduły liczników/timerów liczają impulsy zegarowe mikrokontrolera lub impulsy na liniach zewnętrznych mikrokontrolera. Timer 8-bitowy przepełnia się na wartości 2 8 a timer 16-bitowy przepełnia się na wartości Po przepełnieniu rejestr liczący TCNT0 zapełnia się zerami, a Timer zlicza nadal. Prescaler wydłuża N-krotnie krok timera, tym samym wydłużając czas do przepełnienia. Prescaler timera 0

31 Rejestry: zliczania, masek i flag timera 0 Rejestr zliczania Rejestr masek Maski trybów porównawczych A i B Maska trybu przepełnienia Rejestr flagowy Flagi trybów porównawczych A i B Flaga przepełnienia

32 Prescaler timera 1

33 Rejestry: zliczania, masek i flag timera 1 Maska trybu przechwytu Maski trybów porównawczych A i B Maska trybu przepełnienia Flaga przechwytu Flagi trybów porównawczych A i B Flaga przepełnienia

34 Timer0 programowe sprawdzanie flagi przepełnienia Timer0 - przerwanie OVERFLOW loop() { while (! (TIFR & (1<<TOV0))); TIFR =(1<<TOV0); PORTB &= ~(1<<6); while( );.. } setup() { TCCR0 =. DDRB = (1<<6); } ISR (TIMER0_OVF_vect) {. } int main(void) { TCCR0 =; TIMSK = ; sei(); do { while(1); return 0; }

35 Timer1 przerwanie trybu COMPARE ISR (TIMER1_COMPA_vect) { TCNT1 = OCR1A = if ((PORTB & (1<<6)) PORTB &=~(1<<6); else PORTB = (1<<6): //PORTB ^= (1 << 6); } Timer1 rejestry trybów porównawczych A i B Przerwanie nie powoduje zerowania rejestru zliczania int main(void) { DDRB = (1<<6); OCR1A = 31250; TCCR1B = (1<<CS12); TIMSK1 = ; sei(); while(1); return 0; }

36 Timer1 tryb CTC przerwanie powoduje zerowanie rejestru zliczania Wyjście na pinie OC1A lub OC1B (tryby odpowiednio COMPA i COMPB) Możliwość zmiany częstotliwości przebiegu ISR (TIMER1_COMPA_vect) {//zmiana częstotliwości} int main(void) { DDRB = (1<<1) (1<<2); OCR1A = TCCR1B = //tryb ctc TCCR1B = (1<<CS12); TIMSK1 = ; sei(); while(1); return 0; } Stała częstotliwość przebiegu int main(void) { DDRB = (1<<1) (1<<2); OCR1A = //0.5 sekundy TCCR1B = //tryb ctc TCCR1B = (1<<CS12); while(1); return 0; }

37 Ustawienia trybu CTC

38 Timer0 tryb fast PWM środek impulsu W zależności od wypełnienia przebiegu środek impulsu wypada w różnej fazie przebiegu Wyjście na pinie OC0A lub OC0B

39 Timer0 fast PWM na OC0A int bright = 0; void setup() { DDRD = TCCR0A = TCCR0B = // prescaler=64 OCR0A = 0; } void loop() { for (brights = 0; brights < 255; brights++) { OCR0A = bright; _delay_ms(20); //alternatywnie byte a=1; void loop() { bright += a; if(!bright bright>254) a = a; OCR0A = bright; _delay_ms(500); } } for //malejąco {. _delay_ms_(20); } }

40 Timer0 tryb phase correct PWM środek impulsu Niezależnie od wypełnienia przebiegu środek impulsu wypada zawsze w tej samej fazie przebiegu Wyjście na pinie OC0A lub OC0B

41 Wyjścia trybów PWM realizowanych z timerami 0, 1, 2

42 Dioda RGB kolory R, G, B po kolei void setup() { DDRx = //wyjścia OC0A(red), OC0B(green), OC2A(blue) TCCR0A = //fast PWM na OC0A oraz OC0B TCCR0B = // prescaler =256 OCR0A = 0; OCR0B = 0; //fast PWM na OC2A TCCR2A = (1<<COM2A1) (1<<WGM21) (1<<WGM20); TCCR2B = (1<<CS22); OCR2A=0; } void loop() { for (red = 0; red < 255; red++) {.= red; _delay_ms(10);} for (red = 255; red >0; red--) {..= red; _delay_ms(10);} //kolejne kolory }

43 Dioda RGB mieszanie kolorów podstawowych R, G, B Wygodnie jest stosować parametry wejściowe: hue, saturation i value z cylindrycznej przestrzeni kolorów HSV (odcień, nasycenie i jaskrawość) i przeliczać je na składowe R, G, B 0 < saturation < < value < < hue < 360 void Hsv2Rgb( double *r, double *g, double *b, double h, double s, double v ) { int i; double f, p, q, t; s/=100.0; v/=255.0; if( s == 0 ) { // (grey) *r = *g = *b = v; return; } h /= 60; i = (int)floor( h ); f = h - i; // factorial part of h p = v * ( s ); q = v * ( s * f ); t = v * ( s * ( 1 - f ) ); switch( i ) { case 0: *r = v; *g = t; *b = p; break; case 1: *r = q; *g = v; *b = p; break; case 2: *r = p; *g = v; *b = t; break; case 3: *r = p; *g = q; *b = v; break; case 4: *r = t; *g = p; *b = v; break; default: *r = v; *g = p; *b = q; break; } }

44 Dioda RGB - mieszanie kolorów R, G, B w przykładzie przyjęto: saturation =100; value = 100; hue = 0, 60, 120, 180, 240, 300 int main(void) { double red = 0.0; double green = 0.0; double blue = 0.0; double hue = 0; double saturation = 100; double valuee = 100; //fast PWM na OC0A (green), OC0B (red), OC2A (blue) } } while(1) { Hsv2Rgb(&red, &green, &blue, hue, saturation, valuee); red = red * 255.0; green = green * 255.0; blue = blue * 255.0; hue = hue ; if(hue >= 360) hue = 0; OCR0A = (uint8_t)red; //Red led is connected to pin PD6/digital 6 OCR0B = (uint8_t)green; //Green led is connected to pin PD5/digital 5 OCR2A = (uint8_t)blue; //Blue led is connected to pin PD3/digital pin 3 _delay_ms(200);

45

46 Watchdog Timer

47

48 Zestawienie rozkazów kontrolera HD44780 Komendy i dane są rozróżniane na podstawie stanu linii RS (0 - komendy; 1 - dane). Kierunek transmisji jest określany stanem linii R/W (0 - Write; 1 - Read). Sterownik HD44780 posiada dwa rodzaje pamięci: pamięć generatora znaków (CGROM/CGRAM) oraz pamięć danych (DDRAM). Pamięć generatora znaków CGROM/CGRAM zawiera graficzną postać znaków wyświetlanych na wyświetlaczu. Oprócz znaków zdefiniowanych na stałe przez producenta sterownika w pamięci CGROM do dyspozycji użytkownika pozostaje 8-znakowa pamięć CGRAM, w której można zdefiniować własne znaki (np. polskie znaki diakrytyczne). Pamięć danych DDRAM ma pojemność 80 bajtów (jeden sterownik HD4478 może obsłużyć maksymalnie 80 znaków, czyli np. 2 linie po 40 znaków, lub 4 linie po 20 znaków).

49 Połączenia przykładowe

50 Linie wyświetlacza LCD linia RS: 0 komendy dla sterownika; 1 wyświetlanie znaków ascii linia RW: 0 - zapis do sterownika lcd; 1 - odczyt ze sterownika lcd linia E - impuls aktywujący zapis/odczyt (strob): 0 - stan idle; 1 - stan aktywny linie D0 D7: bity komend lub znaków do wyświetlenia w trybie 8-bitowym linie D4 D7: bity komend lub znaków do wyświetlenia w trybie 4-bitowym

51 Inicjalizacja LCD //lcd na PORTD #define D7 7 #define D6 6 #define D5 5 #define D4 4 #define E 3 #define RS 2 #define RW 1 RS stan low RW stan low E stan high D7 stan low D6 stan low D5 stan high D4 stan high E stan low //lepiej napisz funkcję void lcd_4bity (unsigned char bajt) { PORTD = (1<<E); if(bajt & 0x01) PORTD = (1<<D4); else. if if if PORTD &= }

52 Inicjalizacja LCD cd //przejście w tryb sterowania //4-bitowy D7 D6 D5 D4 lcd_4bity (0x0..); //zdefiniuj funkcję nadawania bajtu //w dwóch częściach po 4 bity //najpierw starsze potem młodsze void lcd_bajt (unsigned char bajt) { PORTD = (1<<E); lcd_4bity(..); PORTD &= ~(1<<E); _delay_us(5); PORTD = (1<<E); lcd_4bity(.); PORTD &= ~(1<<E); _delay_us(200); } //posługując się funkcją lcd_bajt () //wydaj po kolei rozkazy inicjujące wyświetlacz Function set Display cursor shift Display ON/OFF Entry mode set Display clear 0b001DNF00 0b0001SR00 0b00001DCB 0b000001IS 0b

53 Rozkazy z grupy INI Function set (RS= 0, R/W = 0, dane = 001DNFxx) - dla D = 1 - interfejs 8-bitowy - dla D = 0 - interfejs 4-bitowy - dla N = 1 - wyświetlacz dwuwierszowy - dla N = 0 - wyświetlacz jednowierszowy - dla F = 1 - matryca znaków 5*10 punktów - dla F = 0 - matryca znaków 5*7punktów Display cursor shift - (RS = 0, R/W = 0, dane = 0001SRxx) - dla S = 1 - przesuwana jest zawartość okna - dla S = 0 - przesuwany jest kursor - dla R = 1 - kierunek przesuwu w prawo - dla R = 0 - kierunek przesuwu w lewo Display ON/OFF - (RS = 0, R/W = 0, dane = 00001DCB) - dla D = 1 - włączenie wyświetlacza - dla D = 0 - wyłączenie wyświetlacza - dla C = 1 - włączenie kursora - dla C = 0 - wyłączenie kursora - dla B = 1 - włączenie migania kursora - dla B = 0 - wyłączenie migania kursora

54 Rozkazy z grupy INI Entry mode set - (RS = 0; R/W = 0, dane = IS) - określenie trybu pracy kursora/okna wyświetlacza : - dla S = 1 po zapisaniu znaku do wyświetlacza kursor nie zmienia położenia, natomiast przesuwa się cała zawartość wyświetlacza - dla S = 0 po zapisaniu znaku do wyświetlacza kursor zmienia położenie, a przesuwanie okna jest wyłączone - dla I = 1 kursor lub okno wyświetlacza przesuwa się w prawo (inkrementacja adresu znaku) - dla I = 0 kursor lub okno wyświetlacza przesuwa się w lewo (dekrementacja adresu znaku) Maksymalny czas trwania instrukcji - 40us Display clear - (RS = 0, R/W = 0, dane = ) -instrukcja ta powoduje wyczyszczenie wyświetlacza poprzez wypełnienie go spacjami, ustawienie trybu zapisu danych od pozycji w lewym górnym rogu wyświetlacza oraz wyłączenie trybu przesuwania okna; maksymalny czas trwania instrukcji - 1,64ms Display/cursor home - (RS - 0, R/W = 0, dane = x) - instrukcja powoduje ustawienie kursora na pozycji pierwszego znaku w pierwszej linii; maksymalny czas trwania instrukcji 1,64ms

55 Podstawowe rozkazy: DD RAM set - (RS = 0, R/W = 0, dane = 1AAAAAAA) - ustawia adres pamięci wyświetlacza, pod który nastąpi zapis (bądź odczyt) danych operacją Data write lub Data read. Sterownik obsługuje 64 pozycje w każdej linii, dlatego w celu ustawienia kursora w 1-szej linii należy wydać rozkaz 0b , a w drugiej linii rozkaz 0b Data write - (RS = 1, R/W = 0, dane = zapisywany bajt danych) - zapis danych do pamięci wyświetlacza, bądź pamięci CG RAM (jeśli poprzednio wydano komendę CG RAM set) Pozostałe rozkazy: CG RAM set - (RS= 0, RW = 0, dane = 01AAALLL) - ustawia adres pamięci generatora znaków. AAA - 3-bitowy adres znaku, LLL - 3-bitowy numer linii składającej się na graficzne odwzorowanie znaku. Busy flag read - (RS = 0, R/W = 1, dane = BAAAAAAA) - odczyt flagi zajętości i adresu pamięci wyświetlacza. B - flaga zajętości wyświetlacza, AAAAAAA - 7-bitowy adres pamięci. Data read - (RS = 1, R/W= 1, dane = odczytywany bajt danych) - odczyt danych z pamięci wyświetlacza, bądź pamięci CG RAM (jeśli poprzednio wydano komendę CG RAM set)

56 Przykłady użycia podstawowych rozkazów //Przykład rozkazu DD RAM set czyli ustawienia pozycji wyświetlania: //RS w stan niski lcd_bajt (wskaż pozycję kursora) ; //Przykład rozkazu Data write czyli wyświetlania znaku: //RS w stan wysoki lcd_bajt('a'); //znak ascii a do wyświetlenia

57

58 Analog-to-Digital Converter 10-bit Resolution 0.5 LSB Integral Non-linearity ± 2 LSB Absolute Accuracy μs Conversion Time Up to 76.9 ksps (Up to 15 ksps at Maximu Resolution) 6 Multiplexed Single Ended Input Channels 0 - VCC ADC Input Voltage Range Selectable 1.1V ADC Reference Voltage Free Running or Single Conversion Mode Interrupt on ADC Conversion Complete Sleep Mode Noise Canceler

59 Konfiguracja przetwornika adc

60 Konfiguracja przetwornika adc

61 Konfiguracja przetwornika adc Bit 7 ADEN: ADC Enable Bit 6 ADSC: ADC Start Conversion Bit 5 ADATE: ADC Auto Trigger Enable Bit 4 ADIF: ADC Interrupt Flag Bit 3 ADIE: ADC Interrupt Enable Bits 2:0 ADPS2:0: ADC Prescaler Select Bits

62 Dzielenie liczby na kolumny dziesiętne Liczba / 1000 = tysiące Liczba % 1000 = reszta z tysięcy reszta z tysięcy / 100 = setki reszta z tysięcy % 100 = reszta z setek reszta z setek / 10 = dziesiątki reszta z setek % 10 = reszta z dziesiątek reszta z dziesiątek / 1 = jedności Przykład liczba / 1000 = % 1000 = / 100 = % 100 = / 10 = 8 87 % 10 = 7 7 / 1 = 7

63 Kodowanie ascii Kodowanie ascii cyfr wymaga dodania wartości 48 = 0x30

64 Transoptor odbiciowy Transoptor to optoelektroniczny element półprzewodnikowy, zawierający fotoemiter (najczęściej diodę elektroluminescencyjną z arsenku galu GaAs) i fotodetektor (fototranzystor lub fotodiodę) - zintegrowane we wspólnej obudowie. Transoptory odbiciowe (refleksyjne) znalazły zastosowanie jako czujniki odcienia szarości. Światło emitowane zostaje na powierzchnię znajdującą się po przeciwnej stronie czujnika. Zależnie od odcienia (biel odbija, czerń absorbuje), część światła pada na fotodetektor, na którym pojawia się adekwatne napięcie. Transoptor odbiciowy może także służyć jako np. przełącznik krańcowy wykrywając przed sobą przeszkodę jasnego koloru.

65 Transoptor odbiciowy CNY70 Ze względu na ryzyko uszkodzenia elementu napięcie na fotodiodę (punkt TIN przełącznik 2 zasilania) należy podawać tylko na czas pomiaru. Napięcie z TOUT należy podać na wejście przetwornika ADC. Transoptor przesłaniać na przemian kartką białą i czarną z odległości 3-5cm. Wynik pomiaru o wartości powyżej 500 (przy rozdzielczości przetwornika równej 1024) wskazuje na czarny kolor kartki, a poniżej 100 na biały. T T T TIN TOUT

66 Kulkowy czujnik przechyłu (tilt sensor) Dwie kulki stalowe zamykają obwód elektryczny w czujniku ustawionym pionowo. Po przechyleniu czujnika kulki przestają domykać obwód.

67 Joystick analogowy Wyprowadzenia joysticka: X napięcie analogowe proporcjonalne do wychylenia wzdłuż osi X Y napięcie analogowe proporcjonalne do wychylenia wzdłuż osi Y S napięcie Vcc lub 0 wskazujące stan przycisku joysticka

68 Rozpoznanie ruchu joysticka W górę Brak rozpoznania Brak rozpoznania W lewo W prawo Brak rozpoznania Brak rozpoznania W dół

69 Klawiatura analogowa KA Napięcie analogowe mierzone na wyjściu KA pozwala rozpoznać, który przycisk naciśnięto

70 Enkoder obrotowy typ: ALPS EC12 12 kroków w 360 stopniach 2 wyjścia cyfrowe : ERC1 i ERC2 zmiany stanu na wyjściach wskazują kierunek obrotu

71 Ćwiczenia do wyboru: 1. Jeśli czujnik odbiciowy rozpoznaje powierzchnię białą wówczas kolejne naciśnięcia przycisku nr 1 klawiatury analogowej przedłużają świecącą linijkę o 1 diodę (do 8-miu), a jeśli czujnik odbiciowy rozpoznaje powierzchnię czarną kolejne naciśnięcia przycisku nr 1 klawiatury analogowej skracają linijkę świecącą o 1 diodę 2. Kolejne obroty enkodera w prawo przedłużają świecącą linijkę o 1 diodę (do 8-miu), a kolejne obroty enkodera w lewo skracają linijkę świecącą o 1 diodę 3. Kolejne wychylenia joysticka w górę przedłużają świecącą linijkę o 1 diodę (do 8-miu), a kolejne wychylenia joysticka w dół skracają linijkę świecącą o 1 diodę 4. Krótkie naciśnięcia switcha samopowrotnego (poniżej 1s) przedłużają świecącą linijkę o 1 diodę (do 8- miu), a długie naciśnięcia switcha samopowrotnego (powyżej 2s) skracają linijkę świecącą o 1 diodę

72

73 USART Interface and USART connection to PC COM MAX 232 converts signals from an RS-232 serial port to signals suitable for use in TTL

74 USART to USB adapter

75 Asynchronous USART transmission Start bit Data bits Parity bit Stop bits

76 #define FOSC // Clock Speed #define BAUD 9600 #define MYUBRR FOSC/16/BAUD-1

77

78

79 Bit 7 RXCn: USART Receive Complete Bit 6 TXCn: USART Transmit Complete Bit 5 UDREn: USART Data Register Empty Bit 4 FEn: Frame Error Bit 3 DORn: Data OverRun Bit 2 UPEn: USART Parity Error Bit 1 U2Xn: Double the USART Transmission Speed Bit 0 MPCMn: Multi-processor Communication Mode Bit 7 RXCn: Flaga odbioru znaku Bit 6 TXCn: Flaga nadania znaku Bit 5 UDREn: Flaga pustego bufora nadawczego (mieści 2 znaki) Bit 4 FEn: Błąd ramki Bit 3 DORn: Błąd nadpisania znaku (nie odczytanego) Bit 2 UPEn: Błąd parzystości Bit 1 U2Xn: Podwojona prędkość transmisji Bit 0 MPCMn: Tryb z adresowaniem odbiorników Bit 7 RXCIEn: RX Complete Interrupt Enable n Bit 6 TXCIEn: TX Complete Interrupt Enable n Bit 5 UDRIEn: Data Register Empty Interrupt Enable n Bit 4 RXENn: Receiver Enable n Bit 3 TXENn: Transmitter Enable n Bit 2 UCSZn2: Character Size n Bit 1 RXB8n: Receive Data Bit 8 n Bit 0 TXB8n: Transmit Data Bit 8 n Bit 7 RXCIEn: Maska przerwania odbioru znaku Bit 6 TXCIEn: Maska przerwania nadania znaku Bit 5 UDRIEn: Maska przerwania pustego bufora nadawczego Bit 4 RXENn: Włączenie odbiornika Bit 3 TXENn: Włączenie nadajnika Bit 2 UCSZn2: Liczba bitów danych Bit 1 RXB8n: 8-my bit odebrany Bit 0 TXB8n: 8-my bit nadawany

80 Transmisja może się odbywać w pełnym dupleksie char a,o; ISR (USART_RX_vect) { o = UDR0; lcd_bajt(o); } ISR (USART_TX_vect) { UDR0 = a++; } int main (void) { setup(); a = 30; UDR0 = a; sei(); while (1) ; return 0; }

81

82

83

84

85

86

87

88

89

90 Zasada pracy rejestru przesuwnego 74HC595 Bity danych są wprowadzane synchronicznie szeregowo po linii DS, a wyprowadzane równolegle na liniach Q0-Q7. Dane są wprowadzane do rejestru przesuwnego 74HC595 zboczem narastającym zegara SH_CP Linia ST_CP (latch) jest w stanie niskim podczas wprowadzania danych Dane są wyprowadzane na linie równoległe Q0 Q7 zboczem narastającym impulsu ST_CP (latch) Linia DS linia danych wprowadzanych szeregowo Linia SH_CP impulsy zegarowe Linia ST_CP latch, stan idle = stan wysoki, podczas transferu danych przechodzi w stan niski, po czym ponownie wraca na stan wysoki bezczynny Linia Q0 Q7 linie danych wyprowadzanych równolegle

91 ST_CP DS SH_CP SH_CP ST_CP DS Do wyjść równoległych rejestru 74HC595 można podłączyć Np. diody, switch e lub wyświetlacz 7-segmentowy. Na schemacie powyżej linia A została podłączona do wyjścia Q0 itd., a kropka DP do wyjścia Q7.

92 Łączenie łańcuchowe rejestrów przesuwnych 74HC595 daisy chain Oprócz wyprowadzeń równoległych na liniach Q0-Q7 rejestr przesuwny 74HC595 posiada również wyjście szeregowe na linii Q7. Wyjście to może zostać wykorzystanie do podania danych na wejście kolejnego rejestru przesuwnego w łańcuchu. W połączeniu łańcuchowym wyjście rejestru n wyprowadza dane na wejście rejestru n+1 w łańcuchu. Takie połączenie pozwala na oszczędność linii mikrokontrolera.

93 Łączenie łańcuchowe rejestrów przesuwnych 74HC595 daisy chain ST_CP SH_CP DS W układzie laboratoryjnym Mizero w łańcuch daisy chain połączono 5 rejestrów przesuwnych 74HC595. Na wyjściu 4-ch z nich znajdują się wyświetlacze 7-segmentowe, na wyjściu piątego podłączono 8 diod świecących na niebiesko. W celu poprawnego wysterowania urządzeń w łańcuchu należy podać bajt sterujący na każde z nich tj. w sumie 5 bajtów.

94 //74HC595 na PORTB #define ST_CP 2 #define DS 3 #define SH_CP 5 void setup (void) { DDRB = (1<<ST_CP) (1<<DS) (1<<SH_CP); PORTB = (1<<ST_CP); PORTB &= ~(1<<SH_CP) & ~(1<<DS); } void transfer_74hc595 (unsigned char dana) { PORTB &= ~(1<<ST_CP); if (dana & (0x80)) PORTB = (1<<DS); else PORTB &= ~(1<<DS); PORTB = (1<<SH_CP); _delay_us(1); PORTB &= ; _delay_us(1); PORTB &=..; _delay_us(1);.. PORTB = (1<<ST_CP); } Funkcja transfer_74hc595 (unsigned char dana) pobiera 8 bitów danych i analizując bit po bicie kolejno wystawia je na linię DS. Każdemu bitowi na linii DS musi towarzyszyć impuls dodatni na linii SH_CP (prostokąty podświetlone). Czas stanu niskiego i wysokiego impulsu to 1us.

95 SCK = SH_CP CS = ST_CP MOSI = DS W celu usprawnienia obsługi rejestru łączymy linie SH_CP, ST_CP i DS. z liniami magistrali SPI. Będziemy teraz mogli skorzystać z rejestrów interfejsu SPI mikrokontrolera tj. podać od razu bajt danych dla linii DS oraz wydać rozkaz generowania impulsów zegarowych na potrzeby wpisu do rejestru 74HC595 zamiast programowego taktowania linii zegarowej.

96

97

98

99

GND(VSS) i VCC - masa i zasilanie. V0 - regulacja kontrastu

GND(VSS) i VCC - masa i zasilanie. V0 - regulacja kontrastu Programowanie wyświetlacza LCD według: http://radziu.dxp.pl Wyświetlacz graficzny 2 x 16 ma 2 wiersze, 16 znaków w wierszu, każdy znak jest wyświetlany w matrycy 5 x 8 pikseli. (2*8 wierszy * 5*16 kolumn

Bardziej szczegółowo

Mikroprocesory i Mikrosterowniki Liczniki Timer Counter T/C0, T/C1, T/C2

Mikroprocesory i Mikrosterowniki Liczniki Timer Counter T/C0, T/C1, T/C2 Mikroprocesory i Mikrosterowniki Liczniki Timer Counter T/C0, T/C1, T/C2 Wydział Elektroniki Mikrosystemów i Fotoniki Piotr Markowski Na prawach rękopisu. Na podstawie dokumentacji ATmega8535, www.atmel.com.

Bardziej szczegółowo

Programowanie Mikrokontrolerów

Programowanie Mikrokontrolerów Programowanie Mikrokontrolerów Wyświetlacz alfanumeryczny oparty na sterowniku Hitachi HD44780. mgr inż. Paweł Poryzała Zakład Elektroniki Medycznej Alfanumeryczny wyświetlacz LCD Wyświetlacz LCD zagadnienia:

Bardziej szczegółowo

Wyświetlacz alfanumeryczny LCD zbudowany na sterowniku HD44780

Wyświetlacz alfanumeryczny LCD zbudowany na sterowniku HD44780 Dane techniczne : Wyświetlacz alfanumeryczny LCD zbudowany na sterowniku HD44780 a) wielkość bufora znaków (DD RAM): 80 znaków (80 bajtów) b) możliwość sterowania (czyli podawania kodów znaków) za pomocą

Bardziej szczegółowo

Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści

Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści 1. Konfiguracja pinów...2 2. ISP...2 3. I/O Ports...3 4. External Interrupts...4 5. Analog Comparator...5 6. Analog-to-Digital Converter...6

Bardziej szczegółowo

Bootloader programming

Bootloader programming Arduino Esplora ATMega32u4 ISP programming Bootloader programming The bootloader is basically a.hex file that runs when you turn on the board. It is very similar to the BIOS that runs on your PC. It does

Bardziej szczegółowo

Poradnik programowania procesorów AVR na przykładzie ATMEGA8

Poradnik programowania procesorów AVR na przykładzie ATMEGA8 Poradnik programowania procesorów AVR na przykładzie ATMEGA8 Wersja 1.0 Tomasz Pachołek 2017-13-03 Opracowanie zawiera opis podstawowych procedur, funkcji, operatorów w języku C dla mikrokontrolerów AVR

Bardziej szczegółowo

Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści

Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści 1. Konfiguracja pinów2 2. ISP..2 3. I/O Ports..3 4. External Interrupts..4 5. Analog Comparator5 6. Analog-to-Digital Converter.6 7.

Bardziej szczegółowo

SYSTEM PRZERWAŃ ATmega 32

SYSTEM PRZERWAŃ ATmega 32 Zachodniopomorski Uniwersytet Technologiczny WYDZIAŁ ELEKTRYCZNY Katedra Inżynierii Systemów, Sygnałów i Elektroniki LABORATORIUM TECHNIKA MIKROPROCESOROWA SYSTEM PRZERWAŃ ATmega 32 Opracował: mgr inż.

Bardziej szczegółowo

Programowanie mikrokontrolerów AVR z rodziny ATmega.

Programowanie mikrokontrolerów AVR z rodziny ATmega. Programowanie mikrokontrolerów AVR z rodziny ATmega. Materiały pomocnicze Jakub Malewicz jakub.malewicz@pwr.wroc.pl Wszelkie prawa zastrzeżone. Kopiowanie w całości lub w częściach bez zgody i wiedzy autora

Bardziej szczegółowo

Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści

Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści 1. Konfiguracja pinów...2 2. ISP...2 3. I/O Ports...3 4. External Interrupts...4 5. Analog Comparator...6 6. Analog-to-Digital Converter...6

Bardziej szczegółowo

Technika Mikroprocesorowa

Technika Mikroprocesorowa Technika Mikroprocesorowa Dariusz Makowski Katedra Mikroelektroniki i Technik Informatycznych tel. 631 2648 dmakow@dmcs.pl http://neo.dmcs.p.lodz.pl/tm 1 System mikroprocesorowy? (1) Magistrala adresowa

Bardziej szczegółowo

ATMega328. Memories: Flash memory 32kB SRAM 2kB EEPROM 1kB

ATMega328. Memories: Flash memory 32kB SRAM 2kB EEPROM 1kB ATMega328 Memories: Flash memory 32kB SRAM 2kB EEPROM 1kB ISP programming Bootloader programming The bootloader is basically a.hex file that runs when you turn on the board. It is very similar to the

Bardziej szczegółowo

Komunikacja w mikrokontrolerach. Wydział Elektroniki Mikrosystemów i Fotoniki Piotr Markowski

Komunikacja w mikrokontrolerach. Wydział Elektroniki Mikrosystemów i Fotoniki Piotr Markowski Komunikacja w mikrokontrolerach Wydział Elektroniki Mikrosystemów i Fotoniki Piotr Markowski Treść kursu Programowanie mikrokontrolerów AVR (ATMEL) Orientacja na komunikację międzyukładową w C Literatura

Bardziej szczegółowo

WYDZIAŁ ELEKTRYCZNY KATEDRA TELEKOMUNIKACJI I APARATURY ELEKTRONICZNEJ. Instrukcja do zajęć laboratoryjnych. Numer ćwiczenia: 2

WYDZIAŁ ELEKTRYCZNY KATEDRA TELEKOMUNIKACJI I APARATURY ELEKTRONICZNEJ. Instrukcja do zajęć laboratoryjnych. Numer ćwiczenia: 2 Politechnika Białostocka WYDZIAŁ ELEKTRYCZNY KATEDRA TELEKOMUNIKACJI I APARATURY ELEKTRONICZNEJ Instrukcja do zajęć laboratoryjnych Temat ćwiczenia: Sygnały zegarowe. Obsługa GPIO i przetwornika ADC Numer

Bardziej szczegółowo

Mikroprocesory i Mikrosterowniki Analog-Digital Converter Konwerter Analogowo-Cyfrowy

Mikroprocesory i Mikrosterowniki Analog-Digital Converter Konwerter Analogowo-Cyfrowy Mikroprocesory i Mikrosterowniki Analog-Digital Converter Konwerter Analogowo-Cyfrowy Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski Na prawach rękopisu. Na podstawie dokumentacji

Bardziej szczegółowo

Czujnik zbliżeniowy indukcyjny

Czujnik zbliżeniowy indukcyjny Czujnik zbliżeniowy indukcyjny Wizualizacja Danych Sensorycznych Projekt Łukasz Adamczuk (133047) 1. Wstęp. Czujniki indukcyjne zbliżeniowe są elementami automatyki reagującymi na wprowadzenie metalu w

Bardziej szczegółowo

Mikroprocesory i Mikrosterowniki

Mikroprocesory i Mikrosterowniki Mikroprocesory i Mikrosterowniki Wykład 1 Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski Na prawach rękopisu. Na podstawie dokumentacji ATmega8535, www.atmel.com. Konsultacje Pn,

Bardziej szczegółowo

1.2 Schemat blokowy oraz opis sygnałów wejściowych i wyjściowych

1.2 Schemat blokowy oraz opis sygnałów wejściowych i wyjściowych Dodatek A Wyświetlacz LCD. Przeznaczenie i ogólna charakterystyka Wyświetlacz ciekłokrystaliczny HY-62F4 zastosowany w ćwiczeniu jest wyświetlaczem matrycowym zawierającym moduł kontrolera i układ wykonawczy

Bardziej szczegółowo

Magistrala SPI. Linie MOSI i MISO sąwspólne dla wszystkich urządzeńna magistrali, linia SS jest prowadzona do każdego Slave oddzielnie.

Magistrala SPI. Linie MOSI i MISO sąwspólne dla wszystkich urządzeńna magistrali, linia SS jest prowadzona do każdego Slave oddzielnie. Magistrala SPI Magistrala SPI składa się z linii: MOSI Master output Slave input MISO Master input Slave Output SCK Clock SS Slave select (CS Chip Select lub CE Chip Enable) Sygnał taktujący transmisję

Bardziej szczegółowo

start Program mikroprocesorowego miernika mocy generowanej $crystal = deklaracja

start Program mikroprocesorowego miernika mocy generowanej $crystal = deklaracja ----------------------------start---------------------------- Program mikroprocesorowego miernika mocy generowanej $crystal = 8000000 deklaracja częstotliwości kwarcu taktującego uc $regfile "m8def.dat"

Bardziej szczegółowo

Opis procedur asemblera AVR

Opis procedur asemblera AVR Piotr Kalus PWSZ Racibórz 10.05.2008 r. Opis procedur asemblera AVR init_lcd Plik: lcd4pro.hvr Procedura inicjuje pracę alfanumerycznego wyświetlacza LCD za sterownikiem HD44780. Wyświetlacz działa w trybie

Bardziej szczegółowo

LABORATORIUM. TIMERY w mikrokontrolerach Atmega16-32

LABORATORIUM. TIMERY w mikrokontrolerach Atmega16-32 Zachodniopomorski Uniwersytet Technologiczny WYDZIAŁ ELEKTRYCZNY Katedra Inżynierii Systemów, Sygnałów i Elektroniki LABORATORIUM TECHNIKA MIKROPROCESOROWA TIMERY w mikrokontrolerach Atmega16-32 Opracował:

Bardziej szczegółowo

4 Transmisja szeregowa na przykładzie komunikacji dwukierunkowej z komputerem PC, obsługa wyświetlacza LCD.

4 Transmisja szeregowa na przykładzie komunikacji dwukierunkowej z komputerem PC, obsługa wyświetlacza LCD. 13 4 Transmisja szeregowa na przykładzie komunikacji dwukierunkowej z komputerem PC, obsługa wyświetlacza LCD. Zagadnienia do przygotowania: - budowa i działanie interfejsu szeregowego UART, - tryby pracy,

Bardziej szczegółowo

Mikroprocesory i Mikrosterowniki

Mikroprocesory i Mikrosterowniki Mikroprocesory i Mikrosterowniki Wykład 1 Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski Na prawach rękopisu. Na podstawie dokumentacji ATmega8535, www.atmel.com. Konsultacje Pn,

Bardziej szczegółowo

LABORATORIUM. TIMERY w mikrokontrolerach Atmega16-32

LABORATORIUM. TIMERY w mikrokontrolerach Atmega16-32 Zachodniopomorski Uniwersytet Technologiczny WYDZIAŁ ELEKTRYCZNY Katedra Inżynierii Systemów, Sygnałów i Elektroniki LABORATORIUM TECHNIKA MIKROPROCESOROWA TIMERY w mikrokontrolerach Atmega16-32 Opracował:

Bardziej szczegółowo

2. Architektura mikrokontrolerów PIC16F8x... 13

2. Architektura mikrokontrolerów PIC16F8x... 13 Spis treści 3 Spis treœci 1. Informacje wstępne... 9 2. Architektura mikrokontrolerów PIC16F8x... 13 2.1. Budowa wewnętrzna mikrokontrolerów PIC16F8x... 14 2.2. Napięcie zasilania... 17 2.3. Generator

Bardziej szczegółowo

Komunikacja w mikrokontrolerach. Magistrala szeregowa I2C / TWI Inter-Integrated Circuit Two Wire Interface

Komunikacja w mikrokontrolerach. Magistrala szeregowa I2C / TWI Inter-Integrated Circuit Two Wire Interface Komunikacja w mikrokontrolerach Magistrala szeregowa I2C / TWI Inter-Integrated Circuit Two Wire Interface Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski Na prawach rękopisu. Na podstawie

Bardziej szczegółowo

Listing_ $crystal = deklaracja

Listing_ $crystal = deklaracja ------------------------------------------------- Listing_4 ---------------------------------------------------- $crystal = 8000000 deklaracja częstotliwości kwarcu $regfile "m8def.dat" biblioteka mikrokontrolera

Bardziej szczegółowo

4 Transmisja szeregowa, obsługa wyświetlacza LCD.

4 Transmisja szeregowa, obsługa wyświetlacza LCD. 1 4 Transmisja szeregowa, obsługa wyświetlacza LCD. Zagadnienia do przygotowania: - budowa i działanie interfejsu szeregowego UART, - tryby pracy, - ramka transmisyjna, - przeznaczenie buforów obsługi

Bardziej szczegółowo

DOKUMENTACJA. dot. Budowy i przebiegu konstrukcji linefollower-a. Data: MCHT2 Jakub Tomczyk Łukasz Pawelec Mateusz Wróbel

DOKUMENTACJA. dot. Budowy i przebiegu konstrukcji linefollower-a. Data: MCHT2 Jakub Tomczyk Łukasz Pawelec Mateusz Wróbel DOKUMENTACJA dot. Budowy i przebiegu konstrukcji linefollower-a Data: 2016-11-25 MCHT2 Jakub Tomczyk Łukasz Pawelec Mateusz Wróbel Spis Treści 1. Opis tematu. 2. Niezbędne obliczenia 3. Schemat ideowy

Bardziej szczegółowo

Instytut Teleinformatyki

Instytut Teleinformatyki Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Mikroprocesory i Mikrokontrolery Zastosowanie przetwornika analogowo-cyfrowego do odczytywania napięcia z potencjometru

Bardziej szczegółowo

Instytut Teleinformatyki

Instytut Teleinformatyki Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Mikroprocesory i Mikrokontrolery Dostęp do portów mikrokontrolera ATmega32 język C laboratorium: 10 autorzy: dr

Bardziej szczegółowo

Uproszczony schemat blokowy zespołu 8-bitowego timera przedstawiono na rys.1

Uproszczony schemat blokowy zespołu 8-bitowego timera przedstawiono na rys.1 Dodatek C 1. Timer 8-bitowy (Timer0) 1.1. Opis układu Uproszczony schemat blokowy zespołu 8-bitowego timera przedstawiono na rys.1 Rys. 1. Schemat blokowy timera Źródłem sygnału taktującego może być zegar

Bardziej szczegółowo

Wbudowane układy peryferyjne cz. 2 Wykład 8

Wbudowane układy peryferyjne cz. 2 Wykład 8 Wbudowane układy peryferyjne cz. 2 Wykład 8 Timery Timery (liczniki) 2 Timery informacje ogólne Mikrokontroler ATmega32 posiada 3 liczniki: Timer0 8-bitowy Timer1 16-bitowy Timer2 8-bitowy, mogący pracować

Bardziej szczegółowo

Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie:

Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie: Zaliczenie Termin zaliczenia: 14.06.2007 Sala IE 415 Termin poprawkowy: >18.06.2007 (informacja na stronie: http://neo.dmcs.p.lodz.pl/tm/index.html) 1 Współpraca procesora z urządzeniami peryferyjnymi

Bardziej szczegółowo

Mikrokontrolery AVR Wprowadzenie

Mikrokontrolery AVR Wprowadzenie Mikrokontrolery AVR Wprowadzenie Komunikacja z otoczeniem mikrokontrolera Każdy z mikrokontrolerów posiada pewna liczbę wyprowadzeń cyfrowych które służą do wprowadzania i odbierania informacji z mikrokontrolera.

Bardziej szczegółowo

Uniwersalny asynchroniczny. UART Universal Asynchronous Receier- Transmiter

Uniwersalny asynchroniczny. UART Universal Asynchronous Receier- Transmiter UART Universal Asynchronous Receier- Transmiter Cel projektu: Zbudowanie układu transmisji znaków z komputera na wyświetlacz zamontowany na płycie Spartan-3AN, poprzez łacze RS i program TeraTerm. Laboratorium

Bardziej szczegółowo

Politechnika Poznańska Wydział Budowy Maszyn i Zarządzania. Sterowniki Urządzeń Mechatronicznych laboratorium. Ćw. 3: Timer v1.0

Politechnika Poznańska Wydział Budowy Maszyn i Zarządzania. Sterowniki Urządzeń Mechatronicznych laboratorium. Ćw. 3: Timer v1.0 1 CEL ĆWICZENIA Celem ćwiczenia jest zapoznanie się z możliwościami odmierzania czasu za pomocą wewnętrznego TIMER a mikrokontrolerów serii AVR 2 ZAKRES NIEZBĘDNYCH WIADOMOŚCI - wiadomości z poprzednich

Bardziej szczegółowo

Instytut Teleinformatyki

Instytut Teleinformatyki Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Mikroprocesory i Mikrokontrolery System przerwań laboratorium: 11 autorzy: dr hab. Zbisław Tabor, prof. PK mgr inż.

Bardziej szczegółowo

Zespół Szkół Technicznych. Badanie wyświetlaczy LCD

Zespół Szkół Technicznych. Badanie wyświetlaczy LCD Zespół Szkół Technicznych Badanie wyświetlaczy LCD WYŚWIETLACZE LCD CZĘSC TEORETYCZNA ZALETY: ) mały pobór mocy, 2) ekonomiczność pod względem zużycia energii (pobór prądu przy 5V mniejszy niż 2mA), 3)

Bardziej szczegółowo

Programowanie mikrokontrolerów. 8 listopada 2007

Programowanie mikrokontrolerów. 8 listopada 2007 Programowanie mikrokontrolerów Marcin Engel Marcin Peczarski 8 listopada 2007 Alfanumeryczny wyświetlacz LCD umożliwia wyświetlanie znaków ze zbioru będącego rozszerzeniem ASCII posiada zintegrowany sterownik

Bardziej szczegółowo

Zewnętrzne układy peryferyjne cz. 1 Wykład 12

Zewnętrzne układy peryferyjne cz. 1 Wykład 12 Zewnętrzne układy peryferyjne cz. 1 Wykład 12 Wyświetlacz LCD zgodny z HD44780 Wyświetlacz LCD zgodny z HD44780 2 HD44780 Standardowy sterownik alfanumerycznych wyświetlaczy LCD opracowany przez firmę

Bardziej szczegółowo

Komunikacja w mikrokontrolerach Laboratorium

Komunikacja w mikrokontrolerach Laboratorium Laboratorium Ćwiczenie 2 Magistrala UART Program ćwiczenia: konfiguracja transmisji danych między komputerem PC a mikrokontrolerem przy użyciu magistrali UART. Zagadnienia do przygotowania: podstawy programowania

Bardziej szczegółowo

Szkolenia specjalistyczne

Szkolenia specjalistyczne Szkolenia specjalistyczne AGENDA Programowanie mikrokontrolerów w języku C na przykładzie STM32F103ZE z rdzeniem Cortex-M3 GRYFTEC Embedded Systems ul. Niedziałkowskiego 24 71-410 Szczecin info@gryftec.com

Bardziej szczegółowo

LOW ENERGY TIMER, BURTC

LOW ENERGY TIMER, BURTC PROJEKTOWANIE ENERGOOSZCZĘDNYCH SYSTEMÓW WBUDOWANYCH ĆWICZENIE 4 LOW ENERGY TIMER, BURTC Katedra Elektroniki AGH 1. Low Energy Timer tryb PWM Modulacja szerokości impulsu (PWM) jest często stosowana przy

Bardziej szczegółowo

Mikroprocesory i mikrosterowniki Wydział Elektroniki Mikrosystemów i Fotoniki Politechniki Wrocławskiej Ćwiczenie nr 4

Mikroprocesory i mikrosterowniki Wydział Elektroniki Mikrosystemów i Fotoniki Politechniki Wrocławskiej Ćwiczenie nr 4 1 Ćwiczenie nr 4 Program ćwiczenia: Interfejs szeregowy SPI obsługa sterownika ośmiopozycyjnego, 7-segmentowego wyświetlacza LED Interfejs szeregowy USART, komunikacja mikrokontrolera z komputerem PC.

Bardziej szczegółowo

Wykład 2. Przegląd mikrokontrolerów 8-bit: -AVR -PIC

Wykład 2. Przegląd mikrokontrolerów 8-bit: -AVR -PIC Wykład 2 Przegląd mikrokontrolerów 8-bit: -AVR -PIC Mikrokontrolery AVR Mikrokontrolery AVR ATTiny Główne cechy Procesory RISC mało instrukcji, duża częstotliwość zegara Procesory 8-bitowe o uproszczonej

Bardziej szczegółowo

Rev Źródło:

Rev Źródło: KAmduino UNO Rev. 20190119182847 Źródło: http://wiki.kamamilabs.com/index.php/kamduino_uno Spis treści Basic features and parameters... 1 Standard equipment... 2 Electrical schematics... 3 AVR ATmega328P

Bardziej szczegółowo

Komunikacja w mikrokontrolerach Laboratorium

Komunikacja w mikrokontrolerach Laboratorium Laboratorium Ćwiczenie 1 Podstawy programowania, stany uśpienia Program ćwiczenia: zapoznanie z regulaminem laboratorium i zasadami zaliczenia, zapoznanie ze sprzętem laboratoryjnym i oprogramowaniem,

Bardziej szczegółowo

LCD (Liquid Crystal Display)

LCD (Liquid Crystal Display) LCD (Liquid Crystal Display) Polarizing filter. Thin film with a vertical ais. Liquid crystal Polarizing filter. Thin film with a horizontal ais. Polarizing filter. Thin film with a horizontal ais. Polarizing

Bardziej szczegółowo

Instrukcja do ćwiczeń

Instrukcja do ćwiczeń Instrukcja do ćwiczeń SYSTEMY WBUDOWANE Lab. 3 Przetwornik ADC + potencjometr 1. Należy wejść na stronę Olimexu w celu znalezienia zestawu uruchomieniowego SAM7-EX256 (https://www.olimex.com/products/arm/atmel/sam7-ex256/).

Bardziej szczegółowo

Alfanumeryczny wyświetlacz LCD

Alfanumeryczny wyświetlacz LCD Tomasz Charoński Mateusz Lango Architektura Systemów Komputerowych Wprowadzenie Inteligentne wyświetlacze alfanumeryczne LCD są elementem coraz częściej spotykanym w sprzęcie powszechnego użytku: od urządzeń

Bardziej szczegółowo

Wstęp. Opis ATMEGA128 MINI MODUŁ VE-APS-1406

Wstęp. Opis ATMEGA128 MINI MODUŁ VE-APS-1406 ATMEGA128 MINI MODUŁ VE-APS-1406 Wstęp Instrukcja użytkownika Opis Instrukcja prezentuje mini moduł z mikrokontrolerem rodziny AVR (firmy ATMEL) Atmega128 w obudowie TQFP 64. Procesor ATmega128 wyposażony

Bardziej szczegółowo

Komunikacja w mikrokontrolerach Laboratorium

Komunikacja w mikrokontrolerach Laboratorium Laboratorium Ćwiczenie 4 Magistrala SPI Program ćwiczenia: konfiguracja transmisji danych między mikrokontrolerem a cyfrowym czujnikiem oraz sterownikiem wyświetlaczy 7-segmentowych przy użyciu magistrali

Bardziej szczegółowo

LABORATORIUM - ELEKTRONIKA Układy mikroprocesorowe cz.2

LABORATORIUM - ELEKTRONIKA Układy mikroprocesorowe cz.2 LABORATORIUM - ELEKTRONIKA Układy mikroprocesorowe cz.2 1. Cel ćwiczenia Celem ćwiczenia jest pokazanie budowy systemów opartych na układach Arduino. W tej części nauczymy się podłączać różne czujników,

Bardziej szczegółowo

Technika mikroprocesorowa materiały do laboratorium. Autor: Dorota Rabczuk

Technika mikroprocesorowa materiały do laboratorium. Autor: Dorota Rabczuk Technika mikroprocesorowa materiały do laboratorium Autor: Dorota Rabczuk Architektura mikrokontrolera AT90S8515 1. Jednostka arytmetyczno-logiczna ALU posiada dostęp do 32-ch rejestrów 8-bitowych, na

Bardziej szczegółowo

Podstawy Techniki Mikroprocesorowej Laboratorium

Podstawy Techniki Mikroprocesorowej Laboratorium Laboratorium Ćwiczenie 3 Liczniki 0, 1, 2 (Timer Counters T/C0, T/C1, T/C2) Program ćwiczenia: obsługa trybu pracy normalny wybranego licznika, obsługa trybu pracy CTC wybranego licznika, obsługa trybu

Bardziej szczegółowo

TECHNIKA MIKROPROCESOROWA

TECHNIKA MIKROPROCESOROWA LABORATORIUM TECHNIKA MIKROPROCESOROWA Port transmisji szeregowej USART ATmega Opracował: Tomasz Miłosławski 1. Cel ćwiczenia Celem ćwiczenia jest zapoznanie się ze sposobami komunikacji mikrokontrolera

Bardziej szczegółowo

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej Systemy wbudowane Witold Kozłowski Zakład Fizyki i Technologii Struktur Nanometrowych 90-236 Łódź, Pomorska 149/153 https://std2.phys.uni.lodz.pl/mikroprocesory/

Bardziej szczegółowo

Mikroprocesory i mikrosterowniki

Mikroprocesory i mikrosterowniki Mikroprocesory i mikrosterowniki Wykład 1 wstęp, budowa mikrokontrolera Wydział Elektroniki Mikrosystemów i Fotoniki Na prawach rękopisu. Na podstawie dokumentacji ATmega8535, www.atmel.com. Piotr Markowski

Bardziej szczegółowo

Programowanie mikrokontrolerów AVR z rodziny ATmega.

Programowanie mikrokontrolerów AVR z rodziny ATmega. Programowanie mikrokontrolerów AVR z rodziny ATmega. Materiały pomocnicze Jakub Malewicz jakub.malewicz@pwr.wroc.pl Wszelkie prawa zastrzeżone. Kopiowanie w całości lub w częściach bez zgody i wiedzy autora

Bardziej szczegółowo

AGH Akademia Górniczo- Hutnicza w Krakowie Katedra Elektroniki WIET

AGH Akademia Górniczo- Hutnicza w Krakowie Katedra Elektroniki WIET AGH Akademia Górniczo- Hutnicza w Krakowie Katedra Elektroniki WIET Technika Microprocesorowa Laboratorium 6 Timery i liczniki Auhor: Paweł Russek Tłumaczenie: Ernest Jamro http://www.fpga.agh.edu.pl/tm

Bardziej szczegółowo

Instytut Teleinformatyki

Instytut Teleinformatyki Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Systemy Czasu Rzeczywistego Zastosowanie interfejsów SPI i I2C do komunikacji laboratorium: 02 autor: mgr inż. Paweł

Bardziej szczegółowo

Mikroprocesory i Mikrosterowniki Laboratorium

Mikroprocesory i Mikrosterowniki Laboratorium Laboratorium Ćwiczenie 4 Magistrala SPI Program ćwiczenia: konfiguracja transmisji danych między mikrokontrolerem a cyfrowym czujnikiem oraz sterownikiem wyświetlaczy 7-segmentowych przy użyciu magistrali

Bardziej szczegółowo

Podstawy systemów mikroprocesorowych. Interfejs USART. Interfejsy szeregowe w mikrokontrolerach AVR

Podstawy systemów mikroprocesorowych. Interfejs USART. Interfejsy szeregowe w mikrokontrolerach AVR Podstawy systemów mikroprocesorowych Wykład nr 4 Interfejsy szeregowe dr Piotr Fronczak http://www.if.pw.edu.pl/~agatka/psm.html Komputery przesyłają dane na dwa sposoby: równolegle: Kilka bitów danych

Bardziej szczegółowo

Wbudowane układy peryferyjne cz. 1 Wykład 7

Wbudowane układy peryferyjne cz. 1 Wykład 7 Wbudowane układy peryferyjne cz. 1 Wykład 7 Wbudowane układy peryferyjne UWAGA Nazwy rejestrów i bitów, ich lokalizacja itd. odnoszą się do mikrokontrolera ATmega32 i mogą być inne w innych modelach! Ponadto

Bardziej szczegółowo

Instytut Teleinformatyki

Instytut Teleinformatyki Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Systemy Czasu Rzeczywistego Programowanie wyświetlacza graficznego LCD laboratorium: 01 autor: mgr inż. Paweł Pławiak

Bardziej szczegółowo

HC541 8-bitowy bufor jednokierunkowy HC245 8-bitowy bufor dwukierunkowy HC244 dwa 4-bitowe bufory jednokierunkowe

HC541 8-bitowy bufor jednokierunkowy HC245 8-bitowy bufor dwukierunkowy HC244 dwa 4-bitowe bufory jednokierunkowe Bufory (BUFFER) Bufory stosuje się po to by: - zwiększyć obciążalność magistrali - chronić układ wysokiej skali integracji - sterować przepływem danych HC541 8-bitowy bufor jednokierunkowy HC245 8-bitowy

Bardziej szczegółowo

CW-HC08 Programowanie mikrokontrolera MC9S08QD4 [2]

CW-HC08 Programowanie mikrokontrolera MC9S08QD4 [2] CW-HC08 Programowanie mikrokontrolera MC9S08QD4 [2] Jan Kędzierski Marek Wnuk Wrocław 2012 Dokument stanowi instrukcję do ćwiczenia w ramach kursu Sterowniki robotów. Przebieg ćwiczenia Celem ćwiczenia

Bardziej szczegółowo

Obsługa modułu wyświetlacza LCD

Obsługa modułu wyświetlacza LCD Kurs programowania mikrokontrolerów PIC (4) Obsługa modułu wyświetlacza LCD Dodatkowe materiały na CD/FTP Niestety, jeszcze nie doczekaliśmy się urządzeń, które komunikują się z nami w ludzki sposób, tzn.

Bardziej szczegółowo

Instrukcja obsługi i użytkowania Panel sterujący KPZ 52(E) 7

Instrukcja obsługi i użytkowania Panel sterujący KPZ 52(E) 7 Instrukcja obsługi i użytkowania Panel sterujący KPZ 52(E) 7 1 Wyświetlacz 2 Ekran LCD 0 : Waga znajduje się w położeniu zerowym STABLE : Waga znajduje się w położeniu spoczynkowym (bez zmiany wskazań

Bardziej szczegółowo

Wbudowane układy komunikacyjne cz. 1 Wykład 10

Wbudowane układy komunikacyjne cz. 1 Wykład 10 Wbudowane układy komunikacyjne cz. 1 Wykład 10 Wbudowane układy komunikacyjne UWAGA Nazwy rejestrów i bitów, ich lokalizacja itd. odnoszą się do mikrokontrolera ATmega32 i mogą być inne w innych modelach!

Bardziej szczegółowo

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki ĆWICZENIE Nr 10 (3h) Implementacja interfejsu SPI w strukturze programowalnej Instrukcja pomocnicza do laboratorium z przedmiotu

Bardziej szczegółowo

Programowanie mikrokontrolerów. 5 grudnia 2007

Programowanie mikrokontrolerów. 5 grudnia 2007 Programowanie mikrokontrolerów Marcin Engel Marcin Peczarski 5 grudnia 2007 Przerwania Umożliwiają asynchroniczną obsługę różnych zdarzeń, np.: zmiana stanu wejścia, zakończenie przetwarzania analogowo-cyfrowego,

Bardziej szczegółowo

Układy czasowo-licznikowe w systemach mikroprocesorowych

Układy czasowo-licznikowe w systemach mikroprocesorowych Układy czasowo-licznikowe w systemach mikroprocesorowych 1 W każdym systemie mikroprocesorowym znajduje zastosowanie układ czasowy lub układ licznikowy Liczba liczników stosowanych w systemie i ich długość

Bardziej szczegółowo

Mikrokontroler ATmega32. System przerwań Porty wejścia-wyjścia Układy czasowo-licznikowe

Mikrokontroler ATmega32. System przerwań Porty wejścia-wyjścia Układy czasowo-licznikowe Mikrokontroler ATmega32 System przerwań Porty wejścia-wyjścia Układy czasowo-licznikowe 1 Przerwanie Przerwanie jest inicjowane przez urządzenie zewnętrzne względem mikroprocesora, zgłaszające potrzebę

Bardziej szczegółowo

1. Wstęp Różnice pomiędzy mikrokontrolerami ST7 a ST7LITE Rdzeń mikrokontrolerów ST7FLITE... 15

1. Wstęp Różnice pomiędzy mikrokontrolerami ST7 a ST7LITE Rdzeń mikrokontrolerów ST7FLITE... 15 3 1. Wstęp... 9 2. Różnice pomiędzy mikrokontrolerami ST7 a ST7LITE... 11 3. Rdzeń mikrokontrolerów ST7FLITE... 15 3.1. Jednostka centralna...16 3.2. Organizacja i mapa pamięci...19 3.2.1. Pamięć RAM...20

Bardziej szczegółowo

PRZETWORNIK ADC w mikrokontrolerach Atmega16-32

PRZETWORNIK ADC w mikrokontrolerach Atmega16-32 Zachodniopomorski Uniwersytet Technologiczny WYDZIAŁ ELEKTRYCZNY Katedra Inżynierii Systemów, Sygnałów i Elektroniki LABORATORIUM TECHNIKA MIKROPROCESOROWA PRZETWORNIK ADC w mikrokontrolerach Atmega16-32

Bardziej szczegółowo

Inż. Kamil Kujawski Inż. Krzysztof Krefta. Wykład w ramach zajęć Akademia ETI

Inż. Kamil Kujawski Inż. Krzysztof Krefta. Wykład w ramach zajęć Akademia ETI Inż. Kamil Kujawski Inż. Krzysztof Krefta Wykład w ramach zajęć Akademia ETI Metody programowania Assembler Język C BASCOM Assembler kod maszynowy Zalety: Najbardziej efektywny Intencje programisty są

Bardziej szczegółowo

Programowanie Układów Logicznych kod kursu: ETD6203. Komunikacja z układami cyfrowymi W dr inż. Daniel Kopiec

Programowanie Układów Logicznych kod kursu: ETD6203. Komunikacja z układami cyfrowymi W dr inż. Daniel Kopiec Programowanie Układów Logicznych kod kursu: ETD6203 Komunikacja z układami cyfrowymi W5 30.03.2016 dr inż. Daniel Kopiec Plan wykładu 1 2 3 4 5 6 Standard komunikacji RS232 Enkoder obrotowy Wyświetlacz

Bardziej szczegółowo

Wykład 4. Przegląd mikrokontrolerów 16-bit: - PIC24 - dspic - MSP430

Wykład 4. Przegląd mikrokontrolerów 16-bit: - PIC24 - dspic - MSP430 Wykład 4 Przegląd mikrokontrolerów 16-bit: - PIC24 - dspic - MSP430 Mikrokontrolery PIC Mikrokontrolery PIC24 Mikrokontrolery PIC24 Rodzina 16-bitowych kontrolerów RISC Podział na dwie podrodziny: PIC24F

Bardziej szczegółowo

Dokumentacja Techniczna. Czytnik RFID UW-M4GM

Dokumentacja Techniczna. Czytnik RFID UW-M4GM Dokumentacja Techniczna Czytnik RFID UW-M4RM UW-M4GM -man-2 1 WPROWADZENIE... 3 2 DANE TECHNICZNE... 4 3 OPIS ELEMENTÓW OBUDOWY... 5 4 KOMENDY PROTOKÓŁU MODBUS RTU... 6 4.1 Adresy MODBUS...7 2 1 Wprowadzenie

Bardziej szczegółowo

PROGRAMOWALNE SYSTEMY MECHATRONIKI

PROGRAMOWALNE SYSTEMY MECHATRONIKI PROGRAMOWALNE SYSTEMY MECHATRONIKI Laboratorium nr 5 Podstawy programowania mikrokontrolerów. Przerwania. 1. System przerwań informacje ogólne Programy sterujące mikrokontrolerów rzadko mają postać listy

Bardziej szczegółowo

Obługa czujników do robota śledzącego linie. Michał Wendland 171628 15 czerwca 2011

Obługa czujników do robota śledzącego linie. Michał Wendland 171628 15 czerwca 2011 Obługa czujników do robota śledzącego linie. Michał Wendland 171628 15 czerwca 2011 1 Spis treści 1 Charakterystyka projektu. 3 2 Schematy układów elektronicznych. 3 2.1 Moduł czujników.................................

Bardziej szczegółowo

Układy czasowo-licznikowe w systemach mikroprocesorowych

Układy czasowo-licznikowe w systemach mikroprocesorowych Układy czasowo-licznikowe w systemach mikroprocesorowych 1 W każdym systemie mikroprocesorowym znajduje zastosowanie układ czasowy lub układ licznikowy Liczba liczników stosowanych w systemie i ich długość

Bardziej szczegółowo

PRUS. projekt dokumentacja końcowa

PRUS. projekt dokumentacja końcowa Adrian Antoniewicz Marcin Dudek Mateusz Manowiecki 17.01.2007 PRUS projekt dokumentacja końcowa Temat: Układ zdalnego sterowania (za pomocą interfejsu RS-232) wyświetlaczem LCD. Spis treści: 1. 2. 3. 4.

Bardziej szczegółowo

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej Systemy wbudowane Witold Kozłowski Zakład Fizyki i Technologii Struktur Nanometrowych 90-236 Łódź, Pomorska 149/153 https://std2.phys.uni.lodz.pl/mikroprocesory/

Bardziej szczegółowo

Dodatek D. Układ współpracy z klawiaturą i wyświetlaczem 8279

Dodatek D. Układ współpracy z klawiaturą i wyświetlaczem 8279 Dodatek D Układ współpracy z klawiaturą i wyświetlaczem 8279 Programowany układ współpracy z klawiatura i wyświetlaczem może być wykorzystywany do automatycznej obsługi matrycy klawiszy oraz zestawu wskaźników

Bardziej szczegółowo

Expandery wejść MCP23S17 oraz MCP23017

Expandery wejść MCP23S17 oraz MCP23017 Expandery wejść MCP23S17 oraz MCP23017 Expander I/O MCP20S17 I2C Piny wyjściowe expanderów MCP23S17 oraz MCP23017 Expander I/O MCP23S17 SPI Podłączenie urządzenia na magistrali SPI z płytą Arduino. Linie

Bardziej szczegółowo

Ćwiczenie 7 Matryca RGB

Ćwiczenie 7 Matryca RGB IMiO PW, LPTM, Ćwiczenie 7, Matryca RGB -1- Ćwiczenie 7 Matryca RGB IMiO PW, LPTM, Ćwiczenie 7, Matryca RGB -2-1. Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z inną oprócz RS - 232 formą szeregowej

Bardziej szczegółowo

LabVIEW PLATFORMA EDUKACYJNA Lekcja 6 LabVIEW i Arduino programy wykorzystujące wyświetlacz LCD, czujnik temperatury, PWM i diodę LED

LabVIEW PLATFORMA EDUKACYJNA Lekcja 6 LabVIEW i Arduino programy wykorzystujące wyświetlacz LCD, czujnik temperatury, PWM i diodę LED LabVIEW PLATFORMA EDUKACYJNA Lekcja 6 LabVIEW i Arduino programy wykorzystujące wyświetlacz LCD, czujnik temperatury, PWM i diodę LED Przygotował: Jakub Wawrzeńczak 1. Wprowadzenie Lekcja przedstawia wykorzystanie

Bardziej szczegółowo

1. Wprowadzenie Programowanie mikrokontrolerów Sprzęt i oprogramowanie... 33

1. Wprowadzenie Programowanie mikrokontrolerów Sprzęt i oprogramowanie... 33 Spis treści 3 1. Wprowadzenie...11 1.1. Wstęp...12 1.2. Mikrokontrolery rodziny ARM...13 1.3. Architektura rdzenia ARM Cortex-M3...15 1.3.1. Najważniejsze cechy architektury Cortex-M3... 15 1.3.2. Rejestry

Bardziej szczegółowo

Urządzenia peryferyjne RS-232. Wykład 2

Urządzenia peryferyjne RS-232. Wykład 2 Urządzenia peryferyjne RS-232 Wykład 2 Transmisja szeregowa Poprzez kanały telekomunikacyjne Zaleta: niskie koszty Wymaga konwersji szeregowo/równoległej np. rejestr przesuwny Dwie metody: asynchroniczna

Bardziej szczegółowo

Programowanie mikrokontrolerów AVR

Programowanie mikrokontrolerów AVR Programowanie mikrokontrolerów AVR Czym jest mikrokontroler? Mikrokontroler jest małym komputerem podłączanym do układów elektronicznych. Pamięć RAM/ROM CPU wykonuje program Układy I/O Komunikacje ze światem

Bardziej szczegółowo

Wyświetlacze graficzne : 162x64 z kontrolerem S1D x60 z kontrolerem S1D15710

Wyświetlacze graficzne : 162x64 z kontrolerem S1D x60 z kontrolerem S1D15710 S1D15705 Wyświetlacze graficzne : 162x64 z kontrolerem S1D15705 219x60 z kontrolerem S1D15710 S1D15710 Wyświetlacze S1D15705/S1D15710 są graficznymi wyświetlaczami ciekłokrystalicznymi. Wyposażone są w

Bardziej szczegółowo

OPBOX ver USB 2.0 Mini Ultrasonic Box with Integrated Pulser and Receiver

OPBOX ver USB 2.0 Mini Ultrasonic Box with Integrated Pulser and Receiver OPBOX ver.0 USB.0 Mini Ultrasonic Box with Integrated Pulser and Receiver Przedsiębiorstwo BadawczoProdukcyjne OPTEL Sp. z o.o. ul. Morelowskiego 30 PL59 Wrocław phone: +8 7 39 8 53 fax.: +8 7 39 8 5 email:

Bardziej szczegółowo

Układy czasowe / liczniki (timers/counters)

Układy czasowe / liczniki (timers/counters) Układy czasowe / liczniki (timers/counters) Współpraca MK z otoczeniem w czasie rzeczywistym wymaga odliczania czasu, zliczania zdarzeń lub generowania złożonych sekwencji binarnych. Funkcje te realizowane

Bardziej szczegółowo

Moduł mikrokontrolera PROTON (v1.1)

Moduł mikrokontrolera PROTON (v1.1) Moduł mikrokontrolera OPIS Moduł mikrokontrolera PROTON (Rys. 1) przeznaczony jest do stosowania w prototypowych systemach uruchomieniowych. Podstawowym elementem modułu jest układ scalony mikrokontrolera

Bardziej szczegółowo