Újrakonfigurálható eszközök

Hasonló dokumentumok
Hobbi Elektronika. A digitális elektronika alapjai: Újrakonfigurálható logikai eszközök

Újrakonfigurálható eszközök

Újrakonfigurálható eszközök

Újrakonfigurálható eszközök

Újrakonfigurálható eszközök

Újrakonfigurálható eszközök

Újrakonfigurálható eszközök

Újrakonfigurálható eszközök

Multi-20 modul. Felhasználói dokumentáció 1.1. Készítette: Parrag László. Jóváhagyta: Rubin Informatikai Zrt.

10. EGYSZERŰ HÁLÓZATOK TERVEZÉSE A FEJLESZTŐLAPON Ennél a tervezésnél egy olyan hardvert hozunk létre, amely a Basys2 fejlesztőlap két bemeneti

Mintavételes szabályozás mikrovezérlő segítségével

Újrakonfigurálható eszközök

MSP430 programozás Energia környezetben. Kitekintés, további lehetőségek

Újrakonfigurálható eszközök

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)

T Bird 2. AVR fejlesztőpanel. Használati utasítás. Gyártja: BioDigit Kft. Forgalmazza: HEStore.hu webáruház. BioDigit Kft, Minden jog fenntartva

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)

ÖNÁLLÓ LABOR Mérésadatgyűjtő rendszer tervezése és implementációja

Bevezetés a mikrovezérlők programozásába: Ismerkedés az Arduino fejlesztői környezettel

Arduino bevezető Szenzorhálózatok és alkalmazásaik

Programozás és Digitális technika I. Pógár István eng.unideb.hu/pogari

ÉRZÉKELŐK ÉS BEAVATKOZÓK I. GY1.1 SENSACT0 PÉLDAPROGRAM

A Memory Interface Generator (MIG) beállítása a Logsys Kintex-7 FPGA kártyához

Silabs STK3700, Simplicity Studio laborgyakorlat

T Bird 2. AVR fejlesztőpanel. Használati utasítás. Gyártja: BioDigit Kft. Forgalmazza: HEStore.hu webáruház. BioDigit Kft, Minden jog fenntartva

KINCO PLC és HMI, frekvenciaváltó árlista

KINCO PLC és HMI, frekvenciaváltó árlista

3. A DIGILENT BASYS 2 FEJLESZTŐLAP LEÍRÁSA

PAL és s GAL áramkörök

Újrakonfigurálható eszközök

Laborgyakorlat 3 A modul ellenőrzése szimulációval. Dr. Oniga István

A LOGSYS GUI. Fehér Béla Raikovich Tamás, Laczkó Péter BME MIT FPGA laboratórium

A Texas Instruments MSP430 mikrovezérlőcsalád

AVR-Stamp1.0F_USB Leírás, használati útmutató. Rev.B

KINCO PLC és HMI, frekvenciaváltó árlista

Perifériák hozzáadása a rendszerhez

KINCO árlista. Viszonteladói árlista. K2 PLC család K5 PLC család MT,GL univerzális kijelzők CV frekvenciaváltók PS tápegységek

Programozási segédlet DS89C450 Fejlesztőpanelhez

Labor 2 Mikrovezérlők

Az MSP430 mikrovezérlők digitális I/O programozása

Programmable Chip. System on a Chip. Lazányi János. Tartalom. A hagyományos technológia SoC / PSoC SoPC Fejlesztés menete Mi van az FPGA-ban?

Előadó: Nagy István (A65)

Újrakonfigurálható eszközök

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)

I 2 C, SPI, I 2 S, USB, PWM, UART, IrDA

The modular mitmót system. 433, 868MHz-es ISM sávú rádiós kártya

11. KÓDÁTALAKÍTÓ TERVEZÉSE HÉTSZEGMENSES KIJELZŐHÖZ A FEJLESZTŐLAPON

Autóipari beágyazott rendszerek CAN hardver

Mikrovezérlők Alkalmazástechnikája

Ismerkedés az MSP430 mikrovezérlőkkel

ems2.cp04d [18010] Keriterv Mérnök Kft Programozható Automatikai állomás 14 multifunkcionális bemenet, 6 relé kimenet, 4 analóg kimenet DIGICONTROL

Bevezetés a mikrovezérlők programozásába: Az Arduino, mint logikai analizátor

Laboratóriumi műszerek megvalósítása ARM alapú mikrovezérlővel és Linux-szal

LOGIKAI TERVEZÉS. Előadó: Dr. Oniga István Egytemi docens

Fizikai mérések Arduino-val

KINCO PLC és HMI árlista

ARM Cortex-M0+ mikrovezérlő programozása KEIL MDK 5 környezetben. 11. Impulzus-szélesség moduláció (PWM)

MF-20. Hotel ajtózár kezelő szoftver. Gyors beállítási útmutató

AC-MF1W. RFID kártyaolvasó és kódzár. Felhasználói leírás

Mikrovezérlők Alkalmazástechnikája

MPLAB ICD használata

LOGSYS EGYSZERŰ ALKALMAZÁS KÉSZÍTÉSE A LOGSYS KINTEX-7 FPGA KÁRTYÁRA A XILINX VIVADO FEJLESZTŐI KÖRNYEZET HASZNÁLATÁVAL június 16. Verzió 1.

Navigációs GPS adatok kezelése QGIS programmal (1.4 verzió) Összeállította dr. Siki Zoltán

WiLARM-MICRO GSM Modul Telepítői Útmutató Verzió: 2.0

BASH script programozás II. Vezérlési szerkezetek

PMU Kezdı lépések. 6-0 Csatlakozás LG GLOFA-GM és SAMSUNG PLC-hez. 6-1 Kommunikáció LG PMU és LG GLOFA-GM7 / GM6 / GM4 között

Labor gyakorlat Mikrovezérlők

PAL és GAL áramkörök. Programozható logikai áramkörök. Előadó: Nagy István

Leírás. Készítette: EMKE Kft február 11.

T2-CNCUSB vezérlő család hardver segédlet

1. DIGITÁLIS TERVEZÉS PROGRAMOZHATÓ LOGIKAI ÁRAMKÖRÖKKEL (PLD)

The modular mitmót system. DPY kijelző kártya C API

Nyomtatóport szintillesztő 3V3

Serial 2: 1200/2400 bps sebességû rádiós modem vagy

LOGSYS LOGSYS SPARTAN-3E FPGA KÁRTYA FELHASZNÁLÓI ÚTMUTATÓ szeptember 19. Verzió

LOGIKAI TERVEZÉS HARDVERLEÍRÓ NYELVEN. Dr. Oniga István

ISE makró (saját alkatrész) készítése

USB I/O kártya. 12 relés kimeneti csatornával, 8 digitális bemenettel (TTL) és 8 választható bemenettel, mely analóg illetve TTL módban használható.

Vegyes témakörök. A KAT120B kijelző vezérlése Arduinoval

Labor gyakorlat Mikrovezérlők

A LOGSYS rendszer ismertetése

I. C8051Fxxx mikrovezérlők hardverfelépítése, működése. II. C8051Fxxx mikrovezérlők programozása. III. Digitális perifériák

loop() Referencia:

Beágyazott rendszerek fejlesztése laboratórium DSP fejlesztési technológiák

VB IP. IP Kommunikátor

MSP430 programozás Energia környezetben. Az első lépések

DIGITÁLIS TECHNIKA. Szabó Tamás Dr. Lovassy Rita - Tompos Péter. Óbudai Egyetem Kandó Kálmán Villamosmérnöki Kar LABÓRATÓRIUMI ÚTMUTATÓ

Vegyes témakörök. ARDUINO a kispénzű amatőrök PLC-je. Hobbielektronika csoport 2017/2018. Debreceni Megtestesülés Plébánia

16/8/4 CSATORNÁS Real Time MPEG-4DVR. 16/8/4 CSATORNÁS beépített DVD-RW íróval vagy CD-RW íróval

Nagy Gergely április 4.

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)

Digitális Technika. Dr. Oniga István Debreceni Egyetem, Informatikai Kar

PLC Versenyfeladat. XIV. Országos Irányítástechnikai Programozó Verseny Budapest, március Összeállította az EvoPro Kft.

Mérő- és vezérlőberendezés megvalósítása ARM alapú mikrovezérlővel és Linux-szal

Átírás:

Újrakonfigurálható eszközök 9. Cypress PSOC 5LP prototípus kártya - az első lépések 1

Felhasznált irodalom és segédanyagok Cypress: CY8C58LP FamilyDatasheet Cserny István: PSOC 5LP Mikrokontrollerek programozása Cypress: PSOC 5LP Architecture Technical Reference Manual) Cypress: CY8CKIT-059 Prototyping Kit Guide Cypress: AN777759: Geting Started with PSoC 5LP Cypress: PSoC Creator User Guide Yuri Magda: Cypress PSoC 5LP Prototyping Kit Measurement Electronics 2

Cypress PSOC mikrovezérlők PSOC = Programozható System-on-chip (CPLD + mikrovezérlő) PSoC 1: M8C (8-bites) PSoC 3: 8051 (8-bites) PSoC 4: ARM Cortex-M0 (32-bites) PSoC 5LP: ARM Cortex-M3 (32-bites) PSOC 6: ARM Cortex M4F + M0+ + BLE (32 bites) Fejlesztői környezet: A számtalan fix funkciós periféria mellett az univerzális digitális blokkokból egyedi perifériákat, vagy kiegészítő logikai áramköröket is kialakíthatunk. PSOC Designer csak PSOC 1-hez PSOC Creator PSOC 3, 4, 5, 6-hoz A PSOC4 és PSOC5 mikrovezérlők 3,3 V-os és 5 V-os tápfeszültségen is működhetnek! 3

MCU és PSOC mi a különbség? A hagyományos MCU központi eleme a CPU A PSOC esetében a CPU nem központi eleme az adatáramlásnak: a digitális és analóg perifériák és a kivezetések egy jól konfgurálható jel- és adatbusz mátrix hálózaton keresztül kapcsolódnak össze MCU PSOC 4

PSOC 3, PSOC 5LP rendszerszintű vázlat 5

Tápellátás és tápfeszütségek Standard tápellátási konfiguráció Nincs használatban boost töltéspumpa Vdda Vddd >= Vddio0/1/2/3 Vdda = 1.8 5.5V Tápellátási szabályok Vdda: Ez legyen a rendszerben a legmagasabb feszültség. Ellátja a magasabb feszültségű analóg domént és a belső stabilizátorokat. Vddd: A digitális rendszer belső stabilizátorait táplálja. Vcca: Az analóg rész belső stabilizátorának kimenete. Egy külső1.3 uf szűrőkondenzátor kell rá a föld felé. Vccd: A digitális rész belső stabilizátorának kimenete. Egy külső1.3 uf szűrőkondenzátor kell rá a föld felé. A két Vccd kimenetet össze kell kötni, s egy közös 1.3 uf szűrőkondenzátoron osztoznak. Vddio0/1/2/3: Független I/O tápfeszültségek. Tetszőleges értékűek lehetnek 1.8V és Vdda között. 6

Univerzális digitális blokkok (UDB) Az Univerzális Digitális Blokkokból a CY8C4245 PSOC 4 mikrovezérlők 4 db-ot, a CYC8C5868, illetve CYC8C5888 PSOC 5LP mikrovezérlők 24 db-ot tartalmaznak. 7

Egy univerzális adatblokk felépítése Az univerzális adatblokk 2 db 12 bemenetű és 4 makrocella kimenetű szorzat-tag előállító áramkört és egy regiszterekkel, illetve ALU egységgel ellátot adatút modult tartalmaz. 8

Egy 12C4 PLD blokk felépítése PLD blokk jellemzők: 12 bemenet 8 szorzat tag (product term) 4 makrocella kimenet TC = True vagy Complement AND = logikai ÉS kapuk OR = logika VAGY kapuk MC = makrocella 9

Egy makrocella felépítése A makrocella működhet regiszterként vagy kombinációs logikai áramkörként 10

Adatút (Data path) 11

PSOC 5LP fejlesztőeszközök CY8CKIT-050 PSoC 5LP Development Kit CY8C5868AXI-LP035 (100 pin TQFP) USB/DMA/12-bit SAR és 20-bit delta-sigma ADC 24 UDB (digitális blokk), 4 analóg blokk CY8CKIT-059 PSoC 5LP Prototyping Kit CY8C5888LTI-LP097 (68 pin QFN) USB/DMA/12-bit SAR és 20-bit delta-sigma ADC 24 UDB (digitális blokk), 4 analóg blokk 12

CY8CKIT-059 fejlesztői kártya USB csatlakozás a PC-hez USB UART Kivezetések KitProg programozó és hibavadász C8C5868LTI-LP039 PSOC 5LP Target áramkör LED1 (2.1 kivezetés) A tápellátás történhet a programozó felől (5V), Az alkalmazói USB csatlakozóról (5V), vagy a VDD csatlakozáson keresztül (3,3 5 V). SW1 (2.2 kivezetés) Utóbbi esetben a D1 és D2 diódákat el kell távolítani az USB-re csatlakozás előtt! RESET gomb helye CY8C5888LTI-LP097 JTAG csatlakozás USB alkalmazói csatl. 13

A céláramkör kapcsolási rajza 14

Fejlesztői szofver letöltése és telepítése Az alábbi szofverek némelyikének letöltéséhez ingyenes regisztráció szükséges a www.cypress.com webhelyen! PSOC Creator 4.1 (link: www.cypress.com/psoccreator) PSOC 5 Programmer (link: www.cypress.com/products/psoc-programming-solutions) A fenti szofverek letöltése és használata ingyenes! CY8CKIT-059 Kit Only Kit tervezői fájlok, Dokumentáció, mintaprojektek (link: www.cypress.com/cy8ckit-059) 15

PSOC Creator indítása, Blinky projekt 1. Projekt Felfedező 2. Tervezőablak 3. Könyvtári modulok listája (de UDB is lehet) Projekt megnyitás: File Open Project/workspace, majd betallózás 16

A Blinky projekt konfigurálása A CY8CKIT-059 kártya első mintapéldáját (CE957352 Blinking LED) egy kicsit átszabjuk a PWM_1 modul átkonfgurálásához. Ehhez duplán katintsunk az alkatrészre! Beállítások: 1. Fixed function vagy UDB 2. 8-bites mód 3. Egy kimenet 4. A periódus 100 órajel (1 s) 5. A kitöltés 2 órajel 6. Less or Equal mód 7. Holtsáv nem kell Az Advanced lapon engedélyezzük a Kill funkciót! 17

Kivezetések hozzárendelése A K1 nyomógomhoz (Kill_Switch) a P2[2] kiveztés tartozik A LED1 kijelzőhöz (PWM Out) a P2[1] kivezetés tartozik Ezeket a programozó lefoglalja 18

A főprogram A PSOC eszközök esetén a hardver működtetéséhez a mikrovezérlőnek is futnia kell (órajelek generálása, modulok engedélyezése, stb.), ezért legalább egy minimális méretű main.c programra szükség van. A projektbe beillesztet könyvtári alkatrészek/modulok kezelését biztosító API függvényeket a PSOC Creator automatikusan beilleszte a projektbe, ezeket hívhatjuk meg a főprogramból A Blinky projekt main.c programjának listája #include "project.h" void main() { PWM_1_Start(); for (;;) {} } // PWM modul indítása 19

Fordítás, programletöltés A projekt generálálás, lefordítás és letöltés lépései: 1) Az alkalmazás generálása (API generálás) 2) A projekt lefordítása (build) 3) Dokumentáció generálás (opcionális lépés) 4) A program letöltése (az áramkör csatlakoztatása után) 20

A Blinky program futatása LED1 K1 Lenyomva tartva szünetel LED1 villogása 21

Új projekt létrehozása lépésről-lépésre A következőkben egy új PSOC Creator projekt létrehozásának menetét mutatjuk be, lépésről-lépésre Az új projektünkben a PSOC 5LP mikrovezérlő UART porton kommunikál a PC-vel, s egy terminálablakból küldöt parancsokkal állathatjuk be a LED1 fényerejét Az UART kommunikáció a kártyánkra építet KitProg eszköz segítségével történik, mivel az USB-UART átalakítóként is működik A LED1 teljesítményét egy PWM modul segítségével szabályozzuk, s a PWM jel kitöltését szabályozhatjuk 5 95 % közöt A projekt forrása Yury Magda könyvének (Cypress PSoC 5LP Prototyping Kit Measurement Electronics) első mintaprojektje 22

Új munkaterület létrehozása A munkaterület (workspace) egy vagy több projektet tartalmazhat Új munkaterület létrehozásának lépései a PSOC Creator-ban: File New Project menüpont választás Workspace választás, majd Next gombra katintás Munkaterület neve (pl. Lab01) és hely megadása, majd Finish 23

Új projekt létrehozása Jobb gombbal katintsunk a munkaterület nevére a Project Explorer ablakban! Válasszuk az Add New Project menüpontot! 24

Új projekt létrehozása A felbukkanó ablakban válasszuk a Target kit opciót és a CY8CKIT-059 eszközt, majd katintsunk a Next gombra! Válasszuk az Üres (Empty) opciót, majd Next!!! Adjuk meg a projekt nevét (PWM_UART), majd Finish!!! 25

A kapcsolás megrajzolása A kapcsolás összeállítása a TopDesign.cysch lapon történik Az alkatrészeket a jobboldali menüből tallózhatjuk és húzhatjuk rá a rajzfelületre PWM_1: Cypress Digital Funcions PWM [v3.30] UART_1: Cypress Communications UART [v2.50] Clock_1: Cypress System Clock [v2.20] 0: Cypress Digital Logic Logic Low 0 [v1.0] PWM_Out: Cypress Ports and Pins Digital output pin [v2.20] Az összekötésekhez a eszközt használjuk! A mikrovezérlőhöz kapcsolódó külső áramköri elemeket az Of-Chip alkatrészkönyvtárból keressük ki! Ezeknek az elemeknek nincs hatása a projektépítésre illetve annak működésére, csupán dokumentációs célokat szolgál a tervrajz ilyen kiegészítése. 26

Az áramköri terv 27

PWM_1 konfigurálása Duplakatintással nyithatjuk meg a kiválasztot alkatrész konfgurációs felületét PWM_1: UDB, 16-bit mód, periódus=255, kitöltés=127, polaritás: Less or Equal, nincs holtsáv 28

UART modul konfigurálása Az UART_1 modullal full duplex kommunikációt valósítunk meg a KitProg-on keresztül ami USB-UART átalakítóként is szolgál Megzsakítást nem használunk, a sebesség 9600 bps, a formátum pedig 8 bit, 1 stop bit, no parity, és nincs adatfolyam-vezérlés 29

CLOCK_1 konfigurálása A rendszer órajeleiből leosztással további órajeleket képezhetünk A PWM_1 modulhoz 100 khz-es órajelet confgurálunk Azt UART_1 órajele automatikusan generálódik az adatsebesség megadásakor 30

A PWM_Out kivezetés konfigurálása A PWM-Out kimenetel LED1-et akarjuk meghajtani, ezért erős meghajtóként (Strong drive) konfguráljuk A földre kötöt LED1-et így legfeljebb 4 ma-rel táplálhatjuk 31

A kivezetések hozzárendelése Mivel a külső áramkör kialakítása már adot számunkra, nekünk kell megadni, hogy mi melyik lábon legyen kivezetve 32

Az órajelek konfigurálása A Design Wide Resources Clock lapján a rendszer órajeleket konfigurálhatjuk (Edit Clock...-ra kattintva). Itt most ILO állítha elő a 100 khz-es órajelet. A CPU 24 MHz-en fut. 33

A main.c program #include <project.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h> uint8 rxstate; char buf[32]; char *pbuf = buf; int cmp; int main() { CyGlobalIntEnable; // Megszakítások engedélyezése UART_1_Start(); // UART_1 egység indítása PWM_1_Start(); // PWM_1 egység indítása for(;;) { pbuf = buf; UART_1_PutString("Enter duty cycle (5-95, max. 2 digits): "); UART_1_PutCRLF(0xD); UART_1_ClearRxBuffer(); memset(buf, 0, strlen(buf)); while (1) { if((rxstate = UART_1_ReadRxStatus()) == UART_1_RX_STS_FIFO_NOTEMPTY) { *pbuf = UART_1_GetChar(); if((isdigit((uint8)*pbuf) == 0) (*pbuf == '\n')) { UART_1_ClearRxBuffer(); break; } UART_1_PutChar(*pbuf); UART_1_ClearRxBuffer(); pbuf++; } } UART_1_PutCRLF(0xD); CyDelay(500); cmp = atoi(buf); if ((cmp >= 5) && (cmp <= 95)) PWM_1_WriteCompare((int)(cmp*2.56)); } } Forrás: Yuri Magda: Cypress PSoC 5LP Prototyping Kit Measurement Electronics 34

A projekt lefordítása és futatása A projektépítés munkamenete megegyezik a korábban leírtakkal (Build Generate Application, Build Build PWM_UART) A futatáshoz használhatjuk pl. a Termite programot, 9600 bps-re konfgurálva. A beírt számok 5 és 95 közötiek lehetnek! 35