diploma thesis, tft driving, multiple microprocessors used

Upload: korenpav

Post on 09-Feb-2018

239 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    1/41

    - 7 -

    OBSAH

    1 VOD DO PROBLEMATIKY................................................................................8

    2 EEN PROBLEMATIKA..................................................................................9

    2.1 BLOKOV SCHMA ZAZEN................................................................................92.2 BLOKOV SCHMA VIZUALIZAN STI ..............................................................10

    2.2.1 Pevodnk USB na sriovou linku - FT232R ............................................102.2.2 Mikrokontrolr C8051F122......................................................................112.2.3 Programovn C8051F122 ......................................................................142.2.4 Displej OSD057VA01CT .........................................................................142.2.5 RAM pam K6X4008T1F .......................................................................152.2.6 Ovladazobrazen vizualizanho panelu ...............................................172.2.7 Multiprocesorov komunikace .................................................................182.2.8 DPS vizualizanho panelu......................................................................18

    2.3 BLOKOV SCHMA STI SBRNICE ...................................................................192.3.1 Mikrokontrolr ATMEGA128....................................................................202.3.2 Programovn..........................................................................................212.3.3 Programovac rozhran ............................................................................212.3.4 Bluetooth .................................................................................................222.3.5 USB rozhran...........................................................................................242.3.6 RS-232 ....................................................................................................262.3.7 RS-485 ....................................................................................................272.3.8 Sbrnice ONE-WIRE (OW) .....................................................................282.3.9 Obvod relnho asu RTC (Real Time Clock)......................................292.3.10 Klvesnice............................................................................................302.3.11 Displej...................................................................................................31 2.3.12 Algoritmus prochzen OW sbrnice ....................................................322.3.13 Popis algoritmu prochzen implementovanho v zazen ..................332.3.14 DPS sbrnicov sti ...........................................................................35

    3 ZVR ................................................................................................................39

    4 SEZNAM POUITCH ZDROJ ........................................................................40

    5 SEZNAM OBRZK ..........................................................................................41PLOHA 1 schma vizualizanho panelu

    PLOHA 2 schma sbrnicov sti zazen

    PLOHA 3 popis algoritmu prochzen OW sbrnice

    PLOHA 4 fotografie vizualizanho panelu

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    2/41

    - 8 -

    1 vod do problematiky

    Inteligentn d

    m nen u hudbou budoucnosti, proto je nutn nalzt optimlneen jeho

    zen. S vyuitm modernch technologi jako je One Wire sbrnice, Bluetooth nebo dotykov

    TFT panel je mono z inteligentnho domu vytvoit komplexn jednotku, kter s monost

    pipojen k PC dv uivateli irokou klu monost jak mt p ehled o svm domnebo svj

    dm dit. Na trhu je mon nalzt mnoho rznch typvrobkpro automatizaci, kter jsou

    pipojiteln na rzn sbrnice. Proto se zde popisovan zazen sna spojit nkolik z nich

    v jeden celek.

    Nvrh takto komplexnho zazen s sebou nese adu problm. Je proto nutn cel

    systm rozdlit do funk

    nch blok

    a ty potom spojit v jeden celek. Cel prce je rozd

    lenadle blokovch schmat jednotlivch st. Hlavn cle prce jsou:

    navrhnout vizualizan panel,

    navrhnout pipojen sbrnic,

    implementovat bezdrtovou technologii,

    spojit ve uveden do jednoho zazen,

    umonit pipojen k PC.

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    3/41

    - 9 -

    2 een problematika

    Cel systm jeeen nvrhem a realizac za

    zen, kter bude splovat poadovanspecifikace. Pro snadnj pochopen funkce zazen je nejlpe jej popsat blokovm

    schmatem.

    2.1 Blokov schma zazen

    Pro celkovou pehlednost je cel dokument lenn do logickch celk dle blokovho

    schmatu (obr.1). Kapitola 2.2 se zabv st vizualizan, kapitola 2.3 pak zen sbrnic.

    MikroprocesorATMEGA128

    Napjen+5V

    Bluetooth USB RS232

    RS485

    One-Wire

    RTC

    MikroprocesorC8051F122

    TFTdotykov

    panel

    RAMpam

    Zdrojnapjen

    Napjen+3,3V

    110 - 230V50 - 60Hz

    Ovldn displeje zen sbrnic

    Obr.1:Blokov schma celho zazen

    Tak jako je blokov schma rozdleno na dvsti, sestv se cel zazen ze dvou DPS.

    Podrobn schmata stejnjako navren DPS a firmware jednotlivch mikrokontrolrjsou

    piloeny na konci dokumentu, potamo v plohch na CD.

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    4/41

    - 10 -

    2.2 Blokov schma vizualizan sti

    Vizualizan st spravuje pouze vykreslovn dat na displej. Data jsou pijmna pes

    SPI rozhran od mikrokontrolru ATMEGA128 ze sbrnicov sti zazen.

    MikroprocesorC8051F122

    TFT dotykovpanel

    OSD057VA01CT

    RAM pamK6X4008T1F

    FT232R

    SPI ->ATMEGA128

    R,G,B(12-29)

    YD,XR,YU,XL (0-3)

    DE(8)ADJ(6)

    DCLK(9)

    A0-A18(30-47,57)D0-D18(48,55)

    OE(58)CE(59)WE(61)

    TxD (62)RxD (63)

    Obr. 2:Blokov schma vizualizanho panelu

    Vechny bloky jsou ble popsny v nsledujcch pti kapitolch. Kompletn schma je

    obsaeno v ploze 1. Fotografie funknho panelu je v ploze 4.

    2.2.1 Pevodnk USB na sriovou linku - FT232R

    Jako obvod pevdjc rozhran USB na rozhran UART byl zvolen produkt firmy FTDI

    Chip FT232R (obr.3). Jedn se o stand-alone chip, kter pro svou prci (na rozdl

    od FT232BM, kter je pouit ve sbrnicov sti) nepotebuje dn extern soustky. USB

    protokol je obsluhovn samotnm ipem a nen tedy poteba jakhokoliv programovn

    firmwaru. Na webovch strnkch vrobce jsou volnstaiteln ovladae pro pipojen k PC

    (Win9x, WinME, WinXP, Win2k, Linux, FreeBSD atd.).

    Po nainstalovn ovlada se obvod pipoj jako virtuln sriov port a je mon hopout jako reln sriov port (vetnhandshake a modemovch signl). FT232R obsahuje

    EEPROM pam, do n je mon nahrt popis zazen (signaturu) tedy data o zazen

    kter se objev po pipojen k PC. Obvod je kompatibiln se standardem USB 1.1 i USB 2.0 s

    rychlost a 3 MBaud/s. Na vstupy mikrokontrolru jsou pivedeny pouze signly TxD a

    RxD. Podrobnj informace o USB sbrnici se nachz v kapitole 2.3.5.

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    5/41

    - 11 -

    Obr. 3:Schma zapojen FT232R

    Po pipojen k USB sbrnici je obvod resetovn a zasl pihlaovac data do PC.

    Zapojen obsahuje tak dvLED diody pro signalizaci penosu.

    2.2.2 Mikrokontrolr C8051F122

    Vizualizan panel d mikrokontrolr firmy Silicon Laboratories C8051F122. Jedn se o

    8mi bitov mikrokontrolr s jdrem CIP-51 (kompatibiln s 8051). C8051F122 disponuje

    tmito vlastnostmi:

    10-bitov SAR AD pevodnk a 100 kS/s s 8 pepnatelnmi vstupy

    programovateln zisk: 16, 8, 4, 2, 1, 0.5,

    teplotn senzor pro stabilizaci pevodu,

    8-bitov SAR AD pevodnk a 500 kS/s s 8 pepnatelnmi vstupy,

    programovateln zisk: 4, 2, 1, 0.5,

    dva 12-bitov DA pevodnky, dva analogov kompartory, napov reference,

    JTAG pro programovn a ladn,

    8051 jdro s pipeline architekturou, 70% instrukc je provedeno v 1 nebo 2 taktechhodin,

    a 100 MIPS (s pouitm vnitnho fzovho zvsu),

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    6/41

    - 12 -

    8448 B intern pamti RAM (8 kB + 256B) pro data,

    128 kB flash pamti pro kd,

    monost pipojen extern pamti a 64 kB, osm 5 V tolerantnch 8mi bitovch I/O port,

    hardwarov imlementovan sbrnice SMBus (I2C kompatibiln), SPI a dvaUARTy,

    programovateln pole 16-bitovch ta/asovase esti capture/compare moduly,

    5 univerzlnch 16-bitovch ta/asova, watchdog,

    obousmrn reset pin,

    intern precizn osciltor 24.5 MHz, fzov zvs (PLL), extern osciltor: krystal, RC,

    C nebo digitln hodiny,

    napjen 3.03.6 V,

    sleep mode, VDD monitor - brown-out detektor,

    100 pinov TQFP pouzdro,

    Rozsah teplot: 40 a +85C

    Ve spojen s digitln kiovatkou (digital crossbar) nabz tento mikrokontrolr irokou klu

    monost. Pednastaven mikrokontrolru je provedeno v jednotce uPCinit.c a to nsledovn

    :

    systmov hodiny pouit externho krystalu 24 Mhz a fzovho zvsu (4x) nakonench 96 MHz,

    watchdog je vypnut,

    SPI linka v 3 vodiovm proveden,

    timer 2 pro nastaven rychlosti UART0 na 9600 baud,

    UART0 nastaven jako synchronn 8mi bitov penos s jednm stop bitem bez parity,

    AD pevodnk s vnitn referenc, kmitotem pevodu 2MHz,

    vnitn pull-up odpory pro P2-P7 zapnuty, pro P1 pouze bity 0, 1 a 2, P0 bity 0, 6 a 7,

    nastaven digitln kiovatky: zapnuty vstupy UART0 a SPI

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    7/41

    - 13 -

    Obr. 4:Zapojen C8051F122

    K mikrokontrolru je pipojen krystal 24 MHz, 3,3 V napjen, blokovac kondenztory

    100 nF, resetovac obvod a jako programovac rozhran je pouit JTAG. Na ovldn RAM

    pamti, displeje a komunikace s mikrokontrolrem ATMEGA jsou vyuity tm vechny

    brny C8051F122 (obr. 4).

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    8/41

    - 14 -

    2.2.3 Programovn C8051F122

    K programovn mikrokontrolru C8051F122 v jazyku C je pouito rozhran JTAG

    pipojenho k programtoru Serial Adapter EC2. Programov kd byl psn v programu

    Vision3 firmy Keil software inc. Cel firmware je logicky rozdlen na jednotliv celky dle

    funknch bloknsledovn:

    FWv1_1.c hlavn program,

    Display.c jednotka pro obsluhu displeje, grafick driver,

    RAM.c jednotka zpisu a ten extern RAM pamti,

    uPCinit.c jednotka pro pednastaven mikrokontrolru,

    communcation.c UART a SPI komunikace,

    c8051F120.h definice registra IO bran mikrokontrolr.

    Kad *.c soubor je svzn s jeho *.h souborem, kter definuje IO brny a konstanty pouit

    v jednotlivch jednotkch.

    2.2.4 Displej OSD057VA01CT

    Pouit TFT panel firmy OSD Displays - OSD057VA01CT disponuje rozlienm

    640x480 obrazovch bod pi 18 bitov hloubce barev. Z dvodu kapacity pamti RAM a

    kvli jednoduchosti ovldn se souasn ukldaj a vytaj pouze 8b dat. Displej je zen

    pomoc hodin a horizontln-vertikln synchronizace. Data jsou na displej poslna po

    dcch (640 pixel, kad pixel je zapsn po 1 cyklu hodin ze stavu na R, G, B), kdy po

    kadm odeslanm dku nsleduje horizontln blank (160x DCLK) ve kterm se do RAM

    pamti mikrokontrolru pipravuje dal dek. Po vykreslen vech dknsleduje vertikln

    blank (7200x DCLK), ve kterm se do extern pamti RAM pipravuje vykreslen nsledujc

    obrazovky displeje. V tto dob displej te dotykov panel a d o data mikrokontrolr

    ATMEGA128. Displej je ble podsvcen, zmnou stdy na pinu ADJ je mono mnit jas.

    Zapojen znzoruje obr. 5.

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    9/41

    - 15 -

    Obr. 5: Schema zapojen displeje

    Jako ovldac prvek byl pouit dotykov panel, kter je soust displeje. Dotykov panel

    pracuje na principu tyvodiovho odporovho mstku. Dotykov panel m dv osy: x

    (signly XR, XL) a y (signly YD,YU). Vyhodnocen msta dotyku probh ve dvou krocch.

    V prvnm kroku je na ose x nastaveno na XR log.1 (5V) a na XL log. 0 (GND). Pot je na ose

    y meno napt na obou kanlech (YD, YU) a vyhodnoceno jako pozice y. Men pozice x

    je obdobn je nastaveno 5V a GND na YD resp. YU a meno na XR a XL.

    2.2.5 RAM pamK6X4008T1F

    Spojenm vkonnho mikrokontrolru a TFT dotykovho panelu byl vytvoen

    vizualizan panel. Mikrokontrolr vak nem dostatek vnitn pamti RAM k uchovn

    kompletn zobrazen strnky, proto byla pidna k mikrokontrolru vnj pamRAM firmy

    Samsung - K6X4008T1F. Pouit pam je typu SRAM velikosti 512kB x 8 s napjecm

    naptm 3,3 V a paralelnm zenm (obr. 6).

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    10/41

    - 16 -

    Obr. 6:Schema zapojen RAM pamti

    Vpoet adresy

    Ped vytenm nebo zpisem hodnoty je nutn vypotat adresu, na kterou se data ulo.

    Pro pehlednost je pamadresovna jako displej, tedy zobrazovan data jsou zapisovna a

    tena ve formtu (x,y,b), kde x,y jsou souadnice vpisu na displej a b je 8-mi bitov hodnota

    barvy. Ve funkcch pro zpis do pamti a ten jsou hodnoty x a y (ob 16ti bitov)

    pepotny na konkrtn brny mikrokontrolru podle nsledujcho kle:

    x: P7 doln byte promnn x

    P6.4 prvn bit hornho byte promnn x

    P6.5 druh bit hornho byte promnn x

    y: P4 doln byte promnn y posunut o 1 bit vpravo

    P6.6 osm bit dolnho byte promnn y

    P6.7 prvn bit hornho byte promnn y

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    11/41

    - 17 -

    2.2.6 Ovladazobrazen vizualizanho panelu

    Pro poteby vykreslovn displeje byl vytvoen softwarov ovladazobrazen. Ovlada

    zapisuje data pmo do extern RAM pam

    ti, odkud jsou vykreslovna na displej. Takimplementuje funkce pro vykreslen seky vpis znaku, vpis textu, vykreslen tlatka

    s popiskem, vykreslen obdlnku a smazn displeje.

    seka DrawLine(int x1,int y1,int x2,int y2,const color) vykresl seku z bodu

    (x1,y1) do bodu (x2,y2) barvy color.

    Znakov sada

    Pro poteby vykreslovn znakbylo zapoteb vytvoit znakovou sadu. Implementovan

    znakov sada m zklad v psmu Arial, jeden znak je velk 16x16 pixel. Znaky byly

    vytvoeny v programu MS Excel pomoc tabulky 16x16 s hodnotou 1 na mstech, kde m bt

    viditeln pixel psmene. Nslednjsou jednotliv dky pepotny na integer (16ti bitovou)

    hodnotu a jsou zapsny za sebe. Nakonec je kvli nestejn ce znakuloena hodnota dlky

    znaku. Ukld se tedy pro jeden znak 17 konstant. Tyto znaky jsou uloeny v pamti

    programve dvourozmrnm poli font typu integer o velikosti 95x17. Znaky jsou uloeny

    v poad dle ASCII tabulky ponaje mezerou (ASCII kd 32) a kone tildou (ASCII kd

    127). Na zatku kadho vpisu je hodnota znaku snena o 32 (poet vynechanch ASCII

    znak).

    Vpis znaku- WriteCharXY(int x, int y, char znak, char color) vykresl znak na pozici

    (x,y) barvy color.

    Vpis textu - WriteStringXY(int x, int y, char *string, char color) vykresl text, znak

    po znaku s pihldnutm k dlce znak, na pozici (x,y) barvy color.

    Vykreslen tlatka - PaintButton(int x, int y,int d, int l, char *caption, char color)

    vykresl tlatko na pozici (x,y horn lev roh), ky l, vky d, text zanajc na adrese

    *caption, barvy color. Vykreslen je doplnno o vystedn caption textu doprosted tlatka.

    Vykreslen obdlnku - Rectangle(int x, int y,int d, int l, char color) vykresl obllnkna pozici (x,y horn lev roh), ky l, vky d, barvy color.

    Smazn obrazovky CLS(char color) pekresl obrazovku barvou color.

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    12/41

    - 18 -

    2.2.7 Multiprocesorov komunikace

    Posln dat mezi obma mikrokontrolry probh po sbrnici SPI, kdy C8051F122 je

    master a ATMEGA128 slave. Na obou stranch si odesln a pijmn dat d sm

    mikrokontrolr. Nen implementovn dn komunikan protokol, pouze odesln a

    pijmn dat mezi obma mikrokontrolry.

    2.2.8 DPS vizualizanho panelu

    Vechny DPS byly vytvoeny v programu EAGLE v4.16. Cel zapojen bylo realizovno

    SMT technologi. Plon spoj (obr. 7) byl koncipovn jako univerzln, je zde tedy pole

    konektor(CON2 CON5) k nastaven vchozho rohu k vykreslovn na displej, napjenk propojen obou DPS a konektor pro multiprocesorovou komunikaci.

    Obr. 7:DPS vizualizanho panelu

    DPS je ve formtu programu EAGLE 4.16 uloena na piloenm CD.

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    13/41

    - 19 -

    2.3 Blokov schma sti sbrnice

    Sbrnicov st zazen m za kol dit vechny pouit sbrnice dle blokovho

    schmatu (viz obr. 8). Kompletn schma je v ploze 2.

    RS232

    Display

    One-Wire

    USB rozhran

    RS485

    Bluetooth

    MikroprocesorATMEGA128

    RxD0(15)

    TxD0(16)

    TxD1(28)

    RxD1(29)

    RD(27)

    RxD0(15)

    TxD0(16)

    RxD0(15)

    TxD0(16)

    RxD0(15)

    TxD0(16)

    OW1(11)OW2(12)

    TxD1(28)

    RxD1(29)

    RD(27)

    OW1(11)OW2(12)

    D0-D7(0-7)

    E(8)

    RW(9)

    RS(10)

    LED(13)

    Klvesnice

    TL1(41)

    TL2(40)

    TL3(39)

    TL4(38)

    D0-D7(0-7)

    E(8)

    RW(9)

    RS(10)

    LED(13)

    TL1(41)

    TL2(40)

    TL3(39)

    TL4(38)

    JTAG, SPI

    TMS,TCK,

    TDI,TDO

    TMS,TCK,

    TDI,TDO

    MISO,MOSI,

    SCK,RESET

    MISO,MOSI,

    SCK,RESET

    Napjen+5V

    RTC

    SCL(18)

    CE(20)I/O(19)

    SCL(18)

    CE(20)

    I/O(19)

    Obr. 8:Blokov schma sbrnicov sti zazen

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    14/41

    - 20 -

    2.3.1 Mikrokontrolr ATMEGA128

    Jdrem sbrnicov sti zazen je mikrokontrolr ATMEGA128. Jedn se o 8mi bitov

    RISC mikrokontrolr se 128 kB pamti programu typu FLASH. Mezi zkladn charakteristikymikrokontrolru pat

    4 kB SRAM, 4 kB EEPROM a 16 MIPS (pi pouit 16 MHz krystalu) irok rozsah napjecho napt 2,7 a 5,5 V a 53 vstupn- vstupnch pin bootloader SPI programovn JTAG pro monost ladn programu dva 8mi bitov tae/asovae, dva 16ti bitov tae/asovae

    8 a 16ti bitovch kanlPWM 8 kanl10ti bitovho paralelnho pevodnku analogov kompartor dva kanly USART, jeden kanl Two-Wire master/slave SPI sriov rozhran programovateln watchdog timer power-on reset, brown-out detekce 8 vnjch peruen 6 rznch sleep md pouzdra: 64-pinov TQFP a 64-pinov QFN/MLF

    Instrukn sada pouitho mikrokontrolru obsahuje 133 instrukc, z nich vtina trvpouze 1 cyklus hodin. Zazen obsahuje obmonosti programovn JTAG i ISP (viz dle).

    Rodina mikrokontrolrAVR s RISC architekturou je velmi zdailm vsledkem architektury

    mikrokontrolr pizpsobench jazyku C. ATMEGA128 se ovem se 133mi instrukcemi

    velmi pibliuje k mikrokontrolrm s architekturou CISC. Vechny ostatn charakteristiky,

    jako stejn bitov ka instrukc a zpracovn instrukc v jednom hodinovm cyklu jsou

    naopak typick vlastnosti architektury RISC. Proto je mono ci, e ATMEGA128 vyuv

    vhod obou architektur: vkonnosti RISC s rozsahem instrukn sady blc se CISC. Tak je

    mono udret nzkou velikost programu, pi vt rychlosti zpracovn. Instrukn kd mku 16 bita je tedy dostatenvelk, aby mohl v jednom instruknm slovpojmout jak

    instrukci, tak operand. Jednostupov zetzen instrukc (pipeline) podporuje zpracovn

    instruknho slova, peten, interpretaci a proveden v jedinm hodinovm cyklu. 32

    univerzlnch pracovnch registr, kter vechny mohou pracovat jako 8-bitov akumultor,

    umouje vyhnout se zbytenmu pemsovn obsahu registru aritmetickch operac.

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    15/41

    - 21 -

    2.3.2 Programovn

    Jak je naznaeno v kapitole 2.3.3, je mon pout oba zpsoby programovn

    mikrokotroleru a to JTAG a ISP. Na stran PC je p

    ipojen vdy p

    slun programtora programovn probh v jazyce C pomoc software WinAVR a jejich editoru Programers

    Notepad. Tento program vyuv externho pekladae (kompiltoru) jazyku C - AVR-GCC

    v3.4.3 s parametry definovanovanmi v souboru makefile. Programovn probh pomoc

    externho programu AVRDUDE, jeho parametry jsou rovn definovny v souboru

    makefile.

    Cel program je rozdlen na jednotliv funkn bloky, piem kadmu bloku podle

    blokovho schmatu pslu samostatn jednotka (nap. pro One-Wire OW.h, OW.c). Hlavn

    program je obsaen v souboru main.c(s hlavikovm souborem main.h). Nezvisle na prv

    pouvanch ostatnch jednotkch hlavn program vdy provede inicializaci vech pouitch

    porta sriovch kanl. Pot inicializuje displej a RTC modul, ppne a pejde do nekonen

    smyky, kde je provdn poadovan kd programu. Zapojen m testovac charakter a proto

    nem dn stl program. Byly testovny vechny pouit sbrnice dohromady (spolu s

    displejem).

    2.3.3 Programovac rozhran

    Sbrnicov st zazen implementuje ob monosti programovn mikrokontrolru

    ATMEGA128.

    ISP (In System Programming)

    Hlavn nevhodou starho paralelnho zpsobu programovn mikrokontrolr byla

    nutnost penet programovan ip z vyvjen aplikace do programovacho zazen a nazpt.

    Tento problm odstrauje programovac rozhrann ISP. Zde je programovan ip osazen

    na DPS zazen a programovn probh sriovpes programovac rozhran.

    Obr. 9:ISP konektor

    Na obr. 9 je zapojen pouitho ISP konektoru. sla v zvorkch odpovdaj pslunmu

    vodii sbrnice. Rozhran ISP obsahuje krom napjen, ovldn resetovn procesoru

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    16/41

    - 22 -

    (RESET) je kvli oddlen programtoru od obvodu pipojen na reset procesoru pes diodu

    D1, vodie pro sriov zpis (MOSI) a ten (MISO) obsahu internch pamt FLASH i

    EEPROM a jeden vodipro synchronizaci p

    enosu dat (SCK).

    Na stran PC je pipojen na paraleln port programtor ParProg-R v1.0. Programovn

    (viz kapitola 2.3.2) probh v jazyce C pomoc software WinAVR a jejich editoru Programers

    Notepad.

    JTAG (Joint Test Action Group)

    Obr. 10:JTAG konektor

    Jedn se o standard definovan normou IEEE 1149.1, tzv. Standard Test Access Port

    (TAP). Podobn jako ISP ani u JTAGu nen nutn mikrokontrolr penet

    do programovacho zazen, jedn se opt o sriov rozhran, kter krom programovn

    zvldne i ladn programu pmo v mikrokontrolru.

    Obr. 10 ukazuje zapojen pouitho konektoru JTAG. K vznamu jednotlivch pinnutno ct, e psmeno T ped kadm datovm vstupem i vstupem znamen test. Rozhran

    JTAG bylo navreno k testovn plonch spoj, programovn flash pamt tedy

    i mikrokontrolr, atd. Rozhran tedy obsahuje synchronizaci penosu (TCK), sriov zpis

    (TDI) i ten (TDO) a volbu mdu (TMS). Tento md me bt napklad programovn nebo

    ji zmnn ladn programu (tzv. Debug).

    Na stranPC je do sriovho portu pipojen programtor JTAG miniICE. Programovn

    (viz kapitola 2.3.2) probh v jazyce C pomoc software WinAVR a jejich editoru Programers

    Notepad. Ladn je pak mon v programu AVR studio.

    2.3.4 Bluetooth

    Pipojen zazen na sbrnici Bluetooth je provedeno externm modulem (viz obr. 11, 12)

    obsahujcm soustku BTM-222 firmy RAYSON. Jedn se o pevodnk Bluetooth na UART,

    USB a PCM napjen 3,3 V. BTM-222 je Bluetooth modul spujc kritria class 1 (dosah a

    100m) s nzkou spotebou proudu (nkolik sleep md). Ovldn modulu je mon pomoc

    AT pkaz poslanch pes sriovou linku z mikrokontrolru Atmega128. V zazen je

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    17/41

    - 23 -

    pouita pouze sriov linka a je vyvedena extern antna. Na stran PC (nebo jinho

    pipojenho zazen mobiln telefon nebo nap. PDA) se modul tv jako virtuln sriov

    port se vemi jeho vlastnostmi.O napt 3,3V se star obvod firmy Linear Technologies LP3985. Jeliko je obvod

    napjen 3,3 V a jeho vstupy nejsou 5 V tolerantn bylo nutn zmnit vstupn napov rovn

    z 5 V na piblin3,3 V. K tomu slou dvojice rezistor470 a 1 k.

    Obr. 11:Schema zapojen Bluetooth modulu

    Programovje tento modul ovldn po sriov lince. Nastaven modulu probh pomoc

    AT pkaz. Modul je od vrobce nastaven na komunikan rychlost 19200 bit/s, 8 bit, 1 stopbit. Pokud takto nastavme i komunikaci na stran mikrokontrolru, je mon s modulem

    komunikovat bez dalch zmn. Ped startem komunikace je jetzapoteb restartovat modul.

    Sprovn s pipojenm zazenm probh automaticky po oteven sriovho portu na

    pipojenm zazen

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    18/41

    - 24 -

    Obr. 12:DPS Bluetooth modulu

    2.3.5 USB rozhran

    USB (Universal Serial Bus) je zkratka oznaujc univerzln sriovou sbrnici. Jde

    o modern zpsob pipojen perifri k PC, kter nahrazuje dve pouvan zpsoby pipojen

    (sriov a paraleln port, PS/2, GamePort apod.) pro bn druhy perifri - tiskrny, myi,klvesnice, joysticky, fotoaparty, modemy atd., ale rovn i pro penos dat z videokamer,

    teek pamovch karet, MP3 pehrva, externch disk i externch vypalovacch

    mechanik.

    Existuj dvhlavn specifikace - USB 1.1 (max. penosov rychlost 12 Mbit/s) a USB 2.0

    (480 Mbit/s, pokud je zazen high-speed). USB 2.0 je zptnkompatibiln s USB 1.1.

    Maximln dlka kabelu mezi dvma zazenmi je 5 metr. USB dovoluje pipojit a 127

    zazen pomoc jednoho typu konektoru. Pipojenm zazen USB zrove poskytuje

    i napjec napt (+5 V). Pouit vce zazen nebo pokud m zazen vysok poadavky

    na dodvan proud vyaduje pouit USB HUBu.

    USB rozhran pouv dva typy konektor. Ploch konektor typ A je dnes obsaen

    na prakticky kadm novm PC v minimln2 konektorech. Druh konektor typ B je uren

    pro perifern zazen, m je zrove definovn standard propojovacho kabelu. Tento

    konektor byl zvolen i pro popisovan zazen.

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    19/41

    - 25 -

    Z dvodu sloitosti komunikanho protokolu USB byl pouit pevodnk USB-UART.

    Nen tedy nutn implementovat do zazen sloit protokol USB, ale je mon pout sriov

    port mikrokontrolru ATMEGA128. Pro komunikaci po sbrnici USB byl pouit sriov port0.

    Jako obvod pevdjc rozhran USB na rozhran UART byl zvolen produkt firmy FTDI

    Chip FT232BM. USB protokol je obsluhovn samotnm ipem a nen tedy poteba

    jakhokoliv programovn firmwaru. Pro pipojen na stran PC jsou k dispozici voln

    dostupn ovladae (Win9x, WinME, WinXP, Win2k, Linux, FreeBSD atd.). Obvod je

    kompatibiln se standardem USB 1.1 i USB 2.0 s rychlost a 3MBaud/s. Obvod FT232BM

    sice obsahuje vechny potebn handshaking / modem signly, ale na vstupy mikrokontrolru

    jsou pivedeny pouze TxD a RxD.

    Obr. 13:Zapojen FT232BM

    Zapojen obvodu (obr. 13) obsahuje nkolik externch soustek extern krystal 6MHz,

    rezistory pro pizpsoben napovch rovn, blokovac a filtran kondenztory a sriov

    EEPROM pam, v n je uchovn nzev zazen, uniktn sriov slo (pouit pi vce

    FT232BM pipojench k PC), popis pipojenho zazen atd. Tyto informace je mono do

    pamti uloit programem, kter nabz vrobce zdarma ke staen na svch webovch

    strnkch [10].

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    20/41

    - 26 -

    2.3.6 RS-232

    Pojem RS 232 je vzhledem k popularit dnench PC velice znm, akoli se od jeho

    pouvn v dnen dob ustupuje (byl pln

    nahrazen USB). P

    es jeho zastaralost bylimplementovn prv pro svoji jednoduchost a zptnou kompatibilitu zazen (nap.

    se starmi notebooky. Signly jsou reprezentovny napovmi rovnmi vzhledem k zemi.

    Pro kad signl (RxD, TxD) jeden vodia spolen zemn vodi, vi nmu jsou napov

    rovn vztaeny. Tento zpsob je vhodn pro point-to-point (jeden port jedno zazen)

    komunikaci pi nzkch rychlostech. Zapojen signl vyaduje spolenou zem, tud se

    dostvme k omezen dlce vodi maximlncca 30 a 60 metr (hlavn roli hraje odpor

    dlouhho veden a snadn zaruitelnost). Standard definuje asynchronn sriovou komunikaci

    pro penos dat. Poad penosu datovch bit je od nejmnvznamnho bitu (LSB) po bit

    nejvznamnj (MSB). Poet datovch bit je voliteln (7 9 bit), obvykle se pouv

    8 bit. Nejastji se pouv varianta, pi kter hodnot log. 1 odpovd napt

    -12 V a hodnotlog. 0 pak +12 V.

    Obr. 14:Zapojen ICL232

    Jako pevodnk sriov linky (sriov linka mikrokontrolru 0) mikrokontrolru s TTL

    rovnmi na rovnRS232 byl pouit obvod firmy Intersil ICL232CBE. Jedn se o dvojit

    pevodnk TTL na RS232 a zptn. Obvod je zapojen (obr. 14) podle doporuenho

    katalogovho zapojen se tymi externmi kondenztory pro zmnu rovn, blokovacm

    kondenztorem a rezistorem R19 sloucm jako oddlen pijmac sti od ostatnch obvod

    ptomnch na stejnm sriovm kanlu mikrokontrolru. Vstupn konektor je pouit

    CANNON9-Male a k propojen s PC je teba kenho kabelu.

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    21/41

    - 27 -

    2.3.7 RS-485

    RS 485 pouv ponkud odlin princip ne RS-232: pro kad signl pouv jedno

    twisted-pair (TP) veden, tj. 2 vodie smotan kolem sebe. Z elektrickho hlediska mluvme

    tzv. Balanced data transmision, nebo tak Differential voltage transmission. Ozname-li si

    jeden vodi z TP jako A druh jako B, pak je-li signl neaktivn, je napt na A zporn

    a na B kladn. V opanm ppad, signl je aktivn, je A kladn a B zporn. Pochopitelnse

    jedn o rozdl (diferenci) mezi vodii A a B. Pro RS 485 me dlka veden dosahovat a

    1200 metr a bnvyrbn obvody dosahuj penosovch rychlost 2.5 MB/s. RS 485 se

    pouv pro multipoint komunikaci, vce zazen me bt pipojeno na jedno signlov

    veden. Vtina RS 485 systmpouv Master/Slave architekturu, kde m kad podzen

    jednotka svoji uniktn adresu a odpovd pouze na j uren pakety. Tyto pakety generujenadzen jednotka (napklad PC) a periodicky obesl vechny pipojen slave jednotky.

    Obr. 15:Zapojen SN65HVD485

    Pro implementaci sbrnice RS-485 byl pouit obvod firmy Texas Instruments

    SN65HVD485 (nahraditeln celou klou konkurennch obvod nap. 75176), kterpevd TTL rovnna vstupu na RS-485 na vstupu. Ke sprvnmu zen je nutno pidat

    jeden signl a to zen smru (zpis/ten). Pro vt monost pouit byl obvod pipojen

    (obr. 15) na sriovou linku 1. Ke sprvnmu nastaven vstupnch rovn jsou pouity ti

    extern rezistory R8-R10, kter zaruuj, e v klidovm stavu bude A>B a odpor mezi A a B

    bude prv100 . Hodnota R9 = 100je zrovei hodnotou zakonovacho odporu linky.

    Pi pouit vce zazen se odpor R9 neosazuje a je pouito termintorna koncch linky. Pro

    vstup ze zazen byly pouity dva konektory ARK1550/2. Jeden pro napjen druh pro

    linku.

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    22/41

    - 28 -

    2.3.8 Sbrnice ONE-WIRE (OW)

    Hlavn a nejdleitj st sbrnicov sti zazen jsou dva kanly prmyslov

    sbrnice One-Wire (1-Wire) firmy Dallas Semiconductor. Sb

    rnice pouv jedno Masterzazen k zen jednoho i vce Slave zazen. Pokud je na sbrnici pipojeno pouze jedno

    Slave zazen je nazvna Single-Drop, je-li jich vce pak Multi-Drop.

    Sbrnice OW, jak nzev napovd, potebuje pouze jeden vodipro data i pro napjen

    pipojench obvod(podobnjako ASI). Vechna zazen (Master i Slave) jsou pipojena ke

    sbrnici pomoc otevenho drainu nebo 3 stavovho portu. To umouje odpojit zazen,

    kter prvnekomunikuje a poskytnout tak sbrnici dalm zazenm.

    Pro sprvnou innost OW sbrnice je zapoteb zdvihac (pull-up) rezistor (4,7k), take

    klidov stav sbrnice je log. 1 (vtinou 5V). Zapojen vstupa vstupviz obr. 16.

    Obr. 16:Zapojen obou kanlOne-Wire sbrnice

    Kad komunikace zan incializac resetovacm pulsem vyslanm Master zazenm,

    na kter odpov Slave svm Presence pulsem. Tmto zpsobem zazen typu Master detekuje,

    e se na sbrnici nachz alespojedeno zazen typu Slave a je pipraven komunikovat.

    Nsleduje srie ROM pkaz. Tyto pkazy umouj Masteru zjistit poet zazen

    pipojench na sbrnici, jakho jsou typu atd. Kad zazen na OW m svj vlastn 64-

    bitov ROM kd. Master si dle vybr jedno Slave zazen podle jeho uniktnho sla.

    Jakmile je vybrno zazen zan vlastn komunikace, kter je specifick pro kad

    pipojen OW zazen.

    V kapitole 2.3.12 je popis prohledvacho algoritmu sbrnice OW.

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    23/41

    - 29 -

    2.3.9 Obvod relnho asu RTC (Real Time Clock)

    RTC obvod relnho asu je astm doplkem mnoha zazen a je tedy vhodn jej

    umstit i na toto zazen. RTC je obvod, kter obsahuje precizn osciltor s externmkrystalem, kter nezvisle na pipojenm mikrokontrolru nat as a datum. Nen tud

    nutn, aby mikrokontrolr generoval pesn peruen k natn asu, ale pouze jej vyt

    z RTC.

    Obr. 17:Zapojen DS1302

    V zapojen (obr. 17) je pouito vrobku firmy Dallas Semiconductor DS1302, co je

    obvod RTC primrn napjen z obvodu (+5V) a sekundrn napjen bateri (+3V) v

    ppad, e dojde k odpojen od napjen. Obvod tedy t as, i pokud je zazen bez napt.

    Obvod DS1302 nabz i monost automatickho dobjen baterie. S mikrokontrolrem RTC

    komunikuje po sriov lince vvody CE Chip Enable zapn komunikaci, I/O data

    ten i zpis a SCL synchronizace penosu. Obvod ke sv funkci potebuje extern krystal32,768kHz. Jeliko me bt rezonann kmitoet krystalu mrn odlin od udvan

    hodnoty, obvod nabz monost kalibrace vnitn frekvence odvozen od kmitotu krystalu. Je

    tak mono nastavit odchylku menho asu od skutenho v du sekund za tden. Jako

    zajmavou monost DS1302 obsahuje i 31B statick pamti RAM, kter je uchovna i pi

    vpadku napjen a chodu na baterii.

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    24/41

    - 30 -

    2.3.10 Klvesnice

    Pro snadnj prci se sbrnicovou st zazen (ladn, nastavovn; obr. 18) byla

    do jeho nvrhu pidna jednoduch klvesnice sestvajc ze ty tlatek pipojench

    na extern peruen mikrokontrolru. ATMEGA128 pomoc vnitnch zdvihacch rezistor

    zajiuje na vstupech peruen hodnotu log. 1, jednotliv tlatka pak pipojuj pin procesoru

    na zem a na sestupnou hranu je vyvolno peruen.

    Obr. 18:Zapojen klvesnice

    Kad tlatko je proti zkmitm oeteno keramickm kondenztorem 100 nF.

    Tabulka 1:Mapa pipojen tlatek na pslun piny peruen mikrokontrolru

    Tlatko Peruen

    TL1 INT4

    TL2 INT5

    TL3 INT6

    TL4 INT7

    Klvesnice je pouita pro testovac ely a pro nastavovn jednotlivch sbrnic.

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    25/41

    - 31 -

    2.3.11 Displej

    Jako zobrazovac jednotka sbrnicov sti je pouit inteligentn LCD displej

    s paralelnm pstupem (obr. 19). Komunikace je zena temi vodii E enable displeje

    hrana na tomto pinu zapisuje/te hodnotu z D0-D7. ten nebo zpis je zvoleno pinem R/W

    a pin RS uruje, zda se bude zapisovat/st instrukce nebo data.

    Obr. 19:Zapojen displeje

    Pro demonstraci funknosti byl pouit LCD displej firmy Everbouquet International

    MC2004E. Jedn se o ty-dkov displej o dlce dku dvacet znaks vlastn mezinrodn

    znakovou sadou (zkladn znaky podle ASCII tabulky). Displej umouje uivateli definovat

    i jeho vlastn znaky zapsnm do RAM pamti displeje, samozejmost je nastaven

    automatickho posuvu kurzoru nebo inverze celho displeje/dku. Pro sprvnou funkci je

    teba nastavit kontrast displeje rezistor R21, podsvcen je zeno mikrokontrolrem.

    Konstrukn je pipojen displeje vyeeno estncti pinovou dutinkovou litou. Displej je

    pouit pro testovac ely a pro nastavovn jednotlivch sbrnic.

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    26/41

    - 32 -

    2.3.12 Algoritmus prochzen OW sbrnice

    Pro veobecn pouit sbrnice (obr. 20) a hlavnpro snadn pidvn novch zazen je

    nutn, aby protokol implementovan v mikrokontrolru byl schopen vyhledat sbrnici a najtvechna zazen, kter jsou na sbrnici pipojena. Vstupem algoritmu je pole identifikanch

    kd. Tento kd se skld z typu zazen (spodnch 8 bit, kdy jsou uvedeny v Application

    Note 155), sriovho sla (48 bit) a z CRC kdu (nejvych 8 bit). Pi komunikaci

    s konkrtnm zazenm je teba po RESET pulsu vyslat pkaz Match ROM, pak 64bitov

    kd zazen, se kterm se m pracovat, a teprve pot poslat pkaz. Jedin vjimka nastv,

    kdy je na sbrnici pouze jedno zazen, pak je mono poslat pkaz Skip ROM a zat

    se zazenm rovnou pracovat.

    Obr. 20:Pklad zapojen vce zazen pipojench na OW

    Vtina OW zazen m implementovn pkaz SEARCH (kd 0xF0). Zazen, kter

    pijme pkaz SEARCH odpov tm, e vyle prvn (LSB) bit svho 64bitovho kdu. Je-li

    na sbrnici vce oslovench zazen, odpov vechny narz. Ze specifikace OW (zazen jsou

    pipojena paraleln ke spolenmu vodii vstupem s otevenm kolektorem) plyne, e

    vsledkem je logick souin (AND) vech bit. Po vysln tohoto bitu pod master

    o vysln dalho bitu. Zazen na tento poadavek odpov negac prve vyslanho bitu.

    Z tchto dvou pijatch bit lze odvodit situaci na sbrnici. Mohou nastat tyi rzn

    monosti:

    Tabulka 2:OW monosti stavna sbrnici po vysln pkazu Search ROM

    Prvn bit Druh bit Nastal situace

    1 1 Na sbrnici nen pipojeno dn zazen reagujc na Search ROM

    0 0 Na sbrnici je pipojeno vce zazen s rznmi hodnotami prvnho bitu

    0 1 Na sbrnici je pipojeno jedno nebo vce zazen se stejnou hodnotou prvnho bitu log. 0

    1 0 Na sbrnici je pipojeno jedno nebo vce zazen se stejnou hodnotou prvnho bitu log. 1

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    27/41

    - 33 -

    Pokud maj vechna zazen na dan pozici stejnou hodnotu bitu, vyle master

    (ATMEGA128) tuto hodnotu. Pokud maj rzn hodnoty (oba peten bity byly nulov),

    mus si master poznamenat, na kter pozici dolo k neshod, a vyle log. 1 nebo 0. Zda mastervyle 0 nebo 1 ur na zklad pedchozch hledn z pozice posledn nalezen neshody.

    Dle popsan algoritmus vysl nejprve nulu a pi druhm prchodu vysl jedniku.

    Tento postup se opakuje, dokud nen nateno vech 64 bit identifikace. Pokud pi

    natn dolo k neshodv njakm bitu, znamen to, e je na sbrnici vce zazen a cel

    postup se opakuje s tm, e na pozici posledn neshody se nyn vysl bit opan hodnoty

    (prochz se "druh vtev").

    2.3.13 Popis algoritmu prochzen implementovanho v zazen

    Prochzen sbrnice sestv z opakovanch hledn jednotlivch zazen. V kadm

    cyklu je nalezeno jedno zazen. V algoritmu je teba si neustle udrovat informaci o ROM

    kdu poslednho nalezenho zazen a o pozici neshody (pokud k njak dolo, pokud k

    dn nedolo, je nalezen zazen na sbrnici samo).

    Algoritmus pracuje s nsledujcmi promnnmi:

    id_bit_number- Poadov slo bitu, kter je prvprohledvn (1 - 64).

    id_bit - Bit peten jako prvn. Jeho hodnota je logick souin vech bit na pozici

    id_bit_numberze vech zazen, kter se astn vyhledvn.

    cmp_id_bit- Bit peten jako druh, doplnk id_bit.

    LastDiscrepancy - Hodnota udvajc poadov slo bitu, u nho dolo pi poslednm

    hledn k neshod.

    LastDeviceFlag- Pznak poslednho nalezenho zazen.

    Last_Zero - Hodnota udvajc poadov slo bitu, u nho dolo pi aktulnm hledn

    k neshod, ze kter bylo pokraovno odpovd "0".

    ROM_NO - Buffer o velikosti 64 bit (8 byte), kter obsahuje aktuln natan slo

    zazen

    search_directionBitov promnn, udvajc smr dalho hledn. Zazen, kter maj bit

    na pozici id_bit_number roven tto hodnot se budou dle astnit prohledvn, ostatn

    zazen pestanou komunikovat a do vysln RESET pulsu.

    Ped prvnm hlednm (funkce FIRST) je promnn LastDiscrepancy vynulovna. Po

    voln hledac rutiny je v ROM_NO slo nalezenho zazen. Pokud nen dn zazen

    nalezeno, je hledn ukoneno s chybou.

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    28/41

    - 34 -

    Hledn dalho zazen (funkce NEXT) vyuv hodnoty z prvnho hledn, uloen

    v promnnch ROM_NOa LastDiscrepancy. "Hledac" rutina vrt vROM_NOslo dalho

    zazen, nebo, bylo-li p

    edchzejc nalezen za

    zen poslednm, vrt chybov kd.

    Hledn jednotlivch zazen zan tm, e master vyle reset puls a ek na potvrzen

    presence pulsem. Pokud tento pijde, hledn me pokraovat a jsou nastaveny promnn:

    id_bit_number (pozice zpracovvanho bitu) na hodnotu 1 a last_zero (pozice posledn

    odpovdi "0" na zjitnou neshodu) na hodnotu 0. Pot je vysln pkaz Search ROM.

    Nsleduje smyka, v n je skldn obsah ROM_NO. Tato smyka se opakuje 64krt, tedy

    pro kad bit identifikanho kdu.

    Ve smyce jsou nejprve peteny dva bity (zazen vysl vdy hodnotu bitu a jej

    doplnk), viz ve. Pokud se od sebe oba pijat bity li (co znamen, e vechna zazen nadan pozici maj stejnou hodnotu bitu), je hodnota prvnho zapsna do ROM_NOna pozici

    danou id_bit_numbera jeho hodnota je zrovezapsna do search_direction. Pokud jsou oba

    jednikov, znamen to, e dn zazen na hledn neodpovd a funkce kon. Pokud jsou

    oba nulov, znamen to, e je teba se rozhodnout, jestli bude vyslna nula nebo jednika.

    Rozhoduje se na zkladpromnnchLastDiscrepancya id_bit_numbertakto:

    Tabulka 3:Rozhodnut o smru prochzen vyhledvn

    LastDiscrepancy vs. id_bit_number Rozhodnutid_bit_number > LastDiscrepancy Last_zero = id_bit_number, search_direction = 0

    id_bit_number == LastDiscrepancy search_direction = 1

    id_bit_number < LastDiscrepancy search_direction = (ROM_NO & (1 0)(search_direction je nastavena na hodnotu bitu na stejn pozici v

    pedchozm nalezenm ROM_NO)

    Nsledn je vyslna hodnota bitu search_direction, tento bit je zapsn do ROM_NO

    na odpovdajc pozici a je zveno potadlo id_bit_number. Pak se cel smyka opakuje.

    Po zjitn vech bit je do promnn LastDiscrepancy zapsna hodnota promnn

    LastZero. Pokud je tato hodnota nulov, znamen to, e je nalezen zazen posledn.

    Pro demonstraci je uvedeno vyhledvn t zazen s dvoubitovmi kdy (obr. 21).

    Mjme zazen A s kdem 01, zazen B s kdem 00 a zazen C s kdem 11.

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    29/41

    - 35 -

    Obr. 21:Zjednoduen demonstrace prochzen sbrnice

    V ploze 3 je podrobn popis jednotlivch st zjednoduen demonstrace vyhledn

    vech tech zazen.

    V aplikan poznmce 187: 1-Wire Search Algorithm [6] je popsna vylepen varianta,

    kter doke nap. rozpoznvat pouze zazen uritho typu. V tto appnote je i vvojov

    diagram a zpis algoritmu v jazyce C. Podobn algoritmus se nachz i v aplikan poznmce

    162: Interfacing the DS18X20/DS1822 1-Wire Temperature Senzor in a Micro-Controller

    Enviroment [5].

    2.3.14 DPS sbrnicov sti

    Stejn jako DPS vizualizanho panelu je i tento plon spoj (obr. 22 a obr. 23)realizovn v pevn v SMT technologii strana TOP, pouze konektory pro pipojen

    jednotlivch sbrnic, krystaly, piezomni a baterie RTC obvodu jsou realizovny

    soustkami THD. Konektory pro pipojen sbrnic jsou umstny na okrajch DPS. Konektor

    pro pipojen displeje (pouit pouze pro testovac ely) je pouit pro spojen

    s mikrokontrolrem C8052F122 (piny D1-D3) a pro penos napjen pro vizualizan panel.

    Bluetooth rozhran je realizovno jako modul (U2) a me bt nahrazen nap. sbrnic

    ZIGBEE. V souasn dob je tsn ped dokonenm zsuvn modul do tohoto konektoru

    (soustka firmy Lantronix - XPORT), kter e pipojen k TCP/IP a tud k internetu.XPORT je mechanicky i elektronicky pipojiteln na stejn velkou DPS jako je Bluetooth

    modul. Takto pipraven modul funguje jako pevodnk TCP/IP na sriovou linku, take

    me komunikovat na stejnm principu jako Bluetooth modul BTM-222.

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    30/41

    - 36 -

    Obr. 22:DPS sbrnicov sti strana BOTTOM

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    31/41

    - 37 -

    Obr. 23:DPS sbrnicov sti strana TOP

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    32/41

    - 38 -

    DPS ve formtu programu EAGLE 4.16 je uloena na piloenm CD.

    Pro demonstraci funknosti je pouit program, kter na prvn dek vypisuje as peten

    z RTC modulu, na druh dek datum a tet dek pak vypisuje ROM kd prvnho

    nalezenho zazen na OW. Jedn se o senzor teploty firmy Dallas Semiconducor -

    DS18B20, kter je zrovepouit pro demonstraci funkce sbrnice OW. tvrt dek LCD

    displeje ukazuje zmenou teplotu. Vechny tyto hodnoty jsou zrove odeslny po USB

    sbrnici do PC. Pomoc LCD displeje je mon pipravit sbrnicovou st zazen k odesln

    dat na vizualizan panel.

    Obr. 24:Fotografie sbrnicov sti v innosti

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    33/41

    - 39 -

    3 Zvr

    Toto zazen bylo navreno a sestrojeno pro seznmen se s jednotlivmi sb

    rnicemia pro spojen vce jeho st do jednoho komplexnho celku. Dky monosti ladit programov

    kdy pes prosted JTAG m zazen velmi dobrou pomcku pi odstraovn programovch

    chyb.

    Byl navren, vyroben a naprogramovn vizualizan panel. DPS panelu byla navrena

    v technologii SMT. Pro tento panel, pro displej, byl naprogramovn adi s vlastnm

    grafickm ovladaem. Vizualizan panel byl propojen se sbrnicovou st zazen.

    Sbrnicov st zazen byla po navren tak vyrobena a naprogramovna. Dle byly

    vyzkoueny vechny jej vstupy.

    Byl naprogramovn systm prochzen One-Wire sbrnice s vyhlednm vech zazen

    ke sbrnici pipojench. Vstupem tohoto algoritmu je pole 64-bitovch kd, ze kterho je

    mono vybrat si jedno zazen pro dal komunikaci. Jako pklad byl uveden teplomr

    DS18B20. Algoritmus prochzen OW byl testovn na tech teplomrech DS18B20.

    Dky sbrnicov topologii One-Wire a RS485 je mono celm domem rozvst datov

    linky, na kter je mon pipojit mnoho rznch aknch len. Na trhu je ada systm

    urench k zen rozvod tepla, RFID zazen nebo napklad alarm komunikujcch po

    sbrnici RS485. Firma Dallas Semiconductor nabz mnoho soustek pipojitelnch k One-

    Wire (teplomry, digitln potenciometry, hradla). Ve spojen s bezdrtovou komunikac

    pomoc Bluetooth class 1 adaptru se otevr ada monost jak koncipovat zen domu.

    Zazen je snadno ovladateln dky TFT dotykovmu panelu. Systm ovldn zvis na

    pipojench perifrich. Do vizualizanho panelu byly implementovny funkce pro zobrazen

    a obsluhu tlatka, zobrazen textu. Konkrtn podoba ovldn mus bt zvolena po vbru

    vech periferi.

    Zvolenm Bluetooth pipojen jako modulu zskv zapojen vt flexibilitu je mon

    pouhou vmnou modulu doclit jinho vstupu (TCP/IP, ZigBee, CAN, HART)

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    34/41

    - 40 -

    4 Seznam pouitch zdroj

    [1] MATOUEK, D. Prce s mikrokontrolry ATMEL AVR. Praha BEN technickliteratura 2003. 376 stran. ISBN 80-7300-088-1.

    [2] KAINKA, B. USB Men, zen a regulace pomoc sbrnice USB. Praha BEN

    technick literatura 2003. 248 stran. ISBN 80-7300-073-3.

    [3] KAINKA, B. USB Men, zen a regulace PC. Praha BEN technick literatura

    2003. 272 stran. ISBN 80-7300-089-X.

    [4] IC-maxim[online]. 2008 [cit. 2008-05-08]. Dostupn z WWW:

    [5] Application Note 1622008 [cit. 2008-05-08]. Dostupn z WWW:

    [6] Application Note 1872008 [cit. 2008-05-08]. Dostupn z WWW:

    [7] Texas Instruments[online]. 2008 [cit. 2008-05-08]. Dostupn z WWW:

    [8] Intersil[online]. 2008 [cit. 2008-05-08]. Dostupn z WWW:

    [9] Atmel Corporation[online]. 2008 [cit. 2008-05-08]. Dostupn z WWW:

    [10] FTDI Chip[online]. 2008 [cit. 2008-05-08]. Dostupn z WWW:

    [11] Silicon Laboratories[online]. 2008 [cit. 2008-05-08]. Dostupn z WWW:

    [12] All Datasheet[online]. 2008 [cit. 2008-05-08]. Dostupn z WWW:

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    35/41

    - 41 -

    5 Seznam obrzk

    Obr.1:Blokov schma celho zazen....................................................................................9

    Obr. 2:Blokov schma vizualizanho panelu ......................................................................10

    Obr. 3:Schma zapojen FT232R ...........................................................................................11

    Obr. 4:Zapojen C8051F122...................................................................................................13

    Obr. 5: Schema zapojen displeje ............................................................................................15

    Obr. 6:Schema zapojen RAM pamti ...................................................................................16

    Obr. 7:DPS vizualizanho panelu .........................................................................................18

    Obr. 8:Blokov schma sbrnicov sti zazen..................................................................19

    Obr. 9:ISP konektor................................................................................................................21

    Obr. 10:JTAG konektor..........................................................................................................22

    Obr. 11:Schema zapojen Bluetooth modulu..........................................................................23

    Obr. 12:DPS Bluetooth modulu .............................................................................................24

    Obr. 13:Zapojen FT232BM...................................................................................................25

    Obr. 14:Zapojen ICL232 .......................................................................................................26

    Obr. 15:Zapojen SN65HVD485............................................................................................27

    Obr. 16:Zapojen obou kanlOne-Wire sbrnice.................................................................28

    Obr. 17:Zapojen DS1302 ......................................................................................................29

    Obr. 18:Zapojen klvesnice...................................................................................................30

    Obr. 19:Zapojen displeje .......................................................................................................31

    Obr. 20:Pklad zapojen vce zazen pipojench na OW...................................................32

    Obr. 21:Zjednoduen demonstrace prochzen sbrnice ......................................................35

    Obr. 22:DPS sbrnicov sti strana BOTTOM .................................................................36

    Obr. 23:DPS sbrnicov sti strana TOP..............................................................................37

    Obr. 24:Fotografie sbrnicov sti v innosti.......................................................................38

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    36/41

    - 1 -

    Ploha 1 schma vizualizanho panelu

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    37/41

    - 1 -

    Ploha 2 schma sbrnicov sti zazen

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    38/41

    - 1 -

    Ploha 3

    Podrobn popis jednotlivch st zjednoduen demonstrace vyhledn vech tech

    zazen. (ad kap. 2.3.13)

    FIRST

    LastDiscrepancy = 0

    Master vyle RESET puls a ek na PRESENCE puls. Pokud nen PRESENCE, funkce kon

    id_bit_number = 1; last_zero = 0

    Master vyle pkaz SEARCH (0xF0)

    Master pete bit ze sbrnice do promnn id_bit, jeho hodnota bude "1 (zazen A) AND 0 (zazen B) AND

    1 (zazen C)" = 0

    Master pete dal bit ze sbrnice do promnn cmp_id_bit- jeho hodnota bude "0 (zazen A) AND 1 (zazen

    B) AND 0 (zazen C)" = 0

    Dolo k neshod, protoe id_bit == 0 a cmp_id_bit == 0

    Protoe id_bit_number > LastDiscrepancy, tak je search_direction nastaveno na hodnotu 0, Last_Zero na

    hodnotu id_bit_number (tedy 1)

    Hodnota search_directionje pidna doROM_NO

    Master vyle hodnotu z search_direction (0) na sbrnici. Dalho vyhledvn se tedy budou astnit pouze

    zazen, kter maj na pozici nejniho bitu hodnotu 0 (zazen B), ostatn (A a C) pejdou do ekacho mdu

    Hodnota id_bit_numberje zvena o 1

    Master pete bit do id_bit, jeho hodnota bude 0 (odpovd pouze zazen B).

    Master pete doplkov bit do cmp_id_bit, jeho hodnota bude 1 (odpovd pouze zazen B).

    Protoe hodnoty id_bita cmp_id_bitjsou rzn, znamen to, e nedolo k neshod.

    Promnn search_directionje nastavena na hodnotu promnn id_bit(0)

    Hodnota search_directionje pidna doROM_NO

    Master vyle hodnotu z search_direction(0) na sbrnici.

    Bylo zjitno prvn zazen (zazen B, ROM_NO == 00). Zazen je nyn vybrno a je mu mono vyslat pkaz

    LastDiscrepancy = LastZero(1)

    NEXT

    Master vyle RESET puls a ek na PRESENCE puls. Pokud nen PRESENCE, funkce kon

    id_bit_number = 1; last_zero = 0

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    39/41

    - 2 -

    Master vyle pkaz SEARCH (0xF0)

    Master pete bit ze sbrnice do promnn id_bit, jeho hodnota bude "1 (zazen A) AND 0 (zazen B) AND

    1 (zazen C)" = 0

    Master pete dal bit ze sbrnice do promnn cmp_id_bit- jeho hodnota bude "0 (zazen A) AND 1 (zazen

    B) AND 0 (zazen C)" = 0

    Dolo k neshod, protoe id_bit == 0 a cmp_id_bit == 0

    Protoe id_bit_number == LastDiscrepancy, tak je search_direction nastaveno na hodnotu 1.

    Hodnota search_directionje pidna doROM_NO

    Master vyle hodnotu z search_direction (1) na sbrnici. Dalho vyhledvn se tedy budou astnit pouze

    zazen, kter maj na pozici nejniho bitu hodnotu 1 (zazen A a C), zbvajc (B) pejdou do ekacho mdu

    Hodnota id_bit_numberje zvena o 1

    Master pete bit do id_bit, jeho hodnota bude "0 (zazen A) AND 1 (zazen C)" = 0

    Master pete doplkov bit do cmp_id_bit, jeho hodnota bude "1 (zazen A) AND 0 (zazen C)" = 0

    Dolo opt k neshod, protoe id_bit == 0 a cmp_id_bit == 0

    Protoe id_bit_number > LastDiscrepancy, tak je search_direction nastaveno na hodnotu 0, Last_Zero na

    hodnotu id_bit_number (tedy 2)

    Master vyle hodnotu z search_direction (0) na sbrnici. Zazen, kter se astnila vyhledvn a maj na

    pedposlednm msthodnotu 1 (tedy zazen C) pejdou do ekacho mdu

    Bylo zjitno druh zazen (zazen A, ROM_NO == 01). Zazen je nyn vybrno a je mu mono vyslat

    pkaz

    LastDiscrepancy = LastZero (2)

    NEXT

    Master vyle RESET puls a ek na PRESENCE puls. Pokud nen PRESENCE, funkce kon

    id_bit_number = 1; last_zero = 0

    Master vyle pkaz SEARCH (0xF0)

    Master pete bit ze sbrnice do promnn id_bit, jeho hodnota bude "1 (zazen A) AND 0 (zazen B) AND1 (zazen C)" = 0

    Master pete dal bit ze sbrnice do promnn cmp_id_bit- jeho hodnota bude "0 (zazen A) AND 1 (zazen

    B) AND 0 (zazen C)" = 0

    Dolo k neshod, protoe id_bit == 0 a cmp_id_bit == 0

    Protoe id_bit_number < LastDiscrepancy, tak je search_direction nastaveno na hodnotu prvnho bitu z

    ROM_NO(1).

    Master vyle hodnotu z search_direction(1) na sbrnici. Zazen B pejde do ekacho mdu

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    40/41

    - 3 -

    Hodnota id_bit_numberje zvena o 1

    Master pete bit do id_bit, jeho hodnota bude "0 (zazen A) AND 1 (zazen C)" = 0

    Master pete doplkov bit do cmp_id_bit, jeho hodnota bude "1 (zazen A) AND 0 (zazen C)" = 0

    Dolo opt k neshod, protoe id_bit ==0 a cmp_id_bit == 0

    Protoe id_bit_number == LastDiscrepancy, tak je search_directionnastaveno na hodnotu 1

    Master vyle hodnotu z search_direction(1) na sbrnici. Zazen A pejde do ekacho mdu

    Bylo zjitno tet zazen (zazen C, ROM_NO == 11). Zazen je nyn vybrno a je mu mono vyslat pkaz

    LastDiscrepancy = LastZero (0), proto je nastaven pznakLastDeviceFlag

  • 7/22/2019 Diploma thesis, TFT driving, Multiple microprocessors used

    41/41

    Ploha 4 Fotografie vizualizanho panelu