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í
×
    dnes 12:33 | Zajímavý projekt

    Workshop o umělé inteligenci v Dartmouthu proběhl před 70 lety, od 18. června do 17. srpna 1956. Dvouměsíční soustředění 6–11 informatiků, iniciované Johnem McCarthym, položilo základy oboru umělé inteligence.

    |🇵🇸 | Komentářů: 0
    dnes 03:00 | Nová verze

    Po 9 týdnech vývoje od vydání Linuxu 7.1 oznámil Linus Torvalds vydání Linuxu 7.2. Podrobný přehled novinek a vylepšení na Linux Kernel Newbies nebo LWN.net: první a druhá polovina začleňovacího okna.

    Ladislav Hagara | Komentářů: 1
    včera 18:55 | Komunita

    Debian dnes slaví 33 let. Ian Murdock oznámil vydání "Debian Linux Release" 16. srpna 1993.

    Ladislav Hagara | Komentářů: 1
    včera 04:22 | Komunita

    Probíhá hlasování o používání LLM při vývoji Debianu. Vývojáři Debianu mají na výběr 9 možností (návrhy A až H a žádný z nich).

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

    Omarchy je linuxová distribuce s dlaždicovým správcem oken Hyprland. Založena je na Arch Linuxu. Vydána byla v nové major verzi 4.0.0 - The Quattro Release. Videopředstavení na YouTube. Celý desktop shell byl přepsán do Quickshellu. Přidána byla podpora pluginů.

    Ladislav Hagara | Komentářů: 1
    15.8. 13:33 | IT novinky

    Francouzská Ústavní rada zamítla zákaz používání sociálních sítí dětem mladším 15 let. Francouzská obdoba ústavního soudu uvedla, že opatření představuje nepřiměřený zásah do svobody projevu. Francouzský parlament zákaz schválil na konci července, začít platit měl od září. Šlo o první zákaz sociálních sítí pro děti v Evropě. Členové Ústavní rady se domnívají, že ustanovení „představuje zásah, který není přiměřený, nezbytný ani

    … více »
    Ladislav Hagara | Komentářů: 1
    14.8. 16:33 | Zajímavý projekt

    Open-source trackball Ploopy Adept má novou verzi nazvanou A+. Stále jde o symetrický desktopový trackball s šasi z 3D tiskárny a firmwarem QMK. Novinkami jsou dvojice tlačítek, jimiž půjde také otáčet, a volitelná opěrka ruky. Funkcionalita firmwaru je rozšířena o gesta, vrstvy a možnost konfigurace za běhu. Schémata a kód jsou jako obvykle na GitHubu. A+ půjde předobjednat za 99 CAD (bez dopravy a cla/DPH).

    |🇵🇸 | Komentářů: 3
    14.8. 14:33 | IT novinky

    Prusa Research představil nové modely svých 3D tiskáren: Prusa XL+, CORE One+ (Gen 2) a CORE One L+.

    Ladislav Hagara | Komentářů: 1
    14.8. 13:33 | Nová verze

    Crown je multiplatformní open source herní engine. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT a GPLv3+. Byla vydána nová verze 0.64. Vyzkoušet lze online demo.

    Ladislav Hagara | Komentářů: 0
    14.8. 03:44 | Nová verze

    NVIDIA na konci ledna vydala v beta verzi nativního linuxového klienta své cloudové herní služby GeForce NOW. Včera oznámila ukončení beta verze a oficiální podporu Linuxu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (18%)
     (30%)
     (7%)
     (6%)
     (2%)
     (15%)
     (22%)
    Celkem 2406 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

    Linux Desktop, Everyday

    "freely ye have received, freely give"

     

    Ako nainštalovať ChromeOS Flex: budeš potrebovať
    Chrome prehliadač do ktorého
    nahodíš Chromebook Recovery Utility,
    cez ktorú vytvoríš si USB kľúč.

    Plasma KDE Mobile - Plasma vo vašom mobile: https://plasma-mobile.org/

    For all scenarios, why not use something old, but stable and nice? https://trinitydesktop.org/

    "Ia_Ora_Blue.kcsrc" refers to a color scheme file for the Ia Ora Blue theme, which was a default and highly popular visual style for the KDE desktop environment, specifically associated with Mandriva Linux around 2008.

    Obľubujem používanie open source aplikácii ako je Firefox, OpenOffice, LibreOffice, Inkscape, VideoLan - VLC.

    # Linux user since 1998.

    Aktuální zápisy


    Trošku zábavy s atmelom.

    20.6.2012 14:12 | Přečteno: 1666× | poslední úprava: 20.6.2012 18:52

    Takže po dlhšej dobe som oprášil programator uispmkII pre atmely ktory som si uz skor zakupil ale nejak som sa nemal k tomu aby som ho naplno vyskusal.. tentokát som skusil namiesto pisania priamo kodu v ASM skusit vyssi jazyk C .

    Ako prve som mal mensi problem s rozchodenim samotneho programatora.. co sa podarilo.

    pre ubuntu bolo potrebne pridat vynimku pre udevm konkretne zapisanim par riadkov do /etc/udev/rules.d/60-avrisp.rules

     

    SUBSYSTEM!="usb_device", ACTION!="add", GOTO="avrisp_end"


    # Atmel Corp. JTAG ICE mkII

    ATTR{idVendor}=="03eb", SYSFS{idProduct}=="2103", MODE="660", GROUP="dialout"

    # Atmel Corp. AVRISP mkII

    ATTR{idVendor}=="03eb", SYSFS{idProduct}=="2104", MODE="660", GROUP="dialout"

    # Atmel Corp. Dragon

    ATTR{idVendor}=="03eb", SYSFS{idProduct}=="2107", MODE="660", GROUP="dialout"


    LABEL="avrisp_end"

     

    potom restart udev

    a nasledne pokus o naprogramovanie

    pripajam jeden tutorial a makefile

     

    #include <avr/io.h>     
    #include <util/delay.h>

    // Function prototypes
    int     wait_one_second(void);
    int     set_PORTB_bit(int position, int value);

    int main(void)

    {

    DDRB = 0x0F;

    PORTB |= 0b00001111;

    // Set up a forever loop using 'C'-style for loop
    // i.e. loop while '1' equals '1'
    uint8_t i = 0;

    for ( ; 1==1 ; )
    {
    set_PORTB_bit(i, 0);    // Clear bit
    wait_one_second();
    set_PORTB_bit(i, 1);    // Set bit
    wait_one_second();

    i++;
    if (i==4) i=0;
    }


    return 1;
    }

    // Functions
    int wait_one_second(void)
    {
    _delay_ms(1000);
    return 1;
    }

    int set_PORTB_bit(int position, int value)
    {
    // Sets or clears the bit in position 'position'
    // either high or low (1 or 0) to match 'value'.
    // Leaves all other bits in PORTB unchanged.

    if (value == 0)
    {
    PORTB &= ~(1 << position);      // Set bit # 'position' low
    }
    else
    {
    PORTB |= (1 << position);       // Set bit # 'position' high
    }
    return 1;
    }

    -------------

    taktiez pripajam makefile

    u makefile je pridany flag -Os ktory vyrazne optimalizuje velkost kodu

     

    # AVR-GCC Makefile
    PROJECT=tutorial_1
    SOURCES=main.c
    CC=avr-gcc
    OBJCOPY=avr-objcopy
    MMCU=attiny2313

    CFLAGS= -g -Os -mmcu=$(MMCU) -Wall


    $(PROJECT).hex: $(PROJECT).out
    $(OBJCOPY) -j .text -O ihex $(PROJECT).out $(PROJECT).hex

    $(PROJECT).out: $(SOURCES)
    $(CC) $(CFLAGS) -I./ -o $(PROJECT).out $(SOURCES)

    program: $(PROJECT).hex
    avrdude -p t2313 -P usb -c avrispmkII -e -U flash:w:$(PROJECT).hex
    clean:
    rm -f $(PROJECT).o
    rm -f $(PROJECT).out
    rm -f $(PROJECT).map
    rm -f $(PROJECT).hex

           

    Hodnocení: 75 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    20.6.2012 15:20 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Trošku zábavy s atmelom.
    Proč ten for tak složitě? Jakou má výhodu 1==1 oproti true, resp. prostě 1?

    Co takhle:
    for (uint8_t i = 0; true; i++)
    {
      if (i == 4) i = 0;
    
      //...
    }
    
    20.6.2012 15:29 depka | skóre: 20 | blog: eterity
    Rozbalit Rozbalit vše Re: Trošku zábavy s atmelom.
    jeste pekneji: while (1) {}
    lukve avatar 20.6.2012 15:47 lukve | skóre: 29 | blog: lukolve | Prešov
    Rozbalit Rozbalit vše Re: Trošku zábavy s atmelom.

    jj. aj tak sa da. vie mi niekto dat nejaky tutoral na prerusenia?

    napr zeby som mohol spustit podprogram pri stisknuti napr tlacitka pripojeneho na pin 1 portu A

     

    a tiez nejaky example na prerusenie aby sa automaticky vzdycky v nejaky cas vykonal podprogram nezavisle teda aby nebolo treba nic stlacat.. napada ma vyuzitie citaca ale tak daleko som sa nedostal este

    linux user more than 20y
    20.6.2012 21:23 2012
    Rozbalit Rozbalit vše Re: Trošku zábavy s atmelom.
    Preruseni se v cecku delaji pomoci ISR, mrkni treba sem: http://mcu.cz/news.php?extend.1983.3

    u 2313 muzes preruseni pro zmenu pinu udelat pomoci PCINT, napr. pro pin3 (jeste se myslim muselo neco nastavit v nejakych registrech PCMSK apod.):
    ISR(PCINT3_vect){
    }
    Staci mit tabulky preruseni a zbytek je v datashitu procesoru. Tady mas pro ukazku preruseni a sinusovku s casovacem...
    // PROGRAM 001 C++ fast PWM pro D/A prevodnik
    // ************************************************
    // * date: 11/8/2011							  *
    // * verze: 1.0 								  *
    // * for AVR: 2313 								  *
    // * clock frequency: 1MHz 						  *
    // ************************************************
    
    // Program Function: 
    // _____________________________________________________________________
    //
    // Program mel puvodne demonstrovat D/A prevodnik z jednoho vystupniho
    // pinu pomoci fast PWM, ta cte hodoty preklapecich urovni z z tabulky,
    // pomale... vylepsit!
    // _____________________________________________________________________
    
    
    // ==================================================================
    // 							DEKLARACE
    
    
    
    #include avr\io.h>
    #include avr\interrupt.h>
    #include avr\pgmspace.h>
    
    
    const uint8_t sinewave16[] PROGMEM= 		//i hodnot (bez i 256)
    {
    64,88,109,123,127,123,109,88,
    64,39,19,5,0,5,19,39,
    };
    
    
    uint8_t i=0;
    uint8_t j=0;
    
    ISR(TIMER1_COMPA_vect){
    	OCR1A=pgm_read_byte(&sinewave16[i]);
       	i++;
    	if (i >= 0x10){
    		i=0;
    	}
    }
    
    
    // ==================================================================
    // 							HLAVNI PROGRAM
    
    int main(void) {
    	
    	DDRD=0x80;		// piny PortuD jako vstupni
    	PORTD=0xFF;		// povolení internich pull-up rezistoru
    	DDRB=0xFF;		// nastaveni portuB jako vystup
    
    
    	OCR1A=10;		// nastaveni hodnoty OCR1A
    	TCCR1A=0x91;	// porovnání vystupu OC1RA s 8bit neinvertovanou PWM?
    	TCCR1B=0x01;	// casovac bez preddelicky?
    	TIMSK=0x50;		// zapnuti porovnavani vystupu preruseni pro OCR1A?
    
    
    sei();				// enable global interrups
        while (1) {		// loop for ever. Interrupts will do the job.
        }
    }
    
    Josef Kufner avatar 20.6.2012 17:48 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Trošku zábavy s atmelom.
    A nebo prostě:
    for (;;) {
      // ...
    }
    Hello world ! Segmentation fault (core dumped)
    Pavel Stárek avatar 21.6.2012 13:05 Pavel Stárek | skóre: 43 | blog: Tady bloguju já :-) | Kolín
    Rozbalit Rozbalit vše Re: Trošku zábavy s atmelom.
    +1
    Kdo chce, hledá způsob; kdo nechce, hledá důvod.
    Bedňa avatar 20.6.2012 18:45 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Trošku zábavy s atmelom.
    Ten kód by sa hodil dať medzi značky <pre>kód</pre>
    KERNEL ULTRAS video channel >>>
    lukve avatar 20.6.2012 18:53 lukve | skóre: 29 | blog: lukolve | Prešov
    Rozbalit Rozbalit vše Re: Trošku zábavy s atmelom.

    linux user more than 20y
    Bedňa avatar 20.6.2012 22:56 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Trošku zábavy s atmelom.
    Tak už to vyzerá OK ;-)
    KERNEL ULTRAS video channel >>>
    21.6.2012 08:37 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Trošku zábavy s atmelom.
    Hlavně by to chtělo vyhodit ty značky <h3>, ten kód určitě nejsou nadpisy.
    lukve avatar 20.6.2012 18:55 lukve | skóre: 29 | blog: lukolve | Prešov
    Rozbalit Rozbalit vše Re: Trošku zábavy s atmelom.

    este by to chcelo aby som nemusel stale pouzivat sudo ak chcem zapisat program.

    linux user more than 20y
    Josef Kufner avatar 21.6.2012 09:20 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Trošku zábavy s atmelom.
    Nastav si práva k zařízení v /dev (pokud je dynamicky vutvářené udevem, doplň jeho konfiguraci).
    Hello world ! Segmentation fault (core dumped)
    20.6.2012 21:37 Václav Vanc | skóre: 14
    Rozbalit Rozbalit vše Re: Trošku zábavy s atmelom.
    Existuje v dnešní době nějaké IDE pod Linux co podporuje debugging přes JTAG? Byl jsem nucen zakotvit u windows a Atmel Studia. :-/
    lukve avatar 20.6.2012 22:28 lukve | skóre: 29 | blog: lukolve | Prešov
    Rozbalit Rozbalit vše Re: Trošku zábavy s atmelom.

    uf dufam ze ti niekto tuna z ludi na fore odpovie .. moj mkII nema podporu pre debuging tusim

    linux user more than 20y
    20.6.2012 22:56 Václav Vanc | skóre: 14
    Rozbalit Rozbalit vše Re: Trošku zábavy s atmelom.
    AVRISP je jen na programování, mnohdy to stačí. (Debug se dá řešit přes blikající LEDku nebo posíláním zpráv přes seriák do počítače) Někdy se ale hodí krokování a mít možnost koukat jak se mění registy - ušetřilo mi to už hodiny práce... :)
    lukve avatar 20.6.2012 22:30 lukve | skóre: 29 | blog: lukolve | Prešov
    Rozbalit Rozbalit vše Re: Trošku zábavy s atmelom.

    ak sa ta smiem opytat aku verziu AVR studia pouzivas? ja som si vo winxp nainstaloval este tu staru klasicku 4ku lebo ta nova uz je moc zlozita postavena na Visual Studiu

    linux user more than 20y
    20.6.2012 22:49 Václav Vanc | skóre: 14
    Rozbalit Rozbalit vše Re: Trošku zábavy s atmelom.
    Používám verzi 6 (teď se to jmenuje Atmel studio, protože to už podporuje i ARM). Pravda, že je to balast postavenej na .NETu, ale stačí to nainstalovat a "funguje to" (Mohlo by to teda být o něco rychlejší). Jako debugger mam JTAGICE 3, (ten nejlevnější debugger od Atmelu po Dragonovi, kterej už mi několikrát shořel :-P) ani nevim jestli už má podporu v AVRICE.

    Založit nové vláknoNahoru

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