abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 04:44 | Nová verze

    Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 140 (pdf) a HackSpace 77 (pdf).

    Ladislav Hagara | Komentářů: 0
    dnes 01:00 | Nová verze

    ESPHome, tj. open source systém umožňující nastavovat zařízení s čipy ESP (i dalšími) pomocí konfiguračních souborů a připojit je do domácí automatizace, například do Home Assistantu, byl vydán ve verzi 2024.4.0.

    Ladislav Hagara | Komentářů: 0
    včera 22:11 | IT novinky Ladislav Hagara | Komentářů: 0
    včera 20:55 | Nová verze

    Neziskové průmyslové konsorcium Khronos Group vydalo verzi 1.1 specifikace OpenXR (Wikipedie), tj. standardu specifikujícího přístup k platformám a zařízením pro XR, tj. platformám a zařízením pro AR (rozšířenou realitu) a VR (virtuální realitu). Do základu se z rozšíření dostalo XR_EXT_local_floor. Společnost Collabora implementuje novou verzi specifikace do platformy Monado, tj. open source implementace OpenXR.

    Ladislav Hagara | Komentářů: 2
    včera 17:22 | Nová verze

    Byla vydána nová verze 0.38.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 4.4 nebo novější a také libplacebo 6.338.2 nebo novější.

    Ladislav Hagara | Komentářů: 1
    včera 17:11 | Nová verze

    ClamAV (Wikipedie), tj. multiplatformní antivirový engine s otevřeným zdrojovým kódem pro detekci trojských koní, virů, malwaru a dalších škodlivých hrozeb, byl vydán ve verzích 1.3.1, 1.2.3 a 1.0.6. Ve verzi 1.3.1 je mimo jiné řešena bezpečnostní chyba CVE-2024-20380.

    Ladislav Hagara | Komentářů: 1
    včera 12:11 | IT novinky

    Digitální a informační agentura (DIA) oznámila (PDF, X a Facebook), že mobilní aplikace Portál občana je ode dneška oficiálně venku.

    Ladislav Hagara | Komentářů: 8
    včera 05:11 | Komunita

    #HACKUJBRNO 2024, byly zveřejněny výsledky a výstupy hackathonu města Brna nad otevřenými městskými daty, který se konal 13. a 14. dubna 2024.

    Ladislav Hagara | Komentářů: 2
    17.4. 17:55 | IT novinky

    Společnost Volla Systeme stojící za telefony Volla spustila na Kickstarteru kampaň na podporu tabletu Volla Tablet s Volla OS nebo Ubuntu Touch.

    Ladislav Hagara | Komentářů: 3
    17.4. 17:44 | IT novinky

    Společnost Boston Dynamics oznámila, že humanoidní hydraulický robot HD Atlas šel do důchodu (YouTube). Nastupuje nová vylepšená elektrická varianta (YouTube).

    Ladislav Hagara | Komentářů: 1
    KDE Plasma 6
     (68%)
     (10%)
     (2%)
     (20%)
    Celkem 557 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Začátky s assemblerem (ATmega8) I - první program

    25.7.2008 23:00 | Přečteno: 4892× | Jednočipy

    Po jednočipech pošilhávám dobře víc jak rok. Začalo to PICkama, ale ty poměrně drahé programátory mně dost odrazovaly a tulení choroba bránila v bastlení vlastního. Letos jsem objevil Atmely a zjistil že se dají programovat pomocí LPT kabelu...

    Tak jsem si zakoupil dvě Megy8L a pustil se do sestrojení kabelu. Asi po týdnu jsem zanechal pokusů o programování s tím že na mojem počítači to prostě takto jednoduše nepůjde.

    Už jsem byl rozhodnutý pořídit ponyprog, ale na jedné diskuzi nebo kde jsem zavadil o kontakt na borca který vyrábí USBprog. Ten mi před pár dny přišel a já jsem začal zkoušet programy na ostro.

    Psaní programů v céčku je hezké, ale mně nějak víc padl do oka assembler. Bohužel to že je k dispozici "orginál" překladač céčka se projevuje nedostatkem návodů právě na ten assembler. v tomto ohledu se jako užitečné jeví seriály na programujte.com a taky stránky avr-asm-tutorial.net(bohužel anglicky)

    Jako první program jsem se pokusil napsat blikač. Je to vlastně zpožďovací podprogram, +úvodní řádky které se starají o správné nastavení výstupů a dva příkazy na změnu stavu bitu na kterém je připojena LEDka.

    Vercajk:

    Určitě se hodí soubor s lidským "pojmenováním" jednotlivých bitů, portů, a registrů. Soubor m8def.inc. Program překládám pomocí avra (určitě najdete v repositáři).

    Zdroják:

    	.include "m8def.inc"
    	.def w=r16
    
    	rjmp main
    
    main:	LDI w,$FF 
    	out DDRB,w 	;učinit celý portB výstupním
    
    	LDI W,LOW(ramend) ;natáhnout konec ram
    	out SPL,W	;vložit adresu do stackpointeru
    	LDI W,HIGH(ramend)
    	out SPH,W
    
    
    	ldi r18,1	;natáhnout jedničku do r18
    	sbi portb,0
    
    ;========	
    
    start:	SBI portb,0
    	rcall cekej
    
    	CBI portb,0
    	rcall cekej
    
    	rjmp start
    
    ;========
    cekej:	CLR r20
     	CLR r21		;nastavit na nulu
    wait: 	add r21,r18	;přičteme 1
    
    	nop
    	brcc wait	;skočí je li carry v nule
    
    
    	add r20,r18	;jedničku k béčku
    	brcc wait
    	ret		;návrat z podprogramu
    ;========

    Závěr:

    První problém byl že jsem se snažil cpát do příkazů MOV a ADD přímo čísla což nejde.Vůbec nejvíc mně zatopila skutečnost, že podprogram musí být až na konci programu. Na to nějak avra neupozorní chybovým hlášením.
    Při interním oscilátoru megy nastaveném na 1MHz ledka bliká s periodou cca půl sekundy.

    Je to naprogramované dost prasácky. Hlavně registry by si měl člověk nějak normálně pojmenovat. R20 a R21 se člověk splete ani neví jak. Pracovní registr (R16) je označen jako W po vzoru PICek.

           

    Hodnocení: 75 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    26.7.2008 00:10 skywaker
    Rozbalit Rozbalit vše Re: Začátky s assemblerem (ATmega8) I - první program
    Velmi dobra kniha je "Mikrokontrolery ATMEL AVR ASSEMBLER od Vladimira Vanu" len odporucujem. prevedie zakladami asemblera
    26.7.2008 10:40 ondracch | skóre: 19 | blog: Mozková kreč
    Rozbalit Rozbalit vše Re: Začátky s assemblerem (ATmega8) I - první program
    Podobnou knihu od Vladimíra Váňi mám tady v na polici a vůbec jí nepoužívám, protože jsem přešel na Céčko. Kdyby měl někdo zájem, můžeme se domluvit na nějaké sympatické ceně. Pro přesnost je to tahle.
    Proč myslíš, že nemůžeš žít jinak? Pořád Tvořím...
    Konqui avatar 26.7.2008 12:49 Konqui | skóre: 18 | blog: Konqui | Rožnov pod Radhoštěm
    Rozbalit Rozbalit vše Re: Začátky s assemblerem (ATmega8) I - první program
    Na časování je lepší použít čítač/časovač a využívat přerušení. Mám i nějaký program kterým se dá vypočítávat nastavení registrů na zvoleném čítači podle frekvence mikrokontroléru
    Open/save dialogy z GTK+ jsou nejkřiklavější ukázkou toho nejdebilnějšího software, co vůbec může existovat.
    28.7.2008 23:46 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Začátky s assemblerem (ATmega8) I - první program
    Místo add r20, r18, které plýtá registrem, lze použít subi r20,0xff
    Vůbec nejvíc mně zatopila skutečnost, že podprogram musí být až na konci programu. Na to nějak avra neupozorní chybovým hlášením.
    Nemusí. Ale když ho dáš na začátek, musíš ho přeskočit.

    A osobně nemám rád avra, můj pokus s ním něco přeložit se ještě nikdy nepovedl. Radši používám AvrAssebler pod wine.
    Quando omni flunkus moritati
    10.12.2017 11:09 mark12
    Rozbalit Rozbalit vše Re: Začátky s assemblerem (ATmega8) I - první program
    After all, they have a bigger size and always folded. You need to include the logo of the business as well.Good graphics are essential for the success of flyers. It should be accompanied by the name of your company. fiftyfive print

    Založit nové vláknoNahoru

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