Fórum témák

» Több friss téma
Cikkek » Miért éppen assembly?
Miért éppen assembly?
Szerző: sonajkniz, idő: Jún 5, 2020, Olvasva: 2417
Lapozás: OK   1 / 4
Avagy mire elég 4 I/O láb és 512 byte programmemória.

Figyelmeztetés!

Arduino hívők, valamint mindazok, akik programot csak kész rutinok összefűzésével, vagy blokkok egymásra pakolásával szeretnek létrehozni, kérem NE olvassák tovább ezt a cikket!

Azonban, aki elolvassa és szeretne némely meglátásommal, vagy megoldásommal kulturáltan vitába szálni, vagy épp ellenkezőleg, saját hasonló véleményét kifejteni, azok hozzászólásait a PIC programozás assemblyben fórumban várom.

A fenti figyelmeztetés, és az, hogy miért is írom mindezt, egy kis magyarázatot igényel.

Kicsit beleszagoltam az ardunio programozásba. Bevallom, lustaságból. Ugyanis vásároltam egy gesztus szenzort, és úgy gondoltam, könnyebben megfejtem a titkait, valamint hamarabb tapasztalom meg a működését ha veszek egy Arduino Nano-t, mert arra van kész tesztprogram. 
A Nano és a tesztprogram tette is a dolgát, tehát akár elégedett is lehetnék. Ám a fejlesztő szoftver a feltöltés során kiírta, hogy a program több mint 8 Kbyte programmemóriát foglal el. Ezen kissé fennakadtak a szemeim. Egy I2C lekérdezés, és egy UART továbbítás duplája az én valaha írt leghosszabb programomnak!?
Ekkor már kiváncsi lettem, és a fejlesztő környezet példaprogramjaiból feltöltöttem a BLINK nevű programot. Ez mindössze annyit tesz, hogy a Nano panelján lévő egyik LED-et másodperces ütemben villogtatja.

arduino.jpg
Mikor megláttam, hogy ez a program 930 byte, leestem a székről. Ez azt jelenti, hogy kedvenc mütyüröm ezen a programnyelven a világon semmire sem használható.

Assemlyben az index villogóm programja tokkal-vonóval 26 byte!

Manapság, amikor a nagy szoftverfejlesztő cégek is úgy dolgoznak, hogy a mielőbbi prodoktum érdekében a legmagasabb szintű programnyelveken, vagy ami még rosszabb, blokkos programozással készítik programjaikat, amik (túl azon, hogy tele vannak ütközésekkel, hibákkal) rendre kinövik a tervezett hardvert, így a végfelhasználó cserélheti le meglévő eszközét, vagy eleve a szükségesnél drágább eszközt kap, legalább mi, amatőrök ne kövessük ezt a rossz példát.
Legalábbis addig ne, amíg észerű időráfordítással megoldható kisebb hardverrel is a dolog.

Ez már csak azért is célszerű, mert minél komplikáltabb egy hardver, annál több a meghibásodás esélye, és annál érzékenyebb mindenféle külső behatásokra. Ráadásul, ha egy program nem azt csinálja, amit szeretnénk, egy magas szintű programnyelv esetén nem látunk bele a részletekbe.

Ennyi bevezető után elérkeztünk oda, hogy bemutassam, mire lehet elég egy PIC10F322-es kontroller assembly programozással.


A cikk még nem ért véget, lapozz!
Következő: »»   1 / 4
Értékeléshez bejelentkezés szükséges!
Bejelentkezés

Belépés

Hirdetés
Lapoda.hu     XDT.hu     HEStore.hu