Vítejte na Elektro Bastlírn?
Nuke - Elektro Bastlirna
  Vytvořit účet Hlavní · Fórum · DDump · Profil · Zprávy · Hledat na fóru · Příspěvky na provoz EB

Vlákno na téma KORONAVIRUS - nutná registrace


Nuke - Elektro Bastlirna: Diskuzní fórum

 FAQFAQ   HledatHledat   Uživatelské skupinyUživatelské skupiny   ProfilProfil   Soukromé zprávySoukromé zprávy   PřihlášeníPřihlášení 

Polský programátor z GME a Atmel Studio
Jdi na stránku Předchozí  1, 2, 3, 4, 5  Další
 
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Programování PIC, ATMEL, EEPROM a dalších obvodů
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
FHonza



Založen: Nov 20, 2012
Příspěvky: 1453
Bydliště: Praha

PříspěvekZaslal: po říjen 10 2016, 19:28    Předmět: Citovat

Nehledal bych chybu v Atmel Studiu, bude mezi programátorem a programovaným MCU. Programátor nedokáže komunikovat s MCU. Buď je rychlost MCU a programátoru významně rozdílná, nebo MCU vůbec neběží. Nejsou náhodou nastavené pojistky na MCU tak, že je potřeba externí krystal ?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Mara88



Založen: Sep 30, 2016
Příspěvky: 38
Bydliště: Brno

PříspěvekZaslal: po říjen 10 2016, 20:17    Předmět: Citovat

takže mám zkusit na pb6 a 7 připojit krystal? jinak mám toto zapojení připojené natvrdo na usbasp


AVR9.png
 Komentář:

Stáhnout
 Soubor:  AVR9.png
 Velikost:  34.2 kB
 Staženo:  77 krát

Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
FHonza



Založen: Nov 20, 2012
Příspěvky: 1453
Bydliště: Praha

PříspěvekZaslal: po říjen 10 2016, 20:54    Předmět: Citovat

Připoj krystal, nezapomeň na 2x 22pF k němu. Ještě bych na Reset dal pull-up odpor cca 10k.

Byl ten procesor nový ? Z výroby by měl být nastaven na interní oscilátor s předděličkou.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Mara88



Založen: Sep 30, 2016
Příspěvky: 38
Bydliště: Brno

PříspěvekZaslal: po říjen 10 2016, 21:14    Předmět: Citovat

Ano je nový, dá se nějak poznat, jestli je funkční? Ten krystal může být jakýkoliv?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
mtajovsky



Založen: Sep 19, 2007
Příspěvky: 3697
Bydliště: Praha

PříspěvekZaslal: po říjen 10 2016, 23:50    Předmět: Citovat

Defaultní programovací frekvence USBasp je 375 kHz. Protože maximální programovací frekvence čipu je 1/4 hodin a procesory se defaultně dodávají s nastaveným vnitřním oscilátorem 8MHz a se zapnutým děličem hodin 8 (nastaveno CLOCKDIV8), bude maximální frekvence pak jen 250 kHz.

Programovací frekvenci USBasp je možno snížit pomocí přepínače -B<usec>, kde usec je počet mikrosekund periody programovacího taktu. Obvykle se používá -B5 nebo spolehlivěji -B12 a dokonce -B60.

Předpokládá se, že firmware USBasp je novějšího typu, které umí zpracovat volbu -B. Vzpomínaná hláška:

avrdude: warning: cannot set sck period. please check for usbasp firmware update.

znamená, že to firmware neumí a je potřeba jeho update.

Pokud je procesor nastaven na vyšší frekvenci hodin, pak programování proběhne i při defaultním nastavení USBasp. Varování o nemožnosti přenastavit takt USBasp se pak může ignorovat pokud to programovací prostředí dovolí a operaci úspěšně dokončit (Khazama). Atmel Studio ani Arduino to nedovoluje.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
Mara88



Založen: Sep 30, 2016
Příspěvky: 38
Bydliště: Brno

PříspěvekZaslal: út říjen 11 2016, 11:26    Předmět: Citovat

tento přepínač -B<usec> najdu kde? Prosím polopatěVery Happy
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
mtajovsky



Založen: Sep 19, 2007
Příspěvky: 3697
Bydliště: Praha

PříspěvekZaslal: út říjen 11 2016, 19:27    Předmět: Citovat

"přepínač" není žádný fyzický elektrický přepínač. Zde je to hantýrka pro parametr v příkazovém řádku nebo v datech zasílaného povelu. Když si spustíte například avrdude, tak dostanete nápovědu:
>avrdude

Usage: avrdude [options]
Options:
-p <partno> Required. Specify AVR device.
-b <baudrate> Override RS-232 baud rate.
-B <bitclock> Specify JTAG/STK500v2 bit clock period (us).
-C <config-file> Specify location of configuration file.
-c <programmer> Specify programmer type.
-D Disable auto erase for flash memory
-i <delay> ISP Clock Delay [in microseconds]
-P <port> Specify connection port.
-F Override invalid signature check.
-e Perform a chip erase.
-O Perform RC oscillator calibration (see AVR053).
-U <memtype>:r|w|v:<filename>[:format]
Memory operation specification.
Multiple -U options are allowed, each request
is performed in the order specified.
-n Do not write anything to the device.
-V Do not verify.
-u Disable safemode, default when running from a s
-s Silent safemode operation, will not ask you if
fuses should be changed back.
-t Enter terminal mode.
-E <exitspec>[,<exitspec>] List programmer exit specifications.
-x <extended_param> Pass <extended_param> to programmer.
-y Count # erase cycles in EEPROM.
-Y <number> Initialize erase cycle # in EEPROM.
-v Verbose output. -v -v for more.
-q Quell progress output. -q -q for less.
-l logfile Use logfile rather than stderr for diagnostics.
-? Display this usage.


Je tam vidět i parametr -B. AtmelStudio a i jiná prostředí posílají směrem na USBasp příkaz, který nastavuje takt programování. Respektive vyvolají utilitu avrdude a předají jí příkazovou řádku obsahující parametr -B. avrdude pak odešle mimo jiné na USBasp i povel k nastavení taktu. Jestliže máte v USBasp starší firmware, tak tento starší FW povel pro nastavení taktu programování neumí. Proto vrátí chybový kód a avrdude na svém standardním výstupu vypíše inkriminovanou hlášku o nemožnosti nastavit takt. Atmel Studio tuto hlášku zachytí a zobrazí v okně pro výstup výsledků operace. A tím to, bohužel, zhaslo.

Odpomoc je, jak už jsem psal, update firmware vašeho USBasp. Nový firmware zpracuje i povel pro nastavení taktu a operace proběhne OK.

Některá prostředí, jako Khazama AVR Programmer sice také příkaz pro nastavení taktu pošlou, ale po vrácení chyby mohou pokračovat v akci, pokud operátor odklikne ignorování této chyby. Programovací takt zůstává na defaultních 375 kHz. Pokud v tomto případě byla hodinová frekvence procesoru již dříve nastavena na nějakém jiném programátoru na vyšší frekvenci, například byla vypnuta dělička 8-mi hodin procesoru, tak dojde k dokončení akce (i třeba přes několikrát opakované ignorování chyby.)
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
Mara88



Založen: Sep 30, 2016
Příspěvky: 38
Bydliště: Brno

PříspěvekZaslal: st říjen 12 2016, 8:05    Předmět: Citovat

Tak připojil jsem pull up odpor, krystal 24mhz a kondíky a pořád stejné...
mtajovsky, jak se prosím dostanu do toho nastavení? pokud jej otevřu tak se po 1s ta černá obrazovka zavře a v příkazovém řádku se k tomu také nemohu dopracovat
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
mtajovsky



Založen: Sep 19, 2007
Příspěvky: 3697
Bydliště: Praha

PříspěvekZaslal: st říjen 12 2016, 8:32    Předmět: Citovat

Nastavení se přece dělá v okně "External Tools". V poli "Command" se vloží cesta k avrdude a v poli "Arguments" pak příkazová řádka, obsahující mimo jiné i volbu -B12 (například).

Ale bez update firmware vašeho USBasp se nepohnete z místa, už se s tím smiřte.

http://shannonstrutz.com/uncategorized/setting-up-usbasp-for-use-with-atmel-studio-6
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
FHonza



Založen: Nov 20, 2012
Příspěvky: 1453
Bydliště: Praha

PříspěvekZaslal: st říjen 12 2016, 8:46    Předmět: Citovat

Doporučoval bych to zkoušet mimo Atmel Studio, k AVRdude existuje grafická nadstavba (můžu Ti to někam nahrát). A pro začátek třeba zkoušet přečíst nastavení FUSE. Podívej se, jestli opravdu jumper JP1 na Tvém programátoru je tentýž jako na schématu na který jsem sem vkládal odkaz. Mám v programátoru firmware, který nepodporuje parametr B, ale přepnutím se vždy problém vyřeší.

Další věc, která mě ještě napadla. Některé programátory mají JP3, kterým se zapíná napájení procesoru z programátoru. Takže napájení na programovaném procesoru případně zkontroluj Smile

Kdyby nic nepomohlo, tak připoj analyzátor/osciloskop alespoň na SCK a podívej se, jestli tam vůbec něco je.

Jinak pro ATMegu8 je max. hodnota krystalu 16MHz.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Mara88



Založen: Sep 30, 2016
Příspěvky: 38
Bydliště: Brno

PříspěvekZaslal: st říjen 12 2016, 10:31    Předmět: Citovat

já se tomu nebráním, opravdu:-)
Command: E:\AVRDUDE\avrdude.exe
Arguments: -p m32 -c usbasp -P usb -U flash:w:"$(ProjectDir)Debug\$(TargetName).hex":i
ted se dívám, že to je argument pro atmega32, tam ale žádná volba B není, mám teda použít argument pro atmega16
-c usbasp -p atmega16 -B12 -U flash:w:”$(ProjectDir)Debug\$(ItemFileName).hex”:i
nebo nějakej jinej?

jinak dal jsem schéma programátoru, jo JP3 mám, večer zkusímSmile



AC-PG-USBASP_03_LRG.jpg
 Komentář:

Stáhnout
 Soubor:  AC-PG-USBASP_03_LRG.jpg
 Velikost:  98.63 kB
 Staženo:  102 krát

Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
FHonza



Založen: Nov 20, 2012
Příspěvky: 1453
Bydliště: Praha

PříspěvekZaslal: st říjen 12 2016, 11:28    Předmět: Citovat

Koukám na to schéma a "slow SCK" je u Tebe JP3. Takže zkus zapnout JP3 a ne JP1 (to zapnout, aby byl procesor napájen z programátoru).

Shrnutí Tvého programátoru:
JP1: řídí zda je programovaný procesor napájen z programátoru (v originále JP3)
JP2: možnost upgradovat firmware
JP3: snižuje frekvenci SCK když je "zapnut" ˇ(v originále JP1)
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
mtajovsky



Založen: Sep 19, 2007
Příspěvky: 3697
Bydliště: Praha

PříspěvekZaslal: st říjen 12 2016, 11:44    Předmět: Citovat

Díval jsem se do zdrojáků avrdude. Hláška:

warning: cannot set sck period. please check for usbasp firmware update.

se generuje v rutině

usbasp.c@usbasp_spi_set_sck_period():

kód:
int nbytes =  usbasp_transmit(pgm, 1, USBASP_FUNC_SETISPSCK, cmd, res, sizeof(res));

if ((nbytes != 1) | (res[0] != 0)) {
    avrdude_message(MSG_INFO, "%s: warning: cannot set sck period. please check for usbasp firmware update.\n", progname);
    return -1;
}

řádek 912 - v poslední (trunk) větvi

Pokud se hláška objeví i při absenci parametru -B, tak avrdude zřejmě v tomto případě nastavuje nějakou defaultní hodnotu. Vynechání parametru -B nás potom nezachrání. Nebo je taky možnost, že Atmel Studio ten parametr samo doplní. Vyzkoušet samotné avrdude, jak doporučil FHonza.

Viz http://svn.savannah.nongnu.org/viewvc/?root=avrdude
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
Mara88



Založen: Sep 30, 2016
Příspěvky: 38
Bydliště: Brno

PříspěvekZaslal: st říjen 12 2016, 13:06    Předmět: Citovat

FHonza napsal(a):
Doporučoval bych to zkoušet mimo Atmel Studio, k AVRdude existuje grafická nadstavba (můžu Ti to někam nahrát). A pro začátek třeba zkoušet přečíst nastavení FUSE. Podívej se, jestli opravdu jumper JP1 na Tvém programátoru je tentýž jako na schématu na který jsem sem vkládal odkaz. Mám v programátoru firmware, který nepodporuje parametr B, ale přepnutím se vždy problém vyřeší.


můžu teda poprosit o tu grafickou nástavbu? přes www.uschovna.cz či nějak jinak?nevím jak je to velké...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
FHonza



Založen: Nov 20, 2012
Příspěvky: 1453
Bydliště: Praha

PříspěvekZaslal: st říjen 12 2016, 14:23    Předmět: Citovat

AVRdude i s grafickou nadstavbou. Stačí někam rozbalit, netřeba instalovat. Funkční ve Win 7, Win 10 x86 i x64, vyzkoušeno. Předpokládám, že samotný driver pro USBasp máš nainstalovaný.

Určitě ale zkontroluj ty JP1 a JP3. JP3 propojen, JP1 nesmí být volný (označení dle Tvého programátoru, ne dle původního).



avrdude-5.11-Patch7610-win32.zip
 Komentář:

Stáhnout
 Soubor:  avrdude-5.11-Patch7610-win32.zip
 Velikost:  191.25 kB
 Staženo:  104 krát

Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Zobrazit příspěvky z předchozích:   
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Programování PIC, ATMEL, EEPROM a dalších obvodů Časy uváděny v GMT + 1 hodina
Jdi na stránku Předchozí  1, 2, 3, 4, 5  Další
Strana 2 z 5

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra.
Nemůžete odpovídat na témata v tomto fóru.
Nemůžete upravovat své příspěvky v tomto fóru.
Nemůžete mazat své příspěvky v tomto fóru.
Nemůžete hlasovat v tomto fóru.
Nemůžete připojovat soubory k příspěvkům
Můžete stahovat a prohlížet přiložené soubory

Powered by phpBB © 2001, 2005 phpBB Group
Forums ©
Nuke - Elektro Bastlirna

Informace na portálu Elektro bastlírny jsou prezentovány za účelem vzdělání čtenářů a rozšíření zájmu o elektroniku. Autoři článků na serveru neberou žádnou zodpovědnost za škody vzniklé těmito zapojeními. Rovněž neberou žádnou odpovědnost za případnou újmu na zdraví vzniklou úrazem elektrickým proudem. Autoři a správci těchto stránek nepřejímají záruku za správnost zveřejněných materiálů. Předkládané informace a zapojení jsou zveřejněny bez ohledu na případné patenty třetích osob. Nároky na odškodnění na základě změn, chyb nebo vynechání jsou zásadně vyloučeny. Všechny registrované nebo jiné obchodní známky zde použité jsou majetkem jejich vlastníků. Uvedením nejsou zpochybněna z toho vyplývající vlastnická práva. Použití konstrukcí v rozporu se zákonem je přísně zakázáno. Vzhledem k tomu, že původ předkládaných materiálů nelze žádným způsobem dohledat, nelze je použít pro komerční účely! Tento nekomerční server nemá z uvedených zapojení či konstrukcí žádný zisk. Nezodpovídáme za pravost předkládaných materiálů třetími osobami a jejich původ. V případě, že zjistíte porušení autorského práva či jiné nesrovnalosti, kontaktujte administrátory na diskuzním fóru EB.


PHP-Nuke Copyright © 2005 by Francisco Burzi. This is free software, and you may redistribute it under the GPL. PHP-Nuke comes with absolutely no warranty, for details, see the license.
Čas potřebný ke zpracování stránky 0.14 sekund