Jste zde

microC PRO for AVR 2008 = nový C překladač a prostředí pro MCU Atmel

microC_box_mikroc_100.gif

MicroC PRO for AVR 2008 je nový C kompiler a vývojové prostředí pro většinu MCU Atmel AVR, včetně všech letošních novinek. Mimo editoru, debuggeru a programovacího softwaru pro USB programátory poskytuje mnoho přidaných funkcí (např. automat. doplňování příkazů) a množství knihoven pro periferie AVR, nástroje pro převod obrázku pro LCD na C kód, statistické znázornění vytížení paměti a CPU a další.

V dnešní době je na profesionálnější úrovni skoro nemyslitelné rychle vytvářet a vyvíjet nové aplikace s MCU bez kvalitního překladače, resp. vývojového prostředí, které svými vlastnostmi významně programátorovi ulehčí jeho práci. Mezi takové velmi dobré překladače patří i nové vývojové prostředí "microC PRO for AVR 2008" společnosti mikroElektronika, které bylo vydáno letošní listopad a doplnilo tak kolekci C překladačů pro MCU PIC, dsPIC a 8051.

Toto vývojové, programovací prostředí s překladačem pro jazyk C pro mikrokroléry Atmel AVR, které umožňuje vše od vytvoření projektu až po nahrání finálního programu do MCU, v sobě zahrnuje následující komponenty:

  • Rozšířený editor zdrojového kódů v C s funkcemi doplňování syntaxe a proměnných
  • Podpůrné panely pro snadnější a rychlejší práci
  • Přidané nástroje pro snadnější programování LCD a komunikace
  • Rozsáhlou databázi knihoven pro AVR periferie
  • Debugger / simulátor běhu programu na MCU
  • Statistické vyhodnocení programu (zatížení paměti, CPU)
  • Programovací software pro USB programátor MCU

Další vlastnosti a požadavky překladače

  • Podporovaný jazyk: Assembler, ANSI C (s modifikacemi)
  • Podpora MCU: většinu MCU Atmel AVR (přesný seznam - .TXT soubor)
  • Výstupní formát přeloženého kódu: Intel Hex, assembler, binární
  • Podporovaný operační systém: Windows 98/2000/NT/XP/2003/Vista
  • Požadavky na hardware PC:
    • CPU: Intel Pentium 200 MHz nebo AMD K-6® procesor a lepší
    • Paměť: 64 MB RAM
    • CD-ROM mechanika pro instalaci softwaru

Animovaný přehled a rozložení funkcí nového C překladače a vývojového prostředí "microC PRO AVR 2008" pro mikrokontroléry Atmel AVR

Implementové knihovny pro jazyk C

Do vývojového prostředí microC je vloženo mnoho různých knihoven nejen pro usnadnění vytváření algoritmů, ale hlavně zjednodušení práce s periferiemi MCU. Ke správě, výběru a používání knihoven slouží tzv. Library Manager. Ten umožňuje snadno jen myší zvolit, které knihovny se budou ve vytvářeném programu používat. Následující zkrácený seznam ukazuje pro jaké knihovny jsou k dispozici:

Knihovny pro ovládání následujícího hardwaru AVR mikrokontrolérů:

  • A/D převodníky
  • Sběrnice CAN / SPI / I2C / UART / RS-485 / 1-Wire
  • Porty PS/2 , rozšíření portů (Port Expander)
  • LCD, grafické LCD, T6963C grafické LCD
  • EEPROM, Flash paměť
  • Klávesnice
  • Multimediální karty
  • PWM
  • Zvuk
  • TWI

 

Další implementované knihovny:

  • Standardní: C_Type,C_Math, C_Stdlib, C_String
  • Různé: tlačítko, převody, čas, trigonometrii, vestavěné rutiny

Zajímavé implementované nástroje

Do vývojového prostředí byly mimo klasické nástroje, jako jsou editor kódu, překladač, debugger a simulátor, vloženy i následující již méně obvyklé nástroje:

  • ASCII tabulka - slouží k určení hexa kódu příslušného znaku, což je nutné při programování LCD displejů

  • USART / RS-232 terminál - terminál pro odzkoušení a provádění RS-232 komunikace

  • Editování EEPROM - umožňuje přímo měnit / editovat obsah EEPROM paměti MCU

  • UDP komunikační terminál - terminál pro testování a zkoušení ethernetové UDP komunikace, zasílá pakety na zadanou IP adresu a port

  • Generování kódu pro grafické LCD z bitmap. obrázku - slouží k převodu jednoduchých bitmapových obrázků na C kód pro řízení LCD

  • Dekodér pro 7segmentové displeje - slouží k vygenerování správné decimal/hex hodnoty zobrazeného 7segmentového znaku

  • Generování kódu pro LCD z uživatelem vytvořeného obrázku - slouží k vygenerování C kódu pro vytvořený symbol / spec. znak na grafickém LCD
 

 

Generování kódu pro LCD z bitmap. obrázku a definovaného obrazce

 

EEPROM editor pro změnu a sledování dat v EEPROM paměti MCU a USART / RS-232 terminál pro potřeby ladění aplikací se sériovou komunikací

Podpůrné panely

Mimo samotný editor kódu programu jsou spolu s ním otevřeny podpůrné ovládací a monitorovací panely pro snadnější správu projektu, rychlejší výběr a zpřehlednění celého doposud vytvořeného programu, které slouží pro možnosti rychlé změny. K dispozici je:

  • Správce projektu (Project Manager) - slouží ke změně a úpravě vytvořeného projektu, jeho souborů, přidávání a odstraňování již existujících souborů zdrojových kódů

  • Prohlížeč kódu (Code Explorer) - slouží k rychlému pohybu a orientaci v již napsaném zdrojovém kódu, rychlému přístupu k proměnným, procedurám a funkcím

  • Správce knihoven (Library Manager) - slouží k pohlednému výběru a přidání knihoven do projektu a zdrojového kódu pomocí klikání myší

Přidané funkce editor kódu

Editor pro psaní programu (zdrojového kódu) mimo kvalitního automatického a široce nastavitelného barevného odlišení proměnných, příkazů apod. obsahuje i další méně běžné funkce:

  • Code Assistant - funkce pro interaktivní doplňování příkazů podle počátečních a následujících znaků, což významně zrychluje psaní kódu zvláště pro ty, co si hůře pamatují syntaxi příkazů. Stačí jen napsat jedno nebo více počátečních znaků příkazu a současně stisknout klávesy CTRL + SPACE (mezerník) a objeví se nabídka vhodných příkazů, ve kterých lze kurzory vybrat ten pravý. Dobré je, že nabídka vyskočí až po zmíněném stisku kláves a znalé programátory tak tato funkce neotravuje, když ji nevyžadují.

 

Animovaná ukázka funkce "Code Assistant"

  • Parameter Assistant - funkce, která se automaticky spustí po napsání jednoduché závorky "(", která uvozuje výpis parametrů proměnných a funkcí, nebo vždy po stisku kombinace kláves CTRL + SHIFT + SPACE (mezerník). Prakticky je to nápověda, která při zápisu již dříve definovaných / platných funkcí nebo procedur automaticky informuje o formátu očekávaných parametrů. Není nutné tak zpětně v deklaracích hledat, který typ proměnných apod. má být použit.

 

Animovaná ukázka funkce "Parameter Assistant"

  • Auto Correct - funkce automatické opravy překlepů při psaní příkazů. To výborně pomáhá lidem (programátorům), kteří mají vrozenou schopnost přehazovat písmena ve slovech.

  • Code Templates - funkce jednoduchého vkládání template kódů pouhým napsáním jeho jména (například whileb) a stiskem kláves CTRL + J. Editor kódů pak automaticky vygeneruje příslušný kousek kódu a vloží jej do stávajícího programu. Samozřejmě, že template kód lze vložit i jeho výběrem z nabídky menu "Code Toolbar". Navíc do nabídky lze vložit i nový vlastní kód.

  • Rozšírená funkce Undo/Redo - možnost vracet se tam a zpět v úpravě kódu až v 1024 krocích.

Programový simulátor se statistickým vyhodnocením

Programový simulátor implantovaný do microC překladače slouží pro simulaci funkce programu na úrovni zdrojového kódu na zadaném AVR mikrokontroléru a tím k základnímu odladění napsaného programu v jazyce C. Simulátor mimo klasické funkce několika druhů krokování programu nabízí i následující funkce:

  • Body přerušení programu (Breakpoints) - umožňuje definovat seznam bodů přerušení simulace běhu programu
  • Okno prohlížení stavu proměnných (Watch Window) - slouží k průběžnému sledování stavu proměnných, registrů a paměťových míst

  • Statistika - umožňuje bohaté statistické vyhodnocení napsaného programu. Statistický nástroj obsahuje následující vyhodnocení:
    • Zobrazení využití paměti (Memory Usage Window)
    • Zobrazení / graf procedur (Procedures (Graph) Window)
    • Zobrazení umístění procedur (Procedures (Locations) Window)
    • Zobrazení obsahu ROM paměti (ROM Window)
    • Zobrazení obsahu RAM paměti (RAM Window)

     

 

Překladač microC PRO for AVR 2008 poskytuje velké množství statistického vyhodnocení a zobrazení programu z pohledu využití paměti
a vytížení i periferií MCU (kolik místa jaká část programu zabere v paměti Flash či následně RAM, využití registrů MCU apod.)

Závěr

Vývojové prostředí, resp. kompiler, microC PRO for AVR 2008 firmy mikroElektronika patří určitě mezi to lepší, co je na trhu v této oblasti pro MCU AVR dostupné. Samozřejmě pokud je vám programování jen zábavou ve volných chvílích, patrně vám budou stačit chudší bezplatné nástroje a překladače. Ale pokud se již programováním zabýváte na profesionálnější úrovni, jsou výše uvedené funkce, nástroje a panely velmi užitečné a z vlastní praxe vím, že výrazně programátorovi ulehčují život. Samozřejmě za lepší programy je již nutné platit. V tomto případě je bezplatná pouze plně funkční "demoverze" volně stáhnutelná na stránkách výrobce, která má omezenou velikost zdrojového kódu na 2kslov. Což sice stačí na vyzkoušení zmíněných nástrojů, ale již na trošku lepší program to rozhodně nestačí. Plná neomezená verze v současné době na stránkách výrobce stojí 199$, ale s ohledem na to, že je to novinka a ostatní starší výrobcem prodávané překladače lze mít již od 99$, je zde do budoucna velká pravděpodobnost snížení ceny.

Antonín Vojáček

DOWNLOAD & Odkazy

Hodnocení článku: 

Komentáře

Temer zadna optimalizace je vlastnost demoverze?
Napriklad predavani parametru pres stack je na AVR silenost.
Je pouzito nekorektni obnovovani stack-pointer (pokud se bude zavola interrupt mezi OUT SPL, R26 a OUT SPH, R27 pri prekroceni branice 256b, tak se pro interrupt pouzije nekorektni SP)
Prekladac temer nepouziva registry, skoro porad neco uklada to pameti (a nejlepe prez X/Y/Z pointer)

No ... mozna por letech vyvoje, pripadne na nejake zakladni hrani .. ale doporucit toto prostredi na seriozni praci mi prijde znacne prehnane

treba updatnut uz je verzia 2011 (+3 roky) a pohli sa vo vyvoji
skor by som povedal ze pomaha pri zaciatku

debug prijemne prostredie a podpora kniznice
rovnake prostredie pre PASCAL/BASIC/C clovek si moze vybrat
v akom jazyku to chce pisat