abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
dnes 16:38 | Komunita

Byly zveřejněny videozáznamy přednášek a workshopů z letošní konference OpenAlt konané 5. a 6. listopadu v Brně. K videozáznamům lze přistupovat ze stránky na SuperLectures nebo přes program konference, detaily o vybrané přednášce nebo workshopu a dále kliknutím na ikonku filmového pásu. Celkově bylo zpracováno 65 hodin z 89 přednášek a workshopů.

Ladislav Hagara | Komentářů: 0
dnes 11:30 | Komunita

Bylo oznámeno, že bude proveden bezpečnostní audit zdrojových kódů open source softwaru pro implementaci virtuálních privátních sítí OpenVPN. Audit provede Matthew D. Green (blog), uznávaný kryptolog a profesor na Univerzitě Johnse Hopkinse. Auditována bude verze 2.4 (aktuálně RC 1, stabilní verze je 2.3.14). Audit bude financován společností Private Internet Access [reddit].

Ladislav Hagara | Komentářů: 2
dnes 06:00 | Komunita

Na YouTube byl publikován Blender Institute Reel 2016, ani ne dvouminutový sestřih z filmů, které vznikly za posledních 10 let díky Blender Institutu. V institutu aktuálně pracují na novém filmu Agent 327. Dění kolem filmu lze sledovat na Blender Cloudu. Videoukázka Agenta 327 z června letošního roku na YouTube.

Ladislav Hagara | Komentářů: 0
dnes 01:02 | Zajímavý článek

Minulý týden byly vydány verze 1.2.3 a 1.1.7 webového poštovního klienta Roundcube. V oznámení o vydání bylo zmíněno řešení bezpečnostního problému nalezeného společností RIPS a souvisejícího s voláním funkce mail() v PHP. Tento týden byly zveřejněny podrobnosti. Útočník mohl pomocí speciálně připraveného emailu spustit na serveru libovolný příkaz. Stejně, jak je popsáno v článku Exploit PHP’s mail() to get remote code execution z roku 2014.

Ladislav Hagara | Komentářů: 1
včera 16:00 | Nová verze

Byla vydána verze 0.98 svobodného nelineárního video editoru Pitivi. Z novinek lze zmínit například přizpůsobitelné klávesové zkratky. Videoukázka práce s nejnovější verzí Pitivi na YouTube.

Ladislav Hagara | Komentářů: 1
včera 15:00 | Zajímavý software

Stop motion je technika animace, při níž je reálný objekt mezi jednotlivými snímky ručně upravován a posouván o malé úseky, tak aby po spojení vyvolala animace dojem spojitosti. Jaký software lze pro stop motion použít na Linuxu? Článek na OMG! Ubuntu! představuje Heron Animation. Ten bohužel podporuje pouze webové kamery. Podpora digitálních zrcadlovek je začleněna například v programu qStopMotion.

Ladislav Hagara | Komentářů: 5
7.12. 21:21 | Nová verze Ladislav Hagara | Komentářů: 0
7.12. 11:44 | Zajímavý projekt

Na Indiegogo byla spuštěna kampaň na podporu herní mini konzole a multimediálního centra RetroEngine Sigma od Doyodo. Předobjednat ji lze již od 49 dolarů. Požadovaná částka 20 000 dolarů byla překonána již 6 krát. Majitelé mini konzole si budou moci zahrát hry pro Atari VCS 2600, Sega Genesis nebo NES. Předinstalováno bude multimediální centrum Kodi.

Ladislav Hagara | Komentářů: 2
7.12. 00:10 | Nová verze

Byla vydána verze 4.7 redakčního systému WordPress. Kódové označením Vaughan bylo vybráno na počest americké jazzové zpěvačky Sarah "Sassy" Vaughan. Z novinek lze zmínit například novou výchozí šablonu Twenty Seventeen, náhledy pdf souborů nebo WordPress REST API.

Ladislav Hagara | Komentářů: 10
6.12. 12:00 | Zajímavý projekt

Projekt Termbox umožňuje vyzkoušet si linuxové distribuce Ubuntu, Debian, Fedora, CentOS a Arch Linux ve webovém prohlížeči. Řešení je postaveno na projektu HyperContainer. Podrobnosti v často kladených dotazech (FAQ). Zdrojové kódy jsou k dispozici na GitHubu [reddit].

Ladislav Hagara | Komentářů: 27
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (24%)
 (29%)
 (7%)
 (5%)
 (3%)
Celkem 805 hlasů
 Komentářů: 50, poslední 29.11. 15:50
Rozcestník
Reklama

Dotaz: Řízení pomocí PC

pepe_ avatar 26.2.2011 13:23 pepe_ | skóre: 46
Řízení pomocí PC
Přečteno: 1332×

Zdravím , má někdo zkušenosti s tímto modulem v linuxu ? TOTO

 

Chtěl bych ovládat motůrky , spínat relé a zjišťovat například vlhkost půdy v květináči.

Nějakej netbook s linuxem s minimální spotřebou doma mam např (eltrinex) , šoupnout ho jako to co bude řídit ten usb modul a pomocí wifi na dálku ovládat nebo řídit spotřebiče.

Děkuji za reakce

Odpovědi

ZmaTkar avatar 26.2.2011 18:40 ZmaTkar | skóre: 18 | blog: ZmaTkar
Rozbalit Rozbalit vše Re: Řízení pomocí PC
Přímo s tímhle neporadím, ale pomocí libusb lze realizovat v user space ovladač asi čehokoli.
Punk's not dead ...
26.2.2011 18:59 Sandokan
Rozbalit Rozbalit vše Re: Řízení pomocí PC
Mám zkušenosti s tímhle. A musím říci, že dobré zkušenosti. Pro linux je tam poměrně jednoduché ovládání, na stránkách výrobce je i nějaký příklad.

ZDAR!
27.2.2011 16:09 Radek
Rozbalit Rozbalit vše Re: Řízení pomocí PC
Tyhle moduly ve variantě se sériovou komunikací používám na řízení celého domu, mám v nich pouze mírně upravený firmware, který umožňuje nezávislé řízení výstupů podle logického stavu vstupu. Jinak je v plánu řídit tím světla, topení a vypínání nevyužívaných spotřebičů. Zatím plánuju nadřazené řízení pomocí malého PC a Atomem s webovým rozhraním.
Jendа avatar 26.2.2011 19:36 Jendа | skóre: 73 | blog: Výlevníček | JO70FB
Rozbalit Rozbalit vše Re: Řízení pomocí PC
1300 Kč?! Co si ubastlit něco s nějakým jednočipem, třeba Atmegou? ;-)
27.2.2011 03:52 pc2005 | skóre: 32 | blog: GardenOfEdenConfiguration | liberec
Rozbalit Rozbalit vše Re: Řízení pomocí PC
Jj sakra to je drahý, jinak spíš PIC, to má usb slave přímo implementovaný hardwarově.
Chuck Norris řekl babičce, že si dá jen 3 knedlíky. A dostal 3 knedlíky. | 帮帮我,我被锁在中国房
Petr Tomášek avatar 8.3.2011 18:13 Petr Tomášek | skóre: 36 | blog: Vejšplechty
Rozbalit Rozbalit vše Re: Řízení pomocí PC
A co AT90USB*?

Jinak s AVR jde i softwarové USB, ale jede to na hranici specifikace, takže určitě tím neřídit nic kritického. :-)
8.3.2011 20:00 pc2005 | skóre: 32 | blog: GardenOfEdenConfiguration | liberec
Rozbalit Rozbalit vše Re: Řízení pomocí PC
Koukal jsem se a na mém oblíbeném obchodě TME žádnej AT90 nemaj ve DIL formě a nejmenší stojí jen o 10Kč míň než PIC (co v DIL je) a to přitom má PIC 4x víc paměti a je na rozdíl od atmela šestnáctibitovej.
Chuck Norris řekl babičce, že si dá jen 3 knedlíky. A dostal 3 knedlíky. | 帮帮我,我被锁在中国房
8.3.2011 23:18 trekker.dk | skóre: 71
Rozbalit Rozbalit vše Re: Řízení pomocí PC
Koukal jsem se a na mém oblíbeném obchodě TME žádnej AT90 nemaj ve DIL formě
Nejsem si jistej, jestli se vůbec vyrábí... nevzpomínám si, když jsem naposledy koukal, že bych na něco narazil...
Quando omni flunkus moritati
8.3.2011 23:18 trekker.dk | skóre: 71
Rozbalit Rozbalit vše Re: Řízení pomocí PC
To jo, ale soft si musíš dopsat/sehnat sám...
Quando omni flunkus moritati
Jendа avatar 8.3.2011 23:31 Jendа | skóre: 73 | blog: Výlevníček | JO70FB
Rozbalit Rozbalit vše Re: Řízení pomocí PC

Ale zase s tím byla sranda :).

Já: Počkej, kam odcházíš?
P: Mám tu ještě strašně moc urgentní administrativy na dořešení. Zkus s tím firmware začít sám.
Já: Ale já vidím Wiring poprvé v životě!
P: Have fun :)

9.3.2011 13:54 pc2005 | skóre: 32 | blog: GardenOfEdenConfiguration | liberec
Rozbalit Rozbalit vše Re: Řízení pomocí PC
Základní soft je přímo na stránkách výrobce. Myslím, že jsem viděl nějakou emulaci klávesnice či co.
Chuck Norris řekl babičce, že si dá jen 3 knedlíky. A dostal 3 knedlíky. | 帮帮我,我被锁在中国房
12.3.2011 11:29 trekker.dk | skóre: 71
Rozbalit Rozbalit vše Re: Řízení pomocí PC
To je možný, já se po tom nijak zvlášť nepídil. Z manuálu se mi zdálo, že v tom AT90USB je něco málo implementované hardwarově, ale když jsem zjistil, že to nedodávají v DIL, tak jsem to taky nezkoumal nijak detailně - klidně to tam může být stejné.

Quando omni flunkus moritati
12.3.2011 14:53 pc2005 | skóre: 32 | blog: GardenOfEdenConfiguration | liberec
Rozbalit Rozbalit vše Re: Řízení pomocí PC
Jo to bude, prostě plně funkční USB. Příklady od microchip třeba na mass storage jsou tady (přímo na stránce o daným typu).

Jinak některý atmel usb typy (hlavně ty s mnoha pinama) dotahujou na microchip co se týká paměti, ale takovej ADC je u atmelu celkem směšnej. Některý PICy v DIL uměj snad až 1Msps.
Chuck Norris řekl babičce, že si dá jen 3 knedlíky. A dostal 3 knedlíky. | 帮帮我,我被锁在中国房
26.2.2011 21:06 Jalien
Rozbalit Rozbalit vše Re: Řízení pomocí PC
Velmi dobrá věc na takové hraní je i Arduino.
pepe_ avatar 1.3.2011 16:57 pepe_ | skóre: 46
Rozbalit Rozbalit vše Re: Řízení pomocí PC

No to jsou ceny ....  Koukam že až tak moc lidí neprovádí řízení v linuxu.

 

Postupem bych chtěl modul s rj45 dát do robota , k němu AP v režimu klient , a dálkově ovládat robota po wifi , postupem času přihodit netbook ... takže potřebuju hodně vstupů a výstupů ale ty ceny jsou totál mimo...  Asi se naučim japonsky a něco si objednam od nich za pětinovou cenu.

Jendа avatar 1.3.2011 17:09 Jendа | skóre: 73 | blog: Výlevníček | JO70FB
Rozbalit Rozbalit vše Re: Řízení pomocí PC
No já teď patlám něco s Arduinem (moje první vážné setkání s MCU, takže do toho ještě zas tak moc nevidím) a mělo by to jít ubastlit na desce s ATMegou za stovku + pár externími součástkami. Viz toto a toto. Čeká mě to tak za dva týdny, ale naštěstí mám za zády jako support šikovné lidi z brmlabu :-).
12.3.2011 13:12 Pavel Píša | skóre: 11
Rozbalit Rozbalit vše Re: Řízení (pomocí PC)

Zdravím,

připojit zařízení přes USB i další rozhranní k Linuxu není problém. Co se týče HW, tak při použití standardních rozhranní (USB, I2C, Ethernet, SPI...) je SW velmi dobře portovatelný. Lze pak při požadavku na nízkou spotřebu použít po vývoji na PC třeba nějaký WiFi AP na MIPSu či ARMu. Tyto stroječky mají často i pár přímo použitelných GPIO vstupů/výstupů. Co se týče odevřenosti a použití standardního OpenWRT, tak je pěkné třeba Biquiti http://ubnt.com/routerstation.

Pokud se rozhodnete, že bude řízní periferií o něco složitější, tak se vyplatí navrhnout vlastní HW připojený třeba přes USB, RS-232, RS-485 nebo CAN. Pro pohodlnost vývoje SW a dostatečný výkon bych již PIC ani AVR nepoužíval. Obecně CPU, které není schopné registrem o nativní délce strojového slova adresovat libovolné místo v adresovém prostoru nebrat. Pro malou spoitřebu je tu MSP430, pro běžné věci ARM a MIPS. Cortex-M3 již má již i na rozdíl od ARMS7+VIC slušný těsně integrovaný prioritní řadič přerušení. Obsluha výjimek je unikátní v tom, že ve vektoru specifikovaná funkce je přímo z HW volaná volaná se standardní ARM EABI volací konvencí a přímo CPU se stará o úklid cloberable registrů. Pro jednoduché programování je to paráda, pro výuku až škoda, protože si vlastně ani není nutné uvědomovat specifika obsluhy přerušení.

Co se týče USB stacku a SW, tak lze použít mnoho předpřipraveného SW (FreeRTOS, ...). Pro přímé programování bez OS jsme si pro mnoho architektur a desek seskládali naše Sys-less řešení

http://rtime.felk.cvut.cz/hw/index.php/System-Less_Framework

Vývojové nástroje pro arm-elf lze třeba stáhnout přes APT

http://rtime.felk.cvut.cz/hw/index.php/Cross_compilers

USB stack máme v sys-less odzkoušený pro starší LPC2148 a Cortex-M3 řadu LPC17xx. Je třeba součástí kódu pro naše komunikační řešení na RS-485

http://ulan.sourceforge.net/

Vyzkoušet si ARM build lze třeba takto

echo deb ftp://rtime.felk.cvut.cz/debian unstable main  >/etc/apt/sources.list.d/rtime-debs.list
apt-get update
apt-get install binutils-arm-elf gcc-arm-elf gdb-arm-elf

wget -O get-git-ulan 'http://ulan.git.sourceforge.net/git/gitweb.cgi?p=ulan/ulan;a=blob_plain;f=scripts/get-git-ulan'
sh get-git-ulan
sh ulan/scripts/build-ulan-embedded

Výsledkem je aplikace U2U, která běží na LPC2148 a podporuje propojení USB na naší RS-484 síť.

Příklad jednoduchého zařízeni pro blikání ledkami přes USB lze nalézt v materiálech k mé přednášce Ovladače Linux: Prezentace, Příklad zdrojového kódu pro předmět Komunikační rozhraní počítačů (A4M38KRP)

Návrh hardware je s LPC17xx a jinými malými MCU jednoduchý a množství různých návrhů lze nalézt třeba v diplomových pracech našich studentů. Nějaký základ obecného HW návrhu mohu dodat i z našich firemních projektů.

13.3.2011 09:38 trekker.dk | skóre: 71
Rozbalit Rozbalit vše Re: Řízení (pomocí PC)
Pro pohodlnost vývoje SW a dostatečný výkon bych již PIC ani AVR nepoužíval. Obecně CPU, které není schopné registrem o nativní délce strojového slova adresovat libovolné místo v adresovém prostoru nebrat.
Tady bych požádal o vysvětlení, co je tím myšleno. Už si nepamatuju, jak je to u PICu, ale procesory AVR mají tři 2B dlouhé registry určené pro nepřímé adresování + instrukci pro přímé adresování.
Quando omni flunkus moritati
13.3.2011 12:11 Pavel Píša | skóre: 11
Rozbalit Rozbalit vše Re: Řízení (pomocí PC)
Jedná se mi o nativní šířku slova procesoru, to je ALU a hlavní datové cesty. Pokud není ALU a instrukční soubor vybavený operacemi pro práci s plnou délkou ukazatele (v případě 64kB adresního 16 bit sčítání, odčítání a alespoň posuny) tak céčkový kód s ukazateli bude po přeložení zbytečně kynout. Ošetřuje se to pak beričkami typu CODE void *, DATA void * atd. Ale to je špatně, architektura vyžaduje psát v něčem, co vlastně nění C, nebo alepoň ne přenositelné C. Vrcholem hrůzy je pak 8051, která má 8 bit ALU, základní adresování 8 bit v DATA, prášky vyhnané 16-bit přes DPTR a oddělěné adresní prostory IDATA, CODE, XDATA => obecný ukazatel 16-bit nestačí, používají se tedy 3-byte, na přičtení konstanty k adrese je potřeba až 6 instrukcí a pro každý přístup přes obecný void * ukazatel je nutné volat podprogram z knihovny. Alternativně lze volit různé omezené modely kompilace, které vždy určitou podmnožinu adres vylučují z použití. Ještě ja potřeba započítat nepoužitelnost zásobníku pro budování přirozených céčkových rámců s lokálními proměnnými atd. A vím o čem mluvím, vzhledem k nedostupnosti a cenám jiných řešení jsme byli nuceni okolo roku 1990 tuto architekturu zvolit a mnoho rozsáhlých aplikací v ASM stále ještě dobíhá ve výrobě.

Co se týče 8-bit AVR, tak tam je to o trochu lepší. Díky více ukazatelům a širšímu SP, lze v pořádku splnit C standardní rekurzivní volání a proto také existuje port GCC. Přesto je to procesor s 8-bit základní aritmetikou. Trochu to zahraňují na novějších jádrech instrukce MOVW, ADIW, SBIW, MOVW, ale posuny a další chybí. Ovšem volání podporogramu přes EIND je hnus. Stejně tak nesouvislá adresace LPM, LD znamená trvalé hlídání const/no const ukazatalů a složitý kód nebo všechna const data přenést do RAM nebo jiné datové oblasti. ELPM a RAMPX, RAMPY, RAMPZ a RAMPD pak postupně rostoucí beznadějnost vývojářů jádra CPU jen dokládá.

TI u MSP430 zvolilo lepší strategii, omezení součtu všech adresních oblastí do 64kB. Když pak bylo rozhodnuto o zvětšení rozsahu adres, natáhli všechny registry na 20-bitů a adresy se v tomto režmu ukládají do dvou slov (2x16, to je 32 bitů). Je to sice plýtvání, ale v budoucnu mohou bez větší změny instrukční sady roztáhnout adresaci až na 32 bitů. Nevýhodou je chybějící nebo komplikovaněji dostupné dělění a násobení.

Renesas H8H, H8S je také na pomezí 16/32 bit, ale adresaci a registry má 32-bitové. Sada je trochu roztahaná a neRISCová, ale použitelnost je dobrá. RX je ještě o něco lepší. Hezký a zajímavý RISC je SH, 32 nebo i 64-bity architektura, 16-bit krátké RISCové instrukce, dobře volené kódování instrukcí. Trochu podivnost s int násobením. Většinou se dnes řeší přes FP instrukce.

ARM je dobře RISCový, Thumb-1 celkem omezená prasárna, Thumb-2 (Cortex-M3) je již kompletní, kódováním některých instrukcí se rozlézá ale funkcionalita dobrá a flexibilní druhý oparand dává velké možnosti jak v adresování tak v snížení počtu instrukcí v aritmetice.

MIPS je celkem OK, trochu málo adresních režimů a porovnávání pro skoky. Podobné, i když trochu lepší, je to s PowerPC.

ColdFire je zriscovatělý CISC, hezká/čitelná instrukční sada, ale na vykonávání přece jenom složitější. Málo registrů (8+8) a ve dvou mírně se použitelností lišících skupinách.

AVR32 asi OK, nepoužíval jsem a příliš neznám.

Celkově je solidnějších architektur dnes dostatek a ceny se tak moc neliší. Tak proč nepoužívat takové, kde beličky nejsou potřeba.
13.3.2011 14:54 trekker.dk | skóre: 71
Rozbalit Rozbalit vše Re: Řízení (pomocí PC)
Ok, předesílám, že mluvím hlavně o AVR (mínus řada xmega - bohužel), protože s ostatními architekturami tolik zkušeností nemám.
Pokud není ALU a instrukční soubor vybavený operacemi pro práci s plnou délkou ukazatele (v případě 64kB adresního 16 bit sčítání, odčítání a alespoň posuny) tak céčkový kód s ukazateli bude po přeložení zbytečně kynout.
S tímhle moc nesouhlasím. Uznávám, že po přeložení C kódu s ukazateli může vzniknout dost ošklivý a nakynutý kód, ale snad ve všech případech, kdy jsem se s tím setkal, šlo o chybu překladače/optimalizátoru, který nepoužil něco, co ten procesor umí. (Nebo prostě vymyslel totální ptákovinu a že jsem jich už viděl dost.)

Nejsem si teď jistý, jaký kód máš na mysli, ale napadají mě dva případy.

1. konstrukce typu ukazatel + x - ok, místo jedné instrukce se pro sčítání použijí dvě. O něco déle to trvá, ale v programu jako celku si nedovedu představit, že by to mělo nějaký významný vliv.

2. ukazatel na složitější strukturu - opět není problém. AVR má instrukce pro práci s pamětí s adresováním registru + konstanta. Adresovat jednotlivé prvky struktury je tedy možné jedinou instrukcí a za stejnou dobu, jako normální proměnnou.

To mimo jiné lze použít i v případě č. 1, pokud je x konstanta - v kódu potom vznikne něco jako "nahraj/ulož z/do X + (velikost prvku * x)" - konstanta pro posun je v rozsahu 0-63, což dává možnost pracovat s poměrně velkými strukturami a adresovat i relativně dlouhá pole.

Jak jsem říkal, překladač to bohužel občas udělá blbě, ale to není chyba architektury.

Nenapadá mě, k čemu bych kdy použil posuny adres, ale je to stejný případ jako pro sčítání - prostě místo jedné instrukce se použijí dvě (tady už to může mít větší vliv než to sčítání, protože AVR posunuje jen o jednu pozici)
Ještě ja potřeba započítat nepoužitelnost zásobníku pro budování přirozených céčkových rámců s lokálními proměnnými atd.
To se AVR netýká. A když mi někdo bude tvrdit, že 8051 je krám, hádat se s ním nebudu.
Co se týče 8-bit AVR, tak tam je to o trochu lepší.
Vzhledem k výše napsanému bych dokonce z věty "Pro pohodlnost vývoje SW a dostatečný výkon bych již PIC ani AVR nepoužíval." vyhodil AVR ;-)
Díky více ukazatelům
Nejsou tak podstatné, vliv to má jenom na výkon odbouráním zbytečného přesouvání dat tam a zpátky...
Přesto je to procesor s 8-bit základní aritmetikou. Trochu to zahraňují na novějších jádrech instrukce MOVW, ADIW, SBIW, MOVW, ale posuny a další chybí.
Zrovna tyhle instrukce bych za tak důležité nepovažoval. Jediná jejich výhoda může být v tom, že pracují atomicky, ale to je tak všechno - trvají stejně dlouho a použití jedné instrukce místo dvou (tj. ušetření jednoho programového slova) za tak velkou výhodu nepovažuju. O posunech jsem psal vejš.
Ovšem volání podporogramu přes EIND je hnus. Stejně tak nesouvislá adresace LPM
Uznávám, moc hezké to není, ale napadá tě jiné řešení? Takové, aby ten procesor (či přinejmenším jeho části) nemusel být 32bitový? A krom toho tahle věc se týká jenom "nejvyšších" typů AVR - těch, které mají víc než 64k slov programové paměti. A i tam jenom v případě, že pracuješ s pamětí nad rámec spodních 64k slov.
LD znamená trvalé hlídání const/no const ukazatalů a složitý kód nebo všechna const data přenést do RAM nebo jiné datové oblasti.
Nerozumím těm const/no const ukazatelům (C jsem přece jenom trochu pozapomněl). Nicméně pokud se jedná vyloženě o konstanty, tak ty překladač do RAM přenáší automaticky vždy. Dá se mu v tom samozřejmě zabránit a říct, že daná konstanta se má uložit do programové paměti a tam taky zůstat, což - když se to udělá dobře - alespoň částečně vyřeší to hlídání (překladač by si měl stěžovat (warning) na nesouhlasné datové typy)
ELPM a RAMPX, RAMPY, RAMPZ a RAMPD pak postupně rostoucí beznadějnost vývojářů jádra CPU jen dokládá.
Tady nesouhlasím už vůbec. To jádro je dělané jako 8 bitový procesor s 16 bitovým adresováním. Zmíněné registry/instrukce jsou relativně rozumným rozšířením adresování - bez nutnosti dělat velké zásahy do jádra a hlavně bez jakéhokoliv ovlivnění práce s programem.

Dám příklad: mám přístroj s nějakým malým AVR procesorem a program k tomu. Pak dělám novější verzi toho přístroje a zjistím, že malý procesor už mi nestačí kvůli nedostatku periferií/nožiček. No tak koupím větší, ale přitom mě existence nějakých ELPM a spol. nemusí zajímat, protože původní program bude fungovat dál. Pro ten ty registry navíc neexistují. Teprve když velikost programu překročí hranici 64k slov, přijdou tyhle věci do hry.

Jo, jasně, mohl bych místo toho předrátovat procesor a rozšířit registry. Jenže tím bych si zmenšil počet dostupných registrů pro ostatní práci o nějakou čtvrtinu, přičemž v těch nových velkých by z větší části pořád byly jenom nuly. A program by do nich neustále zapisoval nové nuly, jenom výjimečně něco jiného. Přístup, kdy jednou za čas - když je to potřeba - zapíšu EIND, skočím a pak si EIND nemusím všímat do dalšího skoku (mluvím o skocích na absolutní adresu) mi prostě přijde lepší.

Btw. když už jsme u těch rozšiřujících registrů, tak nějak si nevzpomínám, že bych někdy viděl zařízení, ve kterém se používá něco jiného než RAMPZ (a i tam jenom pro programovou paměť, ne pro datovou)
Quando omni flunkus moritati

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.