Programovani ATMEGA8 - 16PU
Moderátor: Moderátoři
-
Morpheus222
Programovani ATMEGA8 - 16PU
Vyrobil sem si programovaci kabel podle jejich navodu a nahral program do cipu, to probehlo (aspon myslim) v poradku ale LED neblika jenom sviti a ja nevim kde muze byt chyba a jak ji odstranit. Prosim poradte jak toto vyresit moc dekuji za odpovedi (jakekoliv protoze toto je muj prvni pokus o programovani )
-
Morpheus222
-
Jak21
-
Morpheus222
v prikazovem radku prikaz make load
a tohle je vypis
avrdude -p m8 -c stk200 -U flash:w:blink.hex
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.00s
avrdude: Device signature = 0x1e9307
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file "blink.hex"
avrdude: input file blink.hex auto detected as Intel Hex
avrdude: writing flash (108 bytes):
Writing | ################################################## | 100% 0.06s
avrdude: 108 bytes of flash written
avrdude: verifying flash memory against blink.hex:
avrdude: load data flash data from input file blink.hex:
avrdude: input file blink.hex auto detected as Intel Hex
avrdude: input file blink.hex contains 108 bytes
avrdude: reading on-chip flash data:
Reading | ################################################## | 100% 0.05s
avrdude: verifying ...
avrdude: 108 bytes of flash verified
avrdude: safemode: Fuses OK
avrdude done. Thank you.
-
Jak21
Možná že v tom případě není kombinace Winavr-Avrdude nejšťastnější.
Např kód ve vašem programu:
Kód: Vybrat vše
void delay(unsigned int num)
{
unsigned int i,j;
for (j = 0; j < 1000; j++)
for (i = 0; i < num; i++)
;
}bude pravděpodobně vyřazen pokud ve Winavr zvolíte optimizaci OS.
(Optimizátor totiž usoudí, že tato funkce nic rozumného nedělá a
proto ji vynechá).
Jako programátor(software) bych použil raději Ponyprog.
Podívejte se na mé stránky
http://www.mp222.wz.cz a pokud budete mít nějaké dotazy, napište na email tam uvedený. Rád je zodpovím.
http://www.brischalle.de/ a funguje bez problému.
-
Morpheus222
V programu Ponyprog nejde nastavit muj cip (ATMEGA8 - 16PU nebo jsem to nenasel).
Proto jsem zmenil kod na
Kód: Vybrat vše
{
unsigned int j,k;
for (j = 0; j < 300; j++)
for (k = 0; k < 300; k++)
PORTB &= ~(_BV(PB0));
unsigned int i,o;
for (i = 0; i < 300; i++)
for (o = 0; o < 300; o++)
PORTB |= _BV(PB0);
}
a LED zacala blikat.
Takze potrebuju jenom nastavit Winavr-Avrdude (ale nevim jak) aby z kodu nic nevynechaval a fungovala i puvodni verze kde se vola podprogram.
-
Morpheus222
-
SvetrP
-
SvetrP
tím mfile se rozumí makefile?
A přepsat mám z tohoto původního makefile..(vybírám pár řádku)
PRG = blink
OBJ = blink.o
MCU_TARGET = atmega8
OPTIMIZE = -O2
na tohle:
PRG = blink
OBJ = blink.o
MCU_TARGET = atmega8
OPTIMIZE = nissi
?
Nebo nějak podobně?
Prosím o radu...
děkuji
Jak21 píše:Jaký software jste použil pro zapsání programu do čipu?
Pro rychlý test zapište nějaký krátký textový soubor.
Při čtení z čipu musíte dostat stejný text.
Ako ?
Úspěch je špatný učitel. Kvůli němu si chytří lidé myslí, že nemohou prohrát. (Bill Gates)