Podobné dokumenty

1.2 Realizace èekání pomocí jednoduché programové smyèky Pøíklad 3: Chceme-li, aby dítì blikalo baterkou v co nejpøesnìjším intervalu, øekneme mu: Roz

11 Elektrické specifikace Mezní parametry* Okolní teplota pøi zapojeném napájení 40 C až +125 C Skladovací teplota 65 C až +150 C Napájecí napìtí na V


3/ %,1'(& 83'1 &( &3 )XQNFH. + ; ; ; ; / ; ; + ; EH]H]PuQ\

Spínaèe jsou elektrické pøístroje, které slouží k zapínání, pøepínání a vypínání elektrických obvodù a spotøebièù. Podle funkce, kterou vykonávají, je

VLASTNOSTI PLOŠNÝCH SPOJÙ






:5$ =islv GDW V DOWHUQDFt QHMY\ããtKRELWX

9. Harmonické proudy pulzních usměrňovačů

12 15 Instalace mikroturbíny v blokové plynové výtopnì " ZADÁNO: Instalace mikroturbíny v blokové plynové výtopnì Zjistìte: 1 Zda je ekonomicky výhodn

Vytváøení sí ového diagramu z databáze: pøíklad

CTR pro optoèlen s LED a tranzistorem:,& &75 = [%] U, CE = const ) Obvykle CTR urèíme pøi I F = 10 ma a U CE = 5 V. Hodnoty zjistíme z tabulky.,& &75

2.4 Cykly 2. ZÁKLADY JAZYKA C


Izolaèní zesilovaèe s IL300 Zapojení izolaèních zesilovaèù s IL300 se liší pøedevším režimem v nichž pracují interní fotodiody Podle toho zda interní



3.1 Útlum atmosférickými plyny Rezonance molekul nekondenzovaných plynù obsažených v atmosféøe zpùsobuje útlum šíøících se elektromagnetických vln. Ab

Programovací manuál [CZ] Domovník [ACU 100] Elektronický identifikaèní systém







kap..2 Plochy (Surfaces) Plochy jsou rozšíøením NURBS køivek. Zatímco køivka NURBS používala jednorozmìrnou interpolaci (U), u ploch je navíc pøidán d


nažhavováním elektronek, takže nedochází k neúmìrnému pøetìžování filtraèních kondenzátorù pøi nábìhu anodového proudu. Polovodièový usmìròovaè vytvoø

NULOROVÉ MODELY Spokojíme-li se pouze se základní analýzou elektronického obvodu s ideálními prvky, osvìdèuje se èasto užití nulorových modelù aktivní

Skládaèka Obr 48 G15 VBP Co to dìlá: Naète vybraný obrázek (vybraný pomocí CommonDialog1), vytvoøí MxN komponent PictureBox obsahujících odpovídající

než je cca 5 [cm] od obvodu LT1070, doporučuje se blokovat napětí U IN

/2*,.$ 5(6(7 Ë=(1Ë +$/7 *(1(5È ',129é & 6./ $/8. ' /,ý. ýë7$ý 5(*,675 5(*, é. 6e5,29é 5(*,675 * $.808/È725 5:0. %8',ý(/ 45(*,675 5(*

červená LED 1 10k LED 2






Rocrail. Nejprve: Obecný úvod. Instalace

28/40VÝVODOVÝ, 8BITOVÝ CMOS MIKROKONTROLÉR S A/D PØEVODNÍKEM, FLASH PAMÌTÍ PRO PROGRAM A SRAM/EEPROM PRO DATA VLASTNOSTI Velmi výkonný kontrolér s arc









]PHQãLWIRQW ]Y WãLWIRQW QDVWDYLWIRQW XORåLWVRXERU Y\WLVNQRXWVRXERU Y\WYR LWQRYêVRXERU

PDWHULiO FS>-NJ ±. FS>NFDONJ ± ƒ& VW teur åhoh]r FtQ KOLQtN N HPtN. OHG DONRKRO ROHM FFD FFD SHWUROHM UWX YRGD Y]GXFK YRGQtSiUD KHOLXP



2 Deset jednoduchých zkušebních a indikaèních zapojení Na následujících stranách je vidìt, že i velmi jednoduchá zapojení se svìtelnými diodami mohou



Programátor AVRProg USB v3 MK II Eco Manuál

NOiYHVQLFH SVDFtKR VWURMH Í (Q Ï Á. (VF ) )SURJUDPRYDWHOQpNOiYHV\) ) 3VF 6F/ 3DX NRQWURON\ ,QV +RPH 3J8S 7DE 'HO (QG 3J'Q &DSV/ (QWHU Í 6KLIW

MU-411/412 MU-811/812. 4x AIN (12 bitù), RS-485


KOMUNIKAÈNÍ DDE SERVER PRO AUTOMATY MICROPEL VERZE 2.3 POPIS ROZHRANÍ A OVLÁDÁNÍ


Instalace a provoz programu DUEL v síti

Interface LPG / CNG Bluetooth. Instrukce k instalaci a konfiguraci zařízení v1.0 cz. U rozhraní bluetooth není instalace ovladače potřebná.

0RW\O3LFWXUH%R[ 7LPHU7LPHU


UDAQ multifunkèní modul pro rozhraní USB




PESexcl. PODPORA PRO VÝMÌNU DAT S APLIKACÍ MICROSOFT EXCEL s využitím DDE serveru PESdde

Výuková laboratorní sestava seminář pro učitele

8. ZÁKLADNÍ ZAPOJENÍ SPÍNANÝCH ZDROJŮ

AKTUALIZECE FIRWARE PRO SDS




Manuál. pro instalaci driverů virtuálního com portu USB pro LPC procesory řady LPC13xx

PocketHome R CENTRÁLNÍ OVLÁDÁNÍ VYTÁPĚNÍ VAŠEHO DOMU VIZUÁLNÍ PŘÍRUČKA K SW PRO PDA

2 PARALELNÍ ROZHRANÍ Paralelní rozhraní realizuje pøenos dat mezi vnitøní sbìrnicí øídicího systému a vnìjším prostøedím po znacích, neboli po slabiká


Úvod do mobilní robotiky AIL028

8xDCOUT-CAN. (modul osmi výstupů s rozhraním CAN) rev. 1.0


Firmware USBasp pro modul AVRUSB. Milan Horkel. Parametr Hodnota Poznámka. Rozhraní USB Low Speed. Procesor ATmega8 ATmega88 Varianty překladu


Ladění ovladačů pomocí virtuálního stroje...2 Úvod...2 Ladění ovladačů pomocí dvou fyzických počítačů...2 Ladění ovladačů pomocí jednoho fyzického


M R 8 P % 8 P5 8 P& & %

PŘÍLOHY. PRESTO USB programátor

TMU. USB teploměr. teploměr s rozhraním USB. měření teplot od -55 C do +125 C. 26. května 2006 w w w. p a p o u c h. c o m

2kapitola 2 ŠÍØENÍ VLN V ZÁSTAVBÌ PRO MOBILNÍ BUÒKOVÉ SYSTÉMY 2.1 Šíøení vln v pásmu UHF Mobilní spoj Šíøení v poloprostoru

INSTALACE. programu WinDUO. pod Windows 7 / Windows Vista. ČAPEK-WinDUO, s.r.o.

1 Návod na instalaci prostředí LeJOS-NXJ a přehrání firmwaru NXT kostky



Transkript:

Vážení zákazníci, dovolujeme si Vás upozornit, že na tuto ukázku knihy se vztahují autorská práva, tzv. copyright. To znamená, že ukázka má sloužit výhradnì pro osobní potøebu potenciálního kupujícího (aby ètenáø vidìl, jakým zpùsobem je titul zpracován a mohl se také podle tohoto, jako jednoho z parametrù, rozhodnout, zda titul koupí èi ne). Z toho vyplývá, že není dovoleno tuto ukázku jakýmkoliv zpùsobem dále šíøit, veøejnì èi neveøejnì napø. umis ováním na datová média, na jiné internetové stránky (ani prostøednictvím odkazù) apod. redakce nakladatelství BEN technická literatura redakce@ben.cz

Mùj startkit ještì obsahuje stabilizátor 7805. Pøevodník MAX232 IC1 je používán pøi ISP programování. K P0.24 až P0.31 se pøes propojky JP5 dá pøipojit 8 diod LED, k P0.16 až P0.23 se pøes JP6 dají pøipojit odpory pøivádìjící na tyto piny log.1 a dále 8 tlaèítek po jejichž stisknutí se na odpovídající pin pøivede log.0 (na obr. 3.13 nejsou tato tlaèítka zakreslena obrázek by již nebyl tak pøehledný). Druhý MAX232 spolu s X2 je urèen pro pøípadnou komunikaci uživatelským programem s dalším sériovým portem poèítaèe PC. 3.3 Ukázka konkrétní práce s LPC2106 Pøi práci s 8bitovými jednoèipy bývá prvním programem, který si odzkoušíme, program, který napø. støídavì rozsvìcuje a zhasíná liché a sudé diody LED pøipojené k paralelnímu portu o 8 pinech (jde o 8bitový poèítaè). Pokusíme se napsat obdobný program, který bude pøedpokládat 8 LED diod pøipojených k P0.24 až P0.31 (obr. 3.13). Mj. musíme pamatovat na to, že délka slova je nyní 32 bitù. Dále si musíme zjistit, jak k paralelnímu portu budeme pøistupovat. Zatím jsme se zabývali jen jádrem ARM. U LPC210x se k periferiím pøistupuje pøes registry. Pøístup k periferii na obr. 3.1 oznaèené jako 32 General Purpose I/O (vlastnì paralelní port) je v uživatelské pøíruèce k LP2104/2105/2106 popsán v kap. 8 GPIO. Než se pustíme do programování, musíme si zjistit další podrobnosti k LPC2106. Nejprve zjistíme, jak vypadá jeho pamì ový prostor obr. 3.14. Je vidìt, že k periferiím (viz obr. 3.1) se pøistupuje pomocí instrukcí pøístupu k pamìti. Jenom místo pamìti SRAM jsou na odpovídajících adresách umístìny registry periferií. Podrobnosti najdeme v již zmiòované uživatelské pøíruèce. Konkrétnì pro GPIO je použito: $GUHVD -PpQR 3RSLV 3 tvwxs [(,23,1 6ORXåtNHþWHQtDNWXiOQtKRVWDYX*3,2SLQ -HQþWHQt [(,26(7 *3,2YêVWXSQtELWRYêUHJLVWUSURQDVWDYHQt ýwhqtqdvwdyhqt KRGQRWQDRGSRYtGDMtFtFKSLQHFKSHULIHULH -HGQLþND]DSVDQiGRWRKRWRUHJLVWUXVHSURMHYt MDNRQDRGSRYtGDMtFtPYêVWXSXQXOD]DSVDQi GRWRKRWRUHJLVWUXVHQLMDNQHSURMHYt [(,2',5 *3,2 tglft UHJLVWU SUR XUþHQt VP UX,2 SUR ýwhqt]islv NDåGê ] ELW *3,2 SHULIHULH 7M XUþXMH NWHUp ELW\EXGRXYVWXSQtDNWHUpYêVWXSQt [(&,2&/5 *3,2YêVWXSQtELWRYêUHJLVWUSURQDVWDYHQt 3RX]HQXORYiQt KRGQRW QD RGSRYtGDMtFtFK SLQHFK SHULIHULH -HGQLþND ]DSVDQi GR WRKRWR UHJLVWUX VH SURMHYt MDNRQDRGSRYtGDMtFtPYêVWXSXQXOD]DSVDQi GRWRKRWRUHJLVWUXVHQLMDNQHSURMHYt POZNÁMKA: Všimnìme si, že pro zápis 0 a pro zápis 1 máme dva rùzné registry. U 8bitových jednoèipù vìtšinou byl k dispozici spoleèný 8bitový registr, do nìhož jsme zapisovali slovo, jehož obsah se pak projevil na pinech paralelního portu. 34 Vladimír Váòa: ARM pro zaèáteèníky A

Obr. 3.14 Nyní je již zøejmé, že pro naše zapojení z obr. 3.13 budeme muset do IODIR zapsat hodnotu 0xFF000000, aby piny, k nimž mám pøipojeny LED diody byly výstupními. Aby LED svítila, musí být na pøíslušném pinu 1, aby nesvítila, musí na pinu být 0. Aby svítily liché LED diody musíme do IOSET zapsat 0x55000000 a do IOCLR 0xAA000000. Pro rozsvícení sudých LED diod do IOSET zapíšeme 0xAA000000 a do IOCLR 0x55000000. Pro vytvoøení blikaèe pak umístíme výše zmínìné zápisy do IOSET a IOCLR do nekoneèné smyèky. Dále musíme použít nìjaký podprogram pro vytvoøení èasové prodlevy a volání tohoto podprogramu umístíme v nekoneèné smyèce vždy za dvojici zápisù do IOSET a IOCLR. Parametry podprogramu èasového zpoždìní pak urèují rychlost blikání LED diod. Nyní si vše prakticky pøedvedeme. Nejjednodušší bude asi napsat program v jazyce C. Pro pøeklad z jazyka C do kódu ARM existuje øada pøekladaèù jazyka C, spolu s knihovnami a popø. i s vývojovým prostøedím IDE. Pro pøedvedení použijeme uvision3 firmy Keil Software [2]. Tato firma je podporovaná firmou ARM a má proto jistì nejlepší informace pro tvorbu vývojového software. Po registraci na jejich stránkách mùžeme zdarma používat evaluation verzi jejich vývojových nástrojù. Nainstalujeme je do PC s OS Win- A Vladimír Váòa: ARM pro zaèáteèníky 35

dows. Pokud použijeme pøednastavené volby, nainstaluje se do C:\Keil. Souèástí instalace je i podsložka Examples obsahující nìkolik ukázkových projektù. Mezi nimi je i projekt blinky používaný jako ukázkový program u øady startkitù i vývojových programù. Jeho výsledkem je bìžící LED dioda. Práci si usnadníme tím, že ho po úpravì použijeme. Pro náš první project jsme vytvoøili podsložku program01 (kdekoli na disku, umístili jsme tuto složku do složky data na disku D. Do této složky zkopírujeme obsah složky blinky z složky examples z C:\Keil\ARM\Examples. Poté spustíme vývojové prostøedí obr. 3.15. Obr. 3.15 V menu vybereme Project Open Project obr. 3.16. Použijeme totiž již hotový project blinky zkopírovaný do nové složky. Na obr. 3.15 je také vidìt, jak budeme postupovat, budeme-li vytváøet skuteènì nový project vybereme položku New project. Tento výbìr bude pozdìji asi èastìjší. 36 Vladimír Váòa: ARM pro zaèáteèníky A

Obr. 3.16 Po výbìru Project Open Project se objeví okno Select Program File s jehož pomocí ve windows bìžným zpùsobem nastavíme umístìní našeho upravovaného projektu blinky. Dále oznaèíme soubor blinky.uv2 a klikneme na tlaèítko Otevøít obr. 3.17. Obr. 3.17 Nyní již mùžeme pracovat se zdrojovým kódem v jazyce C, obr. 3.17. A Vladimír Váòa: ARM pro zaèáteèníky 37

Obr. 3.18 Pøedevším nastavíme piny GPIO, ke kterým máme pøipojeny diody LED a dale zcela zmìníme obsah tìla nekoneèné smyèky while (1) { }. Výsledkem je kód: #include <LPC21xx.H> /* LPC21xx definitions */ #include Timer.h extern long volatile timeval; void wait (void) { /* wait function */ unsigned long i; i = timeval; while ((i + 10)!= timeval); /* wait 100ms */ } int main (void) { IODIR1 = 0xFF000000; /* P1.16..23 definovány jako výstupy */ init_timer(); while (1) { /* Loop forever */ IOSET1 = 0x55000000; IOCLR1 = 0xAA000000; wait (); /* call wait function */ IOSET1 = 0xAA000000; IOCLR1 = 0x55000000; wait (); } } 38 Vladimír Váòa: ARM pro zaèáteèníky A

Zbývá kód pøeložit. V menu vybereme Project Rebild all target files obr. 3.19. Obr. 3.19 V dolním oknì Build uvidíme informaci o prùbìhu kompilace a linkování. V pøípadì chyb udìláme opravu. Bezchybný výsledek je na obr. 3.20. Obr. 3.20 A Vladimír Váòa: ARM pro zaèáteèníky 39

V podsložce obj se objevil nový soubor blinky.hex. Je to požadovaný výsledek naší èinnosti, obr. 3.21. Obr. 3.21 Jeho obsah umístíme do programové pamìti Flast LPC2106 pomocí LPC210x FLA- SH ISP Utility, kterou proto spustíme, obr. 3.22. Obr. 3.22 Konektor X1 startkitu z obr. 3.13 spojíme kabelem se sériovým portem PC. Na startkitu pomocí propojky pøipojíme odpor R1 k P0.14 a tím na tento pin pøivedeme log.0. Dále v listboxu Connected To Port nastavíme pojmenování sériového portu PC, ke kterému máme pøipojen kabel a poté klikneme na tlaèítko Read Device ID. Objeví se okno LPC210x Reset Message obr. 3.23. V našem pøípadì jsme jako sériový port nastavili COM3, nebo na mém PC mám pouze USB a proto jsem použil pøevodník USB/sériový port. Po nainstalování tohoto pøevodníku se objeví virtuální sériový port COM3. 40 Vladimír Váòa: ARM pro zaèáteèníky A

Obr. 3.23 Stiskneme tlaèítko RESET na startkitu a poté tlaèítko OK okna LPC210x Reset Message. Úspìšná komunikace utility s LPC2106 se projeví oknem obr. 3.24. Obr. 3.24 Kliknutím na tlaèítko se tøemi teèkami napravo od okénka Filename se objeví okno Otevøít, pomocí kterého nastavíme cestu k souboru blinky.hex obr. 3.25. A Vladimír Váòa: ARM pro zaèáteèníky 41