Zdravím, chci se zeptat na váš názor na mcu ATXmega. Tak jsem se díval, že bych zkusil něco jiného než ATmega, zabrousil jsem do řady ATXmega, ceny na farnell se mě zdají slušné. Jedine co mě zaráží je datasheet, jen jsem teda proletel, neco jako nastavení registru a pod jak jsem zvyklí z ATmega jsem nenašel. Stahnul jsem si nejnovejší verzi codevision abych se podival na nastaveni pomocí codewizard a upřímě jsem se docela zhrozil jakou kopu kodu me to vygenerovalo.
DS pro xmegy jsou rozdělené do dvou skupin. Jedna, např. “ATXmega A manual” popisuje celou řadu A a pak je doplňující např. pro skupinu A1 (16A1, 128A1 …). Takže jsi možná koukal do toho nesprávnýho .
Kopu kódu to nejen vygeneruje, ale musel bys to i napsat. Je to o dost složitější procesor. Práce s ním je stejná, ale nastavování je víc (taky máš širší možnosti). Třeba pro port nejsou jen 3 registry, je jich tam hafo (ATxmega A manual -> I/O Ports -> Register Summary - Ports: 21 registrů na 1 port).
Do ATxmega by som dnes vobec nesiel ak k tomu nemas nejaky speci dovod.
- relativne pomale (32MHz)
- 8/16bit,
- v poslednej dobe (2-3 roky) velmi nespolahlivy vyrobca
- jediny vyrobca s tymto jadrom, cipy sli na svet za tazkych porodnych bolesti
- pokial viem, IO nie su 5V tolerant, co je znacne obmedzujuce a v konecnom dosledku predrazujuce konstrukciu shift level translatormi
Ak nieco lepsie, tak dnes asi Cortex-M3. Tie zlozitosti okolo kodu zhruba rovnake, akurat velmi slusny 32bit s podporou mnohych vyrobcov
Odpověď je jednoduchá. Konečně dobře udělaný MCU. Kompatibilní s AVR megou a vybavený bohatou periférií. Za zmínku stojí např. 12b AD převodník s rychlostí 1MSPS a konečně alespoň 4 kanálové DMA. Těch předností je opravdu velké množství a nemá smysl je zde vyjmenovávat, ale je to opravdu MCU jaký bych si představoval na začátku 21. století.
Ačkoliv si názorů Martina vážím, v tomhle rozhodně nemá pravdu.
Xmega běží do 32MHz, ale řada instrukcí vyžaduje jen 1 clock proti 2 u megy. Takže rychlost zpracování není uměrná jen poměru frekvencí oscilátorů, ale je mnohem vyšší a to nejen díky DMA, ale i díky promyšlenému HW.
Xmega neběží na 5V, ale na 3.3V což není nevýhoda, ale naopak. 5V logika už patří minulosti a žádné rychlé logické obvody a už vůbec ne 32b MCU nepracují na 5V. Jako shift level lze použít hradla 74HCT nebo ještě lépe 74ACT. Už se vyrábí i LCD displeje na 3.3V. Takže ani v tom žádný problém není.
Vývojové prostředí je stejné jak pro megy, tak pro xmegy. Programy lze docela dobře přenést na xmegy dokonce i psané v ASM, neboť mají shodné jádro.
Doporučuji pročíst si i několikrát DS xmegy. Zpočátku z toho bolí hlava, ale potom člověk zjistí, co všechno je možné v rámci jediného čipu jednoduše realizovat i to, co u megy bylo dopoud nemyslitelné. A hlavě, konkurence to neokouká, protože priférii lze propojovat mazi sebou uvnitř čipu a neplýtvá se pinami, když chci zřetězit timery. (Např. pro 32b capture).