Architektury poc - PowerPoint PPT Presentation

About This Presentation
Title:

Architektury poc

Description:

Architektury po ta a paraleln ch syst m Atmega 32 Zpracoval: Doc. Ing. La ezar Li ev, CSc. ... – PowerPoint PPT presentation

Number of Views:85
Avg rating:3.0/5.0
Slides: 91
Provided by: Laceza
Category:
Tags: architektury | jtag | poc

less

Transcript and Presenter's Notes

Title: Architektury poc


1
Architektury pocítacu a paralelných systému
  • Atmega 32
  • Zpracoval Doc. Ing. Lacezar Licev, CSc.

2
Vlastnosti mikrokontroleru ATmega32
  • 8-bitový RISC mikrokontroler.
  • Výkon - 16 MIPS/16 MHz - 12x rychlejší než
    standardní x51 na stejné taktovací frekvenci.
  • Plne statická funkce. Interní kalibrovaný RC
    oscilátor.
  • Dvou-cyklová násobicka na cipu.
  • 131 výkonných instrukcí, vetÅ¡inou
    jedno-cyklových.
  • 32 osmibitových registru pro obecné použití.
  • 32kB programová FLASH pamet, programovatelná
    prímo v aplikaci s možností uzamknutí, 10.000
    zápisových/mazacích, cyklu s volitelnou velikostí
    bootloader sekce.

3
Vlastnosti mikrokontroleru ATmega32
  • 1kB EEPROM pamet, 100.000 zápisových/mazacích
    cyklu.
  • 2kB interní SRAM pamet.
  • JTAG rozhraní s možností programování a ladení.
  • 8-kanálový 10-bitový A/D prevodník, analogový
    komparátor.
  • Bytove orientované sériové rozhraní (TWI).
  • Dve programovatelné USART komunikacní rozhraní.
  • Master/slave SPI sériové rozhraní.
  • Dva 8-bitové a jeden 16-bitové cítace, s
    vlastní pred-delickou.

4
Vlastnosti mikrokontroleru ATmega32
  • Dva 8-bitové PWM kanály.
  • 4 PWM kanálu s programovatelným rozliÅ¡ením 2-16
    bitu.
  • Programovatelný Watch-dog casovac s oscilátorem
    na cipu.
  • Cítac reálného casu RTC s oddeleným
    oscilátorem.
  • 6 režimu snížené spotreby.
  • 32 programovatelných I/O vývodu.
  • Napájecí napetí 4.5-5.5V.

5
ATmega32
6
Zapojení AVR-KITu
7
Podpora
  1. Pro vývoj aplikací lze použít vývojová prostredí
    ruzných výrobcu a také systém AVR Studio volné
    dostupné na stránkách firmy Atmel.
  2. Programování lze provádet volne dostupný
    softwarem.

8
Po rozbalení archívu avr-kit.zip vznikne
adresár s obsahem
  • ./avrkit.exe gt Program pro programování
    AVR Kitu
  • ./avr-kit gt Skupina projektu pro AVR
    Studio5
  • ./avrkit gt Adresár s knihovnou avrkit
  • ./leds gt Adresár s projektem pro LED diody
  • ./i2c gt Adresár s projektem pro sbernici i2c
  • ./demo gt Adresár s demo projekty

9
Obsah adresáre - avrkit
  • ./avrkit.c gt Zdrojový kód knihovny avrkit
  • ./avrkit.h gt Hlavickový soubor knihovny avrkit

10
Obsah adresáre - leds
  • ./leds.avrgccproj gt Projekt AVR Studia
  • ./leds.c gt Zdrojový kód programu leds
  • ./Debug gt Adresár pro výstupní soubory
  • ./Release gt Adresár pro výstupní soubory

11
Obsah adresáre - i2c
  • ./i2c.avrgccproj gt Projekt AVR Studia
  • ./i2c.c gt Zdrojový kód programu i2c
  • ./Debug gt Adresár pro výstupní soubory
  • ./Release gt Adresár pro výstupní soubory

12
Obsah adresáre - demo
  • ./demoleds.hex gt Demo program pro LEDky
  • ./demo8x8.hex gt Demo program pro led displej
  • ./demoi2c.hex gt Demo program pro sbìrnici i2c

13
ATmega32 - 4 V/V porty (PA, PB, PC a PD)
  • Konfigurace portu (A, B, C a D) pomoci registru
  • DDRx - zápisem log. 1 na konkrétní bit tohoto
    registru urcíme, že daný pin bude výstupní a prí
    log. 0 bude vstupní.
  • PORTx - když je pin definovaný jako vstupní a v
    reg. PORTx je definována log.1 je tento pin
    udržován v klidovém stavu na hodnotu 1. Pri
    log. 0 zapsané do reg. PORTx a když je pin
    definován jako výstupní urcuje reg. PORTx log.
    hodnotu na konkrétním pinu.
  • PINx - Zapsáním log. 1 na pin tohoto registru
    nastaví log. 1 na konkrétním pinu nezávisle na
    registru DDRx. Pokud je port nastaven jako
    vstupní lze pomocí registru PINx zjistit aktuální
    stav na portu.

14
Postup pri programování mikropocítace AVR-KITu
  • Aktivace BOOTLoader - stlacením tlacítka PIND4,
    pak
  • stlacením a uvolnení tlacítka RESET - procesor se
    uvede do módu programování pameti FLASH - Sviti
    LED dioda pripojenou na PIND2.
  • Restart procesoru - stlacení a uvolnení tlacítka
    RESET.
  • Po ukoncení programování program avrkit.exe
    zustává aktivní a je pripraven vypisovat data,
    které bude mikropocítac zapisovat na sériový port
    pomocí funkce printf. Nechcete-li tuto funkci
    programu avrkit.exe využívat je ji možné vypnou
    parametrem -n.

15
Programování AVR-KITuprogram avrkit.exe (archív
avrkit.zip).
  • avrkit.exe -h
  • -h show this help
  • -d serial port device (def 'COM1')
  • -e erase AVR flash only
  • -l list available COM ports
  • -n no terminal mode after programming
  • -s show AVR flash only
  • -t terminal mode only
  • -v verify AVR flash memory only
  • -x show HEX file only
  • avrkit.exe -d COM3 demoleds.hex

16
Architektury pocítacu a paralelných systému
  • Cvicení na
  • Atmel EVMS-mega128
  • Zpracoval Doc. Ing. Lacezar Licev, CSc.

17
Vlastnosti vývojové desky
  • Obsahuje RISC MCU Atmel ATmega128-16AI TQFP64
  • Pro vytvárení programového kódu - Atmel AVR
    Studio
  • Napájení
  • Power konektor (napr. z wall adapteru)
  • USB (chráneno SMD tavnou vymenitelnou
    pojistkou)
  • Možnosti programování mikrokontroleru
  • ISP ci JTAG programovací rozhraní (JTAG ladení
    kódu)
  • USB komunikacní rozhraní (bootloader-u MCU)

18
Vlastnosti vývojové desky
  • Uživatelská rozhraní
  • 4 LED diody
  • 8 tlacítek
  • Multiplexovaný sedmisegmentový LED display (4
    digity)
  • LCD display (2x 16 znaku, podsvetlený,
    odnímatelný)
  • Komunikacní rozhraní
  • RS-232 (canon 9 konektor)
  • USB (konektor typu B)
  • SPI (pinová liÅ¡ta)
  • I2C (pinová liÅ¡ta)

19
Vlastnosti vývojové desky
  • Ostatní rozhraní
  • 7 univerzálních vstupu/výstupu (pinová liÅ¡ta)
  • 2 ADC vstupy/výstupu ref. napetí (pinová liÅ¡ta)
  • Rozhraní pro pripojení externí pameti
  • Piny umožnující napájení pripojených modulu
    napetím 5V

20
Vlastnosti vývojové desky
  • Deska dále obsahuje
  • 5V napetový regulátor
  • Nastavitelnou napetovou referenci pro interní
    AD
  • Krystal 14.74567MHz v patici - hlavní zdroj
    hod. signálu
  • Krystal 32.768kHz pro RTC
  • Piezomenic bez vlastního budice (beeper)
  • Trimr pro nastavení kontrastu LCD displeje
  • Resetovací tlacítko
  • Rozmery desky(v x Å¡ x d) 25.0mm x 146.4mm x
    68.0mm

21
Vlastnosti mikrokontroleru ATmega128-16AI TQFP64
  • 8-bitový RISC mikrokontroler.
  • Výkon - 16 MIPS/16 MHz - 12x rychlejší než
    standardní x51 na stejné taktovací frekvenci.
  • Plne statická funkce. Interní kalibrovaný RC
    oscilátor.
  • Dvou-cyklová násobicka na cipu.
  • 133 výkonných instrukcí, vetÅ¡inou
    jedno-cyklových.
  • 32 osmibitových registru pro obecné použití.
  • 128kB programová FLASH pamet, programovatelná
    prímo v aplikaci s možností uzamknutí, 10.000
    zápisových/mazacích, cyklu s volitelnou velikostí
    bootloader sekce.

22
Vlastnosti mikrokontroleru ATmega128-16AI TQFP64
  • 4kB EEPROM pamet, 100.000 zápisových/mazacích
    cyklu.
  • 4kB interní SRAM pamet.
  • JTAG rozhraní s možností programování a ladení.
  • 8-kanálový 10-bitový A/D prevodník, analogový
    komparátor.
  • Bytove orientované sériové rozhraní (TWI).
  • Dve programovatelné USART komunikacní rozhraní.
  • Master/slave SPI sériové rozhraní.
  • Dva 8-bitové a dva 16-bitové cítace, s vlastní
    pred-delickou.

23
Vlastnosti mikrokontroleru ATmega128-16AI TQFP64
  • Dva 8-bitové PWM kanály.
  • 6 PWM kanálu s programovatelným rozliÅ¡ením 2-16
    bitu.
  • Programovatelný Watch-dog casovac s oscilátorem
    na cipu.
  • Cítac reálného casu RTC s oddeleným
    oscilátorem.
  • 6 režimu snížené spotreby.
  • 53 programovatelných I/O vývodu.
  • Napájecí napetí 4.5-5.5V.

24
Podpora
  1. Pro vývoj aplikací lze použít vývojová prostredí
    ruzných výrobcu a také systém AVR Studio volné
    dostupné na stránkách firmy Atmel.
  2. Programování lze provádet volne dostupný
    softwarem.

25
Strucný popis
  1. Vývojový modul obsahuje RISC mikrokontroler
    vývojové rady AVR firmy Atmel s oznacením Atmel
    EVMS-mega128.
  2. Maximálním výkon.

26
Atmel EVMS-mega128
27
Atmel EVMS-mega128
28
Atmel EVMS-mega128
29
Atmel EVMS-mega128
30
Blokové schéma
31
Napájení
32
Jumper JP PWR
33
Sériové rozhraní RS-232JP UART 1
34
Význam vývodu konektoru RS 232 (UART)
35
Logická vazba mezí tlacítky a MCU
36
LED - display
37
Rídící signály a pozicí LED display
38
LCD display a vývody MCU
39
Vývody ISP a JTAG
40
Nahrávání programu do MCU
Vlastnosti vývojové desky
41
  • Programování MCU

42
Hlavicka - 1
  • Program counter 0
  • Version v1.0
  • Hardware atmega128-16ai TQFP64
  • Xtall 14.7456 MHz
  • Author

43
Hlavicka 2.1Evms-mega128 v 1.0 board
congiguration

  • Jumpers
  • Power depends on power supply used (REG or USB
  • VREF Dont care (for example 2.5v)
  • LEE Dont care
  • UART1 Dont care
  • Connectors

44
Hlavicka 2.2Evms-mega128 v 1.0 board
congiguration

  • Connectors
  • LCD display Dont care
  • Ext. memory Dont care
  • ADC Dont care
  • SPI Dont care
  • I2C Dont care
  • Misc Dont care

45
Sekce include
  • Includes
  • .NOLIST
  • .include m128def.inc
  • .LIST

46
Sekce konstant
  • Constants
  • .EQU BaudConst 7 Baudova rychlost
  • .EQU BuffLen 8 Velikost bufferu

47
Sekce pojmenování registru
  • Register definitions
  • .def ZeroReg r1
  • .def FFReg r2
  • .def PDelReg r16
  • .
  • .

48
Sekce pametí SRAM
  • Data Segment
  • .DSEG
  • .Var .BYTE 1 1 bytova prom. na adr. Var1
  • .Buffer .BYTE 8 8 bytova prom. na adr. Buffer

49
Sekce EEPROM
  • EEPROM segment
  • .ESEG
  • ConstArr .DB 0x00, 0x00 definuje tabulku
    constant 0x00, 0x00 na adrese ConstArr

50
Sekce MAKER
  • MACROs
  • .MACRO INC_Z16
  • add ZL, _at_0
  • adc ZH, _at_1
  • .ENDM

51
Programová sekce
  • Program segment
  • .CSEG
  • .org 0x0000 urcení adresy
  • .ldi TmpReg, 0 instrukce
  • CharTab .db 0x10, 0x02 definuje tab.konstant

52
Assembler
  • ARITHMETIC AND LOGIC INSTRUCTIONS
  • ADD Rd, Rr Add Two Registers Rd ? Rd Rr
    Z,C,N,V,H 1
  • ADC Rd, Rr Add with Carry Two Registers Rd ?
    Rd Rr C Z,C,N,V,H 1
  • SUB Rd, Rr Subtract Two Registers Rd ? Rd -
    Rr Z,C,N,V,H 1
  • SUBI Rd, K Subtract Constant from Register
    Rd ? Rd - K Z,C,N,V,H 1
  • BRANCH INSTRUCTIONS
  • RJMP k Relative Jump PC ? PC k 1
  • RCALL k Relative Subroutine Call PC ? PC k 1
  • RET Subroutine Return PC ? STACK

53
Assembler
  • DATA TRANSFER INSTRUCTIONS
  • LD Rd, Z Load Register Indirect Rd ? (Z)
  • ST Z, Rr Store Register Indirect (Z) ?
    Rr
  • MOV Rd, Rr Move between Registers Rd ? Rr
  • BIT AND BIT-TEST INSTRUCTIONS
  • SBI P, b Set Bit in I/O Register I/O(P,b)
    ? 1
  • CBI P, b Clear Bit in I/O Register I/O(P,b)
    ? 0
  • LSL Rd Logical Shift Left Rd(n1) ?
    Rd(n), Rd(0) ? 0 Z,C,N,V 1
  • LSR Rd Logical Shift Right Rd(n) ?
    Rd(n1), Rd(7) ? 0 Z,C,N,V 1

54
Výuková deska EVMS-mega128 v1.0 Výukové
príklady
  • 1.0 - LEDs rotating light 0
  • 1.1 - LEDs rotating light 1
  • 2.0 - Buttons 0
  • 3.0 - Beeper 0
  • 3.1 - Beeper 1
  • 4.0 - LED display 0
  • 5.0 - LCD display 0
  • 5.1 - LCD display 1
  • 6.0 - UARTs 0

55
Architektury pocítacu
  • Cvicení na
  • EVM ATmega8535 v 1.0
  • Zpracoval Doc. Ing. Lacezar Licev, CSc.

56
Vlastnosti vývojového modulu
  1. Obsahuje RISC-ový mikrokontroler Atmel
    ATmega8535-16JC(JI).
  2. Programování je možné provádet volne dostupným
    vývojovým softwarem.
  3. Mikrokontroler se programuje prímo na základové
    desce progr. kabelem.
  4. Modul obsahuje 4 sedmi-segmentové LED displeje, 8
    LED diod a 8 tlacítek.
  5. Modul dále obsahuje odpojitelné sériové rozhraní
    RS-232.

57
Vlastnosti vývojového modulu
  • VetÅ¡ina I/O vývodu MCU je prístupná, je možné
    pripojit rozširující hardware.
  • Zdrojem hodinového signálu je krystal 14.7456 MHz
    umístený v patici.
  • Pro vnitrní RTC obvod mikrokontroleru je na desce
    umistený odpojitelný krystal 32.768 kHz.
  • Mikrokontroler je možné resetovat tlacítkem
    RESET.
  • Rozmery (v x Å¡ x d) 27mm x 114mm x 74mm

58
Vlastnosti mikrokontroleru ATmega8535-16JI
  1. 8-bitový RISC mikrokontroler.
  2. Výkon - 16 MIPS / 16 MHz - 12x rychlejší než
    standardní x51 na stejné taktovací frekvenci.
  3. Plne statická funkce.
  4. Dvou-cyklová násobicka na cipu.
  5. 130 výkonných instrukcí, vetšinou jedno-cyklových.

59
Vlastnosti mikrokontroleru ATmega8535-16JI
  1. 32 osmibitových registru pro obecne použití.
  2. 8kB programová FLASH pamet, programovatelná prímo
    v aplikaci s možností uzamknutí, 10.000
    zápisových/mazacích cyklu.
  3. 512B EEPROM pamet, 100.000 zápisových/mazacích
    cyklu.
  4. 512B interní SRAM pamet.
  5. 8-kanálový 10-bitový A/D prevodník, analogový
    komparátor.
  6. 4 PWM výstupy.

60
Vlastnosti mikrokontroleru ATmega8535-16JI
  1. Programovatelný USART.
  2. Master/slave SPI sériové rozhraní.
  3. Dva 8-bitové cítace, jeden 16-bitový.
  4. Programovatelní Watch-dog casovac.
  5. Cítac reálného casu RTC.
  6. Tri režimy snížení spotreby active, idle a
    power-down.
  7. 32 programovatelných I/O vývodu.
  8. Napájecí napetí 4.5-5.5V

61
Použití základové desky
  1. Výuka mikroprocesorové techniky.
  2. Vestavené rídící systémy (merení, rízení a
    regulace).
  3. Komunikace.
  4. Rízení motoru.

62
Podpora
  1. Pro vývoj aplikací lze použít vývojová prostredí
    ruzných výrobcu a také systém AVR Studio volné
    dostupné na stránkách firmy Atmel.
  2. Programování lze provádet volne dostupný
    softwarem.

63
Strucný popis
  1. Vývojový modul obsahuje RISC mikrokontroler
    vývojové rady AVR firmy Atmel s oznacením
    ATmega8535.
  2. Maximálním výkon 16MIPS.

64
Blokové schéma
65
Rozmístení konektoru a propojek
66
Napájení
67
Vývody rozširujících konektoru
68
Význam vývodu konektoru
69
Rozširující konektory CONx
70
Programovací rozhraní ISP
71
Používání LED-display
72
RS-232
73
Další použití
  1. Používání 8 LED diod.
  2. Používání tlacítek.
  3. Používání 4 sedmi-segmentových LED displeju.
  4. Používání sériového rozhraní RS-232.

74
  • Programování MCU

75
Hlavicka
  • Program Counter 0
  • Version v1.0
  • Hardware EVM-ATmega8535 v1.0
  • (Xtall 14.7456MHz)
  • Author

76
Short description
  • Short description
  • -----------------
  • Program shows on LED diodes actual state of all
    buttons (button down lighting LED).

77
Výpis používaných souboru - Includes
  • Includes
  • .NOLIST
  • .include "m8535def.inc"
  • .LIST

78
Constants
79
Register definitions
  • Register definitions
  • .DEF ZeroReg r1
  • .DEF TmpReg r16
  • .DEF DispPos r2
  • .DEF PDelReg r21

80
Data segment
  • DATA segment
  • .DSEG

81
EEPROM segment
  • EEPROM segment
  • .ESEG

82
MACRO segment
  • MACROs

83
PROGRAM segment
  • PROGRAM segment
  • .CSEG

84
Interrupt vectors
  • Interrupt vectors
  • .ORG 0x0000
  • rjmp RESET Reset Handler
  • rjmp EXT_INT0 External Interrupt
  • rjmp EXT_INT1 External Interrupt
  • .
  • .

85
Reset
  • Reset
  • .ORG 0x0015
  • Reset clr ZeroReg
  • ldi TmpReg, low(RAMEND) Initialize
  • out SPL, TmpReg
  • .
  • .

86
Unused interrupt vectors
  • Unused interrupt vectors
  • EXT_INT0
  • EXT_INT1
  • TIM2_COM
  • TIM2_OVF
  • TIM1_CAP
  • TIM1_COMA
  • .
  • .
  • SPM_RDY reti

87
M A I N
  • M A I N
  • Main rcall TestButtons Call subroutine
    TestButtons
  • com Buttons Buttons lt not(Buttons)
  • out PortC, Buttons PortC lt Buttons
  • rjmp Main Jmp to Main

88
Podprogram - Delay
  • Delay (PDelRegms)
  • Delay1m mov PDelReg2, PDelReg
  • PDelReg2ltPDelReg
  • Repeat
  • Delay1m2 dec PDelReg0 Dec(PDelReg0)
  • brne Delay1m2 Until PDelReg0 0
  • dec PDelReg1 Dec(PDelReg1)
  • brne Delay1m0 Until PDelReg2 0
  • ret

89
Assembler
  • ARITHMETIC AND LOGIC INSTRUCTIONS
  • ADD Rd, Rr Add Two Registers Rd ? Rd Rr
    Z,C,N,V,H 1
  • ADC Rd, Rr Add with Carry Two Registers Rd ?
    Rd Rr C Z,C,N,V,H 1
  • SUB Rd, Rr Subtract Two Registers Rd ? Rd -
    Rr Z,C,N,V,H 1
  • SUBI Rd, K Subtract Constant from Register
    Rd ? Rd - K Z,C,N,V,H 1
  • BRANCH INSTRUCTIONS
  • RJMP k Relative Jump PC ? PC k 1
  • RCALL k Relative Subroutine Call PC ? PC k 1
  • RET Subroutine Return PC ? STACK

90
Assembler
  • DATA TRANSFER INSTRUCTIONS
  • LD Rd, Z Load Register Indirect Rd ? (Z)
  • ST Z, Rr Store Register Indirect (Z) ?
    Rr
  • MOV Rd, Rr Move between Registers Rd ? Rr
  • BIT AND BIT-TEST INSTRUCTIONS
  • SBI P, b Set Bit in I/O Register I/O(P,b)
    ? 1
  • CBI P, b Clear Bit in I/O Register I/O(P,b)
    ? 0
  • LSL Rd Logical Shift Left Rd(n1) ?
    Rd(n), Rd(0) ? 0 Z,C,N,V 1
  • LSR Rd Logical Shift Right Rd(n) ?
    Rd(n1), Rd(7) ? 0 Z,C,N,V 1
Write a Comment
User Comments (0)
About PowerShow.com