Cvičení z NMS Rozvrh cvičení Přehled použitého hardware Přehled úloh a některé podrobnosti
Rozvrh cvičení
Rozvrh cvičení 5.10. Přehled hardware pro zadané úlohy Přehled úloh 12.10. Podrobné zadání úloh 19.10. – 7.12. Konzultační cvičení 14.12. Prezentace – řešení úloh s tématy A
Prezentace Velmi stručné seznámení s řešením zadané úlohy: použité technické prostředky (vazba mezi jednotlivými funkčními jednotkami, ... ), funkce vytvořeného SW. Časový rozsah cca 10 min (není závazný).
Technické prostředky pro samostatné úlohy
Blokové schéma procesoru H8S/2633F
Funkční bloky H8S/2633F Interní paměti Periferie SRAM 16 kB, Flash 128 kB. Periferie max. 10 paralelní porty, 8 vstupů pro vnější přerušení, 2 DMA řadič (DMAC), 1 přenosová jednotka (DTC), 5 sériové rozhraní (SCI), 6 16bitová časovací a pulsní jednotka (TPU), 2 8bitový časovač (TMR), generátor PWM a PPG, 16kanálový 10bitový AD převodník, 2 kanálový DA převodník.
Funkční jednotka TPU TPU = Timer Pulse Unit 6 kanálů (0, 3), (1, 2, 4, 5). 16bitový čítač. 16bitové registry capture/compare. Režimy činnosti: Čítač/časovač. Capture/compare. PWM generátor. Dekodér signálů polohových čidel.
Funkční jednotka TPU
Funkční jednotka PWM PWM = Pulse Width Modulator 2 výstupy pulsů. Rozlišení 14 bitů.
Funkční jednotka PWM
Funkční jednotka PPG Max. 8 výstupních průběhů. PPG = Programmable Pattern Generator Max. 8 výstupních průběhů. Nastavitelný „non – overlapping“ režim. Lze aktivovat z TPU.
Funkční jednotka PPG
ADC 10bitový převod (cca 10 s). 16 kanálový multiplexor. Skenování max. 4 kanálů. Lze aktivivat z TPU. Interrupt po ukončení převodu A/D.
ADC
Mikrokontrolér MSP430 16bitové procesorové jádro RISC. Maximální frekvence CLK = 8 MHz (instr. cykl 125 ns ). Navržen pro nízký příkon (Icc < 3 mA / 8 MHz). Vybavení: 60 kB Flash, 2 kB SRAM, 256 B EEPROM, HW násobička (MAC 16 16 bitů). 2 časovač + WDT, 2 USART, 8kanálový AD 12bitů, 10 µs. programování a ladění programů prostřednictvím JTAG.
Mikrokontrolér MSP430
Časovací základna MSP430
Přehled úloh
Přehled úloh (témata A) Nízkopříkonové režimy mikrokontroléru Texas Instruments MCS430. Úkolem je naprogramovat úlohu, která bude periodicky měřit napětí na vstupu A/D převodníku a upravená data vysílat na sériovém rozhraní. Program musí být navržen tak, aby byla minimalizována spotřeba energie. Řízení otáček ss. motoru potenciometrem (MCU H8S). Pomocí A/D převodníku bude měřeno natočení hřídele potenciometru a v závislosti na něm řízena rychlost otáčení stejnosměrného motoru. Řízení bude v maximální míře využívat hardwarové prostředky MCU H8S. Řízení natočení hřídele krokového motoru (MCU H8S). Program bude snímat úhel natočení hřídele inkrementálního snímače polohy (jednotka TPU) a v závislosti na něm nastavovat úhel natočení hřídele krokového motoru (jednotka PPG). Řízení otáčení krokového motoru sériovou linkou (MCU H8S). Program bude ze sériové linky přijímat povely pro otáčení krokového motoru. Podle povelů bude generovat řídicí signály pro krokový motor tak, aby byl vykonán příslušný povel (jednotka PPG).
Přehled úloh (témata B) Práce s pamětí Flash (MCU H8S) Úkolem je napsat program, který bude demonstrovat práci s paralelní pamětí Flash: zápis a čtení bloku dat, nastavení ochranných zámků, vymazání zvoleného bloku). Práce s paralelní pamětí EEPROM (MCU H8S). Úkolem je napsat program, který bude demonstrovat práci s paralelní pamětí EEPROM: zápis a čtení bloku dat, nastavení ochranných zámků, vymazání zvoleného bloku). Práce s obvodem RTC (MCU H8S). Úkolem je napsat procedury pro demonstraci práce s obvodem RTC: nastavení časového údaje, čtení časového údaje, funkce zálohované paměti SRAM.
Přehled úloh (témata B) Demonstrace činnosti obvodu WatchDog. Program pro demonstraci obvodu WatchDog mikrokontroléru H8S. Program má umožnit nastavení maximální periody nulování WD, inicializaci WD a činnost WD v případě selhání kontrolovaného programu. Práce se sériovou pamětí EEPROM. Úkolem je napsat program, který bude demonstrovat práci s pamětí EEPROM se sériovým rozhraním SPI/Microwire: zápis a čtení bloku dat, nastavení ochranných zámků, vymazání zvoleného bloku). Použití řadiče I2C na mikrokontroléru Philips PCF80C552. Program pro komunikaci s teplotním čidlem. Čidlo je vybaveno rozhraním I2C, pomocí něhož jej lze konfigurovat a číst údaj o teplotě. Je připojeno k mikrokontroléru PCF80C552, který je vybaven specializovaným řadičem pro rozhraní I2C.
1. Nízkopříkonové režimy mikrokontroléru Texas Instruments MCS430
1. Nízkopříkonové režimy mikrokontroléru Texas Instruments MCS430 Timer_A a A/D převodník používají XT1. CPU používá XT2 nebo DCO. Timer_A odměřuje periodu převodu A/D. Převodník je aktivován hardwarově signálem z Timeru_A. A/D převodník generuje po ukončení převodu přerušení. Přerušení ukončí LPM CPU. CPU zpracuje naměřená data a vysílá je na RS232. Potom se přepne do Low Power Mode.
1. Nízkopříkonové režimy mikrokontroléru Texas Instruments MCS430
2. Řízení otáček ss. motoru potenciometrem (MCU H8S)
2. Řízení otáček ss. motoru potenciometrem (MCU H8S) Napětí na jezdci potenciometru je měřeno A/D převodníkem. A/D převod je periodicky spouštěn signálem z TPU. Po dokončení převodu generuje A/D převodník přerušení. CPU určí požadovanou rychlost a směr otáčení motoru a nastaví parametry PWM generátoru.
2. Řízení otáček ss. motoru potenciometrem (MCU H8S)
3. Řízení natočení hřídele krokového motoru (MCU H8S)
3. Řízení natočení hřídele krokového motoru (MCU H8S) Signály indikující otáčení osy inkrementálního snímače jsou hardwarově vyhodnocovány jednotkou TPU. Procesor periodicky odečítá natočení osy snímače. Podle natočení osy snímače a natočení osy motoru určuje směr dalšího otáčení a připraví data pro PPG. PPG je synchronizována z TPU, která určuje frekvenci generování řídicích pulsů pro motor.
3. Řízení natočení hřídele krokového motoru (MCU H8S)
4. Řízení otáčení krokového motoru sériovou linkou (MCU H8S)
4. Řízení otáčení krokového motoru sériovou linkou (MCU H8S) SCI1 přijímá povely pro otáčení motoru. Podle přijatého povelu připraví CPU data pro PPG (směr otáčení) a pro TPU (rychlost otáčení). Povely: otočení o n kroků doleva/doprava, nastavení rychlosti na stupeň 1, 2, 3, ... , plynulé otáčení doleva/doprava, „home“.
4. Řízení otáčení krokového motoru sériovou linkou (MCU H8S)
Rozšiřující moduly – Pwr_2 CPLD XC9536, Výkonové budiče, Ochranné obvody AD převodníků, Vstupy pro fototranzistory, Rozhraní SCI1.
Připojení ss motoru
Konfigurace Print_1
Připojení krokového motoru
Připojení inkrementálního snímače
Konfigurace SM_2