Fórum témák

» Több friss téma
Fórum » ARM CPU assembler programozás
 
Témaindító: weberlars, idő: Aug 10, 2012
Témakörök:
Lapozás: OK   1 / 1
(#) weberlars hozzászólása Aug 10, 2012 /
 
Hi kedves olvasók,

A következő kéréssel szeretnék hozzátok fordulni:

Írtam ARM cpu-ra egy assembler programot, amit majd egy linuxos gépen
-Ubuntu for ARM- szeretnék futtatni. A program neve: NAP.
A program kiszámítja egy beadott dátum napját, majd kiadja a képernyőn.

Valahogy így képzeltem el:
begépel: NAP 2012.08.21. (enter)
kiír: #2 kedd

1.kérdés
A kiírást a képernyőre SWI xxxx (EF...... assembler) szeretném megoldani.
Tudja valaki melyik számot kell beírni ahoz, hogy egy text ami
a memoriában van (címe R0) és a text végén nulla van (text,#00)
a SWI a feladatot elvégezze?

2.kérdés
Gondolom linux beolvasná a "NAP" programot és valamikor elkezdené futtatni.
A paraméter "2012.08.21." hol található a memoriában és
mikor tudom a programomnak átadni?

Remélem tud valaki segíteni, előre is köszönöm.
weberlars.tata@gmail.com

Lenne még egy kérdésem.
Az ARMv6T2 CPU és újabb változatai már tudják a THUMB2 parancsokat is.
Ezek közt találhatók 32 bit hosszúságúak is.
Ilyen a MOVW-MOVT parancspár is. Ezzekkel bármilyen 32 bit
intergert betudunk a regiszterbe tölteni. R0 = #12345678

Pl: E3050678 MOVW R0,#5678
E3410234 MOVT R0,#1234

Kérdésem az lenne, hogy ezeket csak Thumb módban lehet használni?
Tehát még mielőtt ARM módban kitudnám használni ezeknek az előnyeit,
úgy előtte át kell váltanom Thumb módra
és utánuk meg visszaváltani ARM Módra?
-mert akkor nem sok előnyét látom.-
(#) zenetom válasza weberlars hozzászólására (») Aug 16, 2012 /
 
Szia!
Szerintem nézz be ebbe a topicba (át kéne helyezni?) ARM - Miértek, hogyanok.
(#) weberlars hozzászólása Aug 17, 2012 /
 
Talán egy másik "jobb" forum is megtenné. Ahogy elnézem nem sokan értenek itt a matériához.
Ötlet esetleg Link?
(#) sirály12 válasza weberlars hozzászólására (») Aug 17, 2012 / 1
 
Progizással talán a prog.hu

Nem jobb, más!
(#) Lucifer válasza weberlars hozzászólására (») Aug 17, 2012 /
 
A hup.hu-n szokott még előfordulni néhány ilyen érdeklődésű troll.
(#) _vl_ válasza weberlars hozzászólására (») Aug 17, 2012 /
 
Linuxra nem szokás assemblyben programozni.
(#) weberlars válasza _vl_ hozzászólására (») Aug 24, 2012 /
 
Nem szokás. Lehet, de nekem magában az assemblerben van a szorakozásom ARM procira! (no THUMB)
Majd ha a Windows RT megjelenik, majd... talán lesz lehetőségem akkor azon programozgatni. Addig is kénytelen vagyok beérni Linuxal és különböző emulátorokkal. grrrrr

A hup.hu már ismerem, de ott úgy tudom csak meghívásos alapon lehet beregisztrálni.

Amúgy meg tényleg kevés az infó amit fellehetne használni. Nagyon jól beszélek németűl is, keresgélek ott is sokszor (mikrocontroller.net ...) de ott sem több az infó.

És mégegyszer nem akarok C, Pearl vagy tudjam is én, minek nevezik őket programozni.
Az akinek a hobbyja a kerékpározás az sem fog áttérni a vasúttal való közlekedésre szabadidelyében csak mert jobb és könnyebb!!!

Feltettem egy pár -nekem nem világos- kérdést és ebben kértem a segítségeteket. Az olyan válaszokat, hogy mit nem szokás és mivel könnyebb nem érdekelnek!!!

Bocsika ha valakit megsértettem vele.
Tisztelettel: Egy ARM assembler -hobbyszinten- programozó.
(#) weberlars válasza weberlars hozzászólására (») Szept 13, 2012 /
 
Utána tudtam nézni interneten egy-két dolognak.
Ha valakit érdekelne:

A "MOVW és MOVT" parancsok vannak külön az ARMv7-ben is!
-tehát nem csak a Thumb2-vel bővítették, hanem hozzáadtak
pár új parancsot is. Többek között bit-tükrözést, div lehetőség...

A MOVW kódja: *E30#R###
A MOWT kódja: *34#R###

és ezt már ARM-módban használja! Thumban mások a kódok.
(#) giskard hozzászólása Júl 2, 2016 /
 
Ez a fórum abszolút kihalt, pedig szerintem érdekes téma.
A másik fórum tele van pl. STM armekkel, pedig a NUVOTON
legegyszerűbb processzora felülmúlja a PIC-ek többségét mind árban , mind tudásban.
Én procit csakis ASM-ban programozok, tehát ha van vállalkozó szívesen váltanék szót erről.
(#) Peter65 válasza giskard hozzászólására (») Júl 2, 2016 /
 
Szia!
Engem is érdekel a téma, de egyenlőre csak tájékozódom, utána olvasgatok.
A másik fórumban is volt szó többször az assembler programozásról ARM-ek processzorokhoz. Ha végigolvasod azt a nem kevés hozzászólást, láthatod, többen is képben vannak a témában.
Szerintem nem véletlenül népszerűek az STM processzorok. Ár/teljesítmény arányban én ezeket tudom a legjobbaknak, az STM8S családtól a legnagyobb ARM processzorokig. Kínában szerintem ezeket használják leggyakrabban, és a nagy tömegtermelés miatt olyan olcsóak. A fejlesztő eszközeik is filléresek.
Ránéztem most a Novuton termékeire, amik hasonlóan jóknak tűnnek. Te milyen beszerzési forrásról tudsz?
(#) giskard válasza Peter65 hozzászólására (») Júl 3, 2016 /
 
Először Atmel AT89c2051-esekkel kezdtem. Aztán ár miatt áttértem a PIC-ekre. A múltkorában véletlenül
akadtam rá a Chipcad kínálatában erre: M052LAN ARM Cortex-M0, 32bit, -40 to 105 C, 8K Flash, 4K SRAM, UART, SPI, I2C, ADC, PWM, EBI , 310 HUF (és akkor még olcsóbb is volt, valamint ez a tudás már rengeteg feladathoz elég).
Szemem felcsillant, gondoltam sitty-sutty áttérek ezekre. Sajnos a sitty-sutty nem megy ilyen könnyen. Utánanéztem mi fán is teremnek ezek a procik. Először is minden program C-ben van.(én idegenkedek a C-től, némi gögyögős Delphi után egyelőre nem tudom megszokni ezeket: {} a begin end helyett (talán minden ilyen: { után teszek egy begint (Hi))).
Aztán a fejlesztőkörnyezet. A CooCox jónak tűnik (mivel ingyenes), de nem nagyon támogatja az asm-t.
A Keil támogatja, de nem ingyenes. Az az ötletem támadt, hogy a Keil demóiból valahogy kifilézem az asm-t.
Fejlesztő panelt gyártottam magamnak.
Jelenleg itt tartok, ha valamit csinálnom kell, még mindig a PIC-hez kell nyúlnom (affene).
A hozzászólás módosítva: Júl 3, 2016
(#) tarpad válasza giskard hozzászólására (») Júl 3, 2016 /
 
Mennyire bonyolult dolgokat csinálsz assemblyben? ARM platformnak általában már nem asm-el esik neki az ember. Odáig oké, hogy egy-két dolgot, amit nagyon fontos erőforrás kímélően megoldani azt kihozod asm-ből, dehogy mindent?
(#) giskard válasza tarpad hozzászólására (») Júl 4, 2016 /
 
Ezt nem tudom megítélni (egyrészt nem ismerem más munkáit, de nyilván nem led villogtatásról van szó (bár volt egy 2x2 méteres led mátrix kijelző is)). Mindenesetre 8 k-ba még mindig belefértem.
Szeretem az asm-t, a C-t meg nem.
(bárcsak az arm-mel már a led villogtatásnál tartanék)
A hozzászólás módosítva: Júl 4, 2016
(#) bbalazs_ válasza giskard hozzászólására (») Júl 4, 2016 /
 
En is feliratkoznek az erdeklodok koze, jo kis procinak nez ki, az USB-n kivul minden benne, ami csak kell. Az ara valoban verhetetlen. Talan egy picivel tobb laba lehetne, de biztosan lehet olyat is kapni.
Az okom ugyanaz, mint neked, ASM fan vagyok es a 32 bites PIC-ek mar nem tetszenek.
Allitolag a Silicon Image keszit valamifele forditokat ehhez.
(#) icserny válasza giskard hozzászólására (») Júl 4, 2016 /
 
Idézet:
„A Keil támogatja, de nem ingyenes.”

A Keil MDK_Lite ingyenes, 32 K kódméret korlátozással. Ez a 32K pont négyszerese a M052LAN ARM Cortex-M0 8 K Flash méretének, tehát bőven megfelel.
(#) Zsora válasza giskard hozzászólására (») Júl 4, 2016 /
 
Én is nézegettem már hogy az ismertebb 32-bites mikrovezérlők közül melyiket lehet Assemblyben jól programozni, viszont jelenleg a 16-bites PIC családnál nem találok jobbat ( de hasonlót sem) ilyen téren.
Nem tudom hogy milyen jelentős különbség van a MIPS32 és az ARM processzorok között, de így elsőre elég hasonló felépítésűnek tűnnek. A RISC utasításkészlet használata meg nem túl élvezetes - szerintem.
A hozzászólás módosítva: Júl 4, 2016
(#) rolandgw hozzászólása Júl 4, 2016 /
 
Itt egy jó irodalom a témában, de szerintem ekkora energiabefektetéssel és egy jó könyvvel C-ben is el lehet jutni alapszintre.Ezen a terepen már lehet hogy önkínzás az asm, de kinek, hogy.
(#) giskard hozzászólása Júl 4, 2016 /
 
Szerintem nem is az asm-al van itt a gond (aki foglakozott egy kicsit assembly programozással hamar beletanul (kevés utasítás, csak egy kis logika kell hozzá) hanem a proci megismerésével (NUVOTON - ról meg az adatlapon kívül alig találtam infót) és a kezdő lépésekkel. Ahogy elnéztem a fejlesztő programok egy csomó utasítást elhasználnak amíg a proci működőképes állapotba kerül. Ha ezeken átrágom magam, utána menni fog.
(No meg a fejlesztő program is belejátszik valamennyire. A PIC-et pl. azért is szeretem, mert az MPLAB annyira kézre áll nekem)
A hozzászólás módosítva: Júl 4, 2016
(#) bbalazs_ válasza giskard hozzászólására (») Júl 4, 2016 /
 
Rolandgw altal belinkelt irodalmat olvasgatva feltunt, hogy ez is mas sorrendet ker az egyes regiszterekbe/bol irashoz. Szoval ha az ember tobbfele procival dolgozik egyszerre, ohatatlanul belekeveredik es utana bogaraszhatja, hogy a latszolag jonak tuno kod hol van elrontva megis...
(#) Zsora hozzászólása Júl 5, 2016 /
 
ARM információs központ itt.
(#) Zsora hozzászólása Júl 5, 2016 /
 
Azért nagyon durva (összetett) utasítások vannak.
Hatékonynak tűnik.

  1. AND     R9, R2, #0xFF00
  2. ORREQ   R2, R0, R5
  3. ANDS    R9, R8, #0x19
  4. EORS    R7, R11, #0x18181818
  5. BIC     R0, R1, #0xab
  6. ORN     R7, R11, R14, ROR #4
  7. ORNS    R7, R11, R14, ASR #32

Az operandusok sorrendje pont a fordítottja annak, amit megszoktam.
A hozzászólás módosítva: Júl 5, 2016
(#) giskard hozzászólása Aug 12, 2017 /
 
Nekem egy bajom van, hogy nem kapni pamutzoknit (ezt nem magyarázom, mert az irónia halála a magyarázat).
A másik bajom viszont az , hogy nem tudok ARM-et programozni assembly-ben.
A legegyszerűbb ARM-ről van szó (ami a legolcsóbb is , de tudása felülmúlja pl. a PIC-ekét)
Szóval, aki egy LED villogtatásra rá tud vezetni, azt ezentúl csak Mester-nek szólítom.
(ami van: CooCox, Keil, emBlocks, M052LAN)
(#) kapu48 válasza giskard hozzászólására (») Aug 12, 2017 /
 
Szerintem kezdjed a szakirodalom olvasásával.

Ezen az oldalon találsz 3 PDf-et: Nuvoton M052LAN

Data Sheets
Generic User Guide
953,546 bytes
Reference Manual
3,584,751 bytes
Technical Reference Manual
472,236 bytes
A hozzászólás módosítva: Aug 12, 2017
(#) ktamas66 válasza giskard hozzászólására (») Aug 12, 2017 /
 
Én is gondolkodom hasonlón, de STM32F0.. sorozatban gondolkodtam. Találtam is hozzá ledvillogtató programot: Bővebben: Link
(#) giskard válasza ktamas66 hozzászólására (») Aug 16, 2017 /
 
Ha tudnék arm-et asm ban programozni leváltanám az összes PIC-et (azokat is asm-ban programozom), miért ? mert egy nagyobb tudású procihoz jutnék olcsóbban.
A c akármilyen nyelvet per pill nem akarom megtanulni (elég a Delphi hogy egy programozási nyelv kommunikáljon egy kúlső eszközzel (egy nagy tudor Java-s pl. ezt nem tudta megoldani))
Tul. kép tudok arm-et asmban programozni (minden utasítást és szintaktikát ismerek), csak elindulni nem tok.
(#) Peter65 válasza giskard hozzászólására (») Aug 16, 2017 /
 
Kb. 1 éve én is teszek erőfeszítéseket, de egyenlőre még nem értem célba.
Egyrészt rengeteg az olvasni való.
Másrészt kínlódok a fejlesztő környezetekkel; a Keil nekem túl bonyolult és kódlimites, a Coocox meg néha úgy tűnik, mintha nem csinálná a dolgát. Most éppen egy újabb környezetet keresek.
Mivel az STM32-ket néztem ki, előtte még megtanultam az STM8-as család programozását. Ez könnyen ment assemblerben, az ST Visual Develop-pal (C-ben más szerint nem túl jó), de a támogatottság azért hagy kívánni valókat. A perifériák nagyon hasonlóak, vannak 16 bites utasítások, és ezek is nagyon olcsóak.
Következő: »»   1 / 1
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem