Mikrořadiče
Transkript
Mikrořadiče 1Co to je?.........................................................................................................1 2Dělení............................................................................................................1 2.1Dle druhu paměti....................................................................................1 2.2Podle šířky datové sběrnice....................................................................2 2.3Podle instrukční sady..............................................................................2 3Co je uvnitř?..................................................................................................2 4Kdo to vyrábí?...............................................................................................5 5Programování čipů prakticky........................................................................5 6Periferie ´51..................................................................................................5 1 Co to je? Mikrořadiče(jinak mikrokontroléry) jsou počítače, které obsahují všechny podstatné části počítače v jednom čipu. Díky tomu jsou velmi univerzální a v dnešní době také velmi levné. Dnes již obsahují velké množství periferií a různé druhy paměti. Nejčastější periferiie jsou čítače, časovače, seriový kanál U(S)ART, PWM generátory, A/D převodníky, řadiče I2C transceivery, USB řadiče, ethernetová rozhraní a dnes dokonce 433MHz transceivery. Právě tyto integrované periferie přináší způsob vytvořit zařízení, které dosahuje minimálních rozměrů a přitom bez problému nahrazuje standardní počítač. 2 Dělení Mikrokontroléry lze dělit dle různých kritérií, nejdůležitější popíši níže. 2.1 Dle druhu paměti Dle druhu paměti lze mikrokontroléry rozdělit jednak z hlediska uspořádání adresního prostoru nebo podle technologie použité paměti. Uspořádat adresní prostor mikrokontroléru lze prakticky dvěma způsoby podle a) je veškerá pamět uspořádána lineárně v jednom adresním prostoru. podle b)je paměť programu samostatně oddělená od paměti dat a SFR(registrů speciálních funkcí, tj. ovládání periferií) – tzv. Harwardská architektura Ondřej Kunc/Pillár : Mikrokontroléry :minulost, současnost a budoucnost 1 Z hlediska typu použité paměti dělíme mikrokontroléry na OneTimeProgrammable(PROM), NotProgrammable(ROM), Flash(Reprogrammable), vnitřní RAM je zpravidla statická, dále mají některé mikrokontroléry navíc EEPROM paměť, která je přístupná v programu(nejčastěji PIC). 2.2 Podle šířky datové sběrnice Běžně se vyskytují mikrokontroléry 4,8,16 a 32-bitové. Mikrokontroléry se širší sběrnicí se dnes také vyrábí, ale jsou to spíše specializované obvody jako DSP a podobně. 2.3 Podle instrukční sady dělíme mikrokontroléry na RISC a CISC, hlavní rozdíl, je ten, že mikrokotroléry RISC mají velmi málo instrukcí(např PIC16F84 pouze 33), CISC mikrokontroléry mívají instrukcí více, některé jsou svým způsobem nadbytečné, protože je lze realizovat správným použitím jiných instrukcí nebo jejich sekvencí. RISCové mikrořadiče jsou zpravidla značně rychlejší, mívají kratší pracovní cyklus. 3 Výkon Současné mikrořadiče dosahují výkonů až ve stovkách MIPS(např mikrokontroléry firmy Ubicom pro síťové prvky), pro obyčejné chudé smrtelníky se v poslední době objevily na trhu mikrokontroléry ATMEL AT89LP2051, které mají výkon až 20MIPS při frekvenci hodin 20MHz, mají totiž speciální jádro kompatibilní s 89C51, ale většinou operací provádějí v jednom taktu hodin, ne 12 taktech jako 89C51, vzhledem k tomu, že jsou cenově dostupné(v GM electronics 39Kč s DPH) a navíc plně kompatibilní s původním AT89C2051, tak lze očekávat, že budou velmi používané. Zároveň bych rozebral porovnávání výkonů RISC a CISC procesorů. Ondřej Kunc/Pillár : Mikrokontroléry :minulost, současnost a budoucnost 2 4 Co je uvnitř? Obr 1. Jádro 8051 Ondřej Kunc/Pillár : Mikrokontroléry :minulost, současnost a budoucnost 3 Ondřej Kunc/Pillár : Mikrokontroléry :minulost, současnost a budoucnost 4 5 Kdo to vyrábí? Nejznámějšími firmami, které vyrábí mikrokontroléry jsou ● Motorola(MC68HC..) ● HITACHI(H8S,a spec. mikrokontroléry s ROM programem(HD4478A00-pro řízení LCD displayů)) ● ATMEL('51, AVR) ● MICROCHIP(PIC ....) ● STMicroelectronics(ARM7) ● WinBond(Spec. mikrokontroléry pro PC desky, měření teploty, ) ● ZILOG 6 Programování čipů prakticky Programátor který umožní naprogramovat například AT89C2051 od firmy ATMEL. Tento typ mikrokontrolérů jsem si vybral ze dvou důvodů, jednak s ním mám osobní zkušenost, a zároveň je prostě legendou mikrokontrolérů(z hlediska ceny, jednoduchého pochopení instrukčního souboru a také odolnosti čipu). v prezentaci ukázat a vysvětlit fotku 7 Periferie ´51 Pro rozebrání periferií jsem si zase vybral právě mikrokontroléry standardu MCS-51, protože nám jsou nejbližší. S čítačem/časovačem bychom měli mít všichni nějaké zkušenosti, proto se tím nebudeme zabývat, ale ukážeme si, jak se u MCS-51 obsluhuje sériový kanál. Vezměme v úvahu nejběžnější seriovou linku používanou pro průmyslové aplikace mikrokontrolérů, její parametry jsou (asynchronní komunikace, 9600Baud,1stopbit,parita žádná, řízení toku žádné, napěťové úrovně dle standardu RS232C). Jak na to ● Hw hledisko: ● mikrokontroléry mají výstupní úrovně na portech v TTL/CMOS compatible úrovních, je třeba je převést na RS232, k tomu se v dnešní době používá nejčastěji obvod MAX232C, nebo MC1488 v kombinaci MC1489(potřebuje Ondřej Kunc/Pillár : Mikrokontroléry :minulost, současnost a budoucnost 5 5,+15,-15V) Sw hledisko: ● ● je třeba, aby zůstal volný alespoň jeden časovač, který bude seriovou linku časovat, protože AT89C2051 nemá vnitřní BaudRateGenerator(vysvětlit) ● ukážeme si zdrojový kód, který umožní přijímat data a vystavovat je na port P1 ORG 0 JMP begin ORG 0Bh JMP serial_IT ORG 100h begin: MOV SCON,#50h ORL TMOD,#22h ; 2X pro seriovku(povesenou na Timer1) a X2 pro timer T0 MOV TH1,#0FDh ; rychlost 9600Baud @fCLK=11,0592Mhz MOV TL1,#0FDh MOV TH0,#0 SETB ES ;preruseni seriovky ON SETB EA ;globalni povoleni preruseni SETB TR1 ;spusteni casovace pro seriovku JMP $ ;tady budeme čekat, pokud zrovna nepoběží přerušení serial_IT: JNB RI,EMIT_IT CLR RI MOV P1,SBUF ;přijatá data uložíme na port P1 JMP END_IT EMIT_IT: CLR TI END_IT: RETI Jak na odesílání dat? SFR Registr SBUF je rozdvojen, tzn, že existují dva registry a řadič je rozlišuje, podle toho, jestli je do něj zapisováno, nebo je čten, tak je umožněna obousměrná komunikace. Problémem je, že do SBUF registru nesmíme zapsat, pokud ještě nebyl odeslán minulý znak, bohužel neexistuje příznak, kterým by se to dalo testovat, proto jsem v jedné aplikaci řešil tento problém tímto makrem. SEND MACRO znak JB SENT,$ Ondřej Kunc/Pillár : Mikrokontroléry :minulost, současnost a budoucnost 6 MOV SBUF,znak SETB SENT ENDM příznak SENT byl pouhým rezervovaným bitem, který se vždy na konci přerušení seriové linky vymazal. -----Pilly Ondřej Kunc/Pillár : Mikrokontroléry :minulost, současnost a budoucnost 7
Podobné dokumenty
VŠB - Technická univerzita Ostrava
– J1850 byte data link komunikace (BDLC), jenom u MC68HC912B32 a MC68HC12BE32
– CAN, jenom u MC68HC(9)12BC32
• Watchdog časovač, monitor hodin, přerušení při periodickém opakování
• Hardwarové body...
Sériový LCD terminál
16x2, a jeho rozložení jednotlivých prvků je proto navrženo tak, aby
minimalizovalo vestavné rozměry. Vývody pro připojení displeje stejně
jako upevňovací otvory plně korespondují s mechanikou klas...
Kódová klávesnice Alarm_keypad
tlačítko na PD6, další lze připojit přes diody, aby se sepnulo více vstupů najednou ( max.
255 kombinací, při resetu musí být PD6 = 1, jindy se PD6 = 0 bere jako stisk kód 0xFF )
➢ nebo maticová kl...
ulm–53l modbus
bit 0 =1 vyřazují se extrémní hodnoty MIN a MAX z posledních N měření – viz AVERAGE
bit 1 =1 bude prováděna další teplotní korekce s ohledem na zadanou teplotu média
– viz MEDIUM TEMPERATURE (204) ...
klubová výstava.
141 Arwen Broock´s Angel
142 Call me Lucky Rusty Love
143 Cayle The Golden Bracken
144 Cosmic Wind Goldy Forever
145 Dorotka Pražský klenot
146 Energy Sun Brdské Zlato
147 GALANS DONNA SUMMER
148 H...