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 01:00 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 19:55 | IT novinky

    Intel na veletrhu Computex 2024 představil (YouTube) mimo jiné procesory Lunar Lake a Xeon 6.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | IT novinky

    Na blogu Raspberry Pi byl představen Raspberry Pi AI Kit určený vlastníkům Raspberry Pi 5, kteří na něm chtějí experimentovat se světem neuronových sítí, umělé inteligence a strojového učení. Jedná se o spolupráci se společností Hailo. Cena AI Kitu je 70 dolarů.

    Ladislav Hagara | Komentářů: 0
    včera 13:22 | Nová verze

    Byla vydána nová verze 14.1 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 12:55 | Zajímavý software

    Společnost Kaspersky vydala svůj bezplatný Virus Removal Tool (KVRT) také pro Linux.

    Ladislav Hagara | Komentářů: 3
    včera 12:33 | Nová verze

    Grafický editor dokumentů LyX, založený na TeXu, byl vydán ve verzi 2.4.0 shrnující změny za šest let vývoje. Novinky zahrnují podporu Unicode jako výchozí, export do ePub či DocBook 5 a velké množství vylepšení uživatelského rozhraní a prvků editoru samotného (např. rovnic, tabulek, citací).

    Fluttershy, yay! | Komentářů: 0
    včera 12:00 | Nová verze

    Byla vydána (𝕏) nová verze 7.0 LTS open source monitorovacího systému Zabbix (Wikipedie). Přehled novinek v oznámení na webu, v poznámkách k vydání a v aktualizované dokumentaci.

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

    Organizace Apache Software Foundation (ASF) vydala verzi 22 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 0
    3.6. 17:00 | IT novinky

    Společnost AMD na veletrhu Computex 2024 představila (YouTube) mimo jiné nové série procesorů pro desktopy AMD Ryzen 9000 a notebooky AMD Ryzen AI 300.

    Ladislav Hagara | Komentářů: 0
    3.6. 16:22 | Nová verze

    OpenCV (Open Source Computer Vision, Wikipedie), tj. open source multiplatformní knihovna pro zpracování obrazu a počítačové vidění, byla vydána ve verzi 4.10.0 . Přehled novinek v ChangeLogu. Vypíchnout lze Wayland backend pro Linux.

    Ladislav Hagara | Komentářů: 0
    Rozcestník

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

    25.7.2008 23:00 | Přečteno: 4897× | 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.