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 17:22 | Pozvánky

Spolek OpenAlt zve příznivce otevřeného přístupu na 165. brněnský sraz, který proběhne v pátek 21. června od 18:00 hodin ve Sport Centru Srbská (Srbská 4). Od 19:00 je pro zájemce zamluveno hřiště na plážový volejbal.

Ladislav Hagara | Komentářů: 0
dnes 16:11 | IT novinky

Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem zůstává superpočítač Summit. Český superpočítač Salomon klesl na 282. místo. Další přehledy a statistiky na stránkách projektu. V aktuálním žebříčku GREEN500 (GFlops/watts) obsadil superpočítač Summit 3. místo.

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

Byla vydána OpenMandriva Lx 4.0. Nejnovější verze této linuxové distribuce přináší například Linux 5.1.9, KDE Plasma 5.15.5, KDE Frameworks 5.58.0, KDE Applications 19.04.1, Qt Framework 5.12.3, systemd 242, LLVM/clang 8.0.1 a Java 12. Podrobnosti v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
15.6. 16:55 | Bezpečnostní upozornění

V editorech Vim a Neovim byla nalezena a opravena bezpečnostní chyba CVE-2019-12735. Funkce modeline umožňovala při otevření souboru spustit libovolný příkaz. Chyba byla opravena v upstream verzích Vim 8.1.1365 a Neovim 0.3.6.

Ladislav Hagara | Komentářů: 0
14.6. 23:55 | Nová verze

Byla vydána nová stabilní verze 2.9 svobodné decentralizované mikroblogovací platformy a sociální sítě podobné Twitteru Mastodon (Wikipedie). Přináší především jednosloupcový layout. Detailní přehled novinek na GitHubu. Projekt lze podpořit na Patreonu. Aktuálně má přislíbeno 4 761 dolarů měsíčně.

Ladislav Hagara | Komentářů: 0
14.6. 16:11 | Nová verze

Byla vydána první stabilní verze 1.0 decentralizovaného protokolu pro komunikaci v reálném čase Matrix (Wikipedie) a také verze 1.0 jeho referenční implementace Synapse. Současně byla oficiálně představena zastřešující nadace Matrix.org Foundation. Protokol Matrix je využíván například komunikátorem Riot.

Ladislav Hagara | Komentářů: 5
13.6. 13:33 | IT novinky

Microsoft oznámil, že v květnu představený Windows Subsystem for Linux (WSL) ve verzi 2 s jádrem Linux 4.19 je již k dispozici pro uživatele zapojené do programu Windows Insider. Podrobnosti v aktualizované dokumentaci.

Ladislav Hagara | Komentářů: 72
13.6. 09:55 | Nová verze

Byla vydána nová stabilní verze 2.10.12 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP. Přehled novinek i s náhledy v oznámení o vydání a v souboru NEWS na GitLabu. Zmínit lze vylepšení nástroje Křivky (YouTube) nebo podporu vrstev při exportu do formátu TIFF.

Ladislav Hagara | Komentářů: 0
12.6. 23:11 | Nová verze

Byla vydána nová major verze 2.0 (aktuálně 2.0.3) svobodného multiplatformního BitTorrent klienta Deluge (Wikipedie). Přehled novinek v poznámkách k vydání. Zdůraznit lze migraci na Python 3 a GTK 3.

Ladislav Hagara | Komentářů: 4
12.6. 22:33 | Komunita

CERN (Evropská organizace pro jaderný výzkum) představil svůj projekt MAlt (Microsoft Alternatives). Cílem projektu je nahradit používaný software od Microsoftu alternativami. Důvod je nasnadě. Pro Microsoft přestal být CERN akademickou institucí a poplatky za licence tak od března letošního vzrostly více než desetinásobně [reddit].

Ladislav Hagara | Komentářů: 9
Jakou verzi jádra Linux typicky používáte na osobním počítači?
 (17%)
 (21%)
 (55%)
 (3%)
 (4%)
Celkem 266 hlasů
 Komentářů: 8, poslední 15.6. 18:14
Rozcestník

Trošku zábavy s atmelom.

20.6.2012 14:12 | Přečteno: 1211× | 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 oryctolagus | 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) {}
Vesel avatar 20.6.2012 15:47 Vesel | skóre: 27 | blog: Lukove | 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

Donate Bitcoins: 14mXEWw9tgTtRT35RSvLL27XSpyety8x3N
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: 68
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 >>>
Vesel avatar 20.6.2012 18:53 Vesel | skóre: 27 | blog: Lukove | Prešov
Rozbalit Rozbalit vše Re: Trošku zábavy s atmelom.

Donate Bitcoins: 14mXEWw9tgTtRT35RSvLL27XSpyety8x3N
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.
Vesel avatar 20.6.2012 18:55 Vesel | skóre: 27 | blog: Lukove | 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.

Donate Bitcoins: 14mXEWw9tgTtRT35RSvLL27XSpyety8x3N
Josef Kufner avatar 21.6.2012 09:20 Josef Kufner | skóre: 68
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. :-/
Vesel avatar 20.6.2012 22:28 Vesel | skóre: 27 | blog: Lukove | 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

Donate Bitcoins: 14mXEWw9tgTtRT35RSvLL27XSpyety8x3N
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... :)
Vesel avatar 20.6.2012 22:30 Vesel | skóre: 27 | blog: Lukove | 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

Donate Bitcoins: 14mXEWw9tgTtRT35RSvLL27XSpyety8x3N
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.