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í 

Napečení ATtiny85

 
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
Celeron



Založen: Apr 02, 2011
Příspěvky: 18533
Bydliště: Nový Bydžov

PříspěvekZaslal: po březen 06 2023, 8:20    Předmět: Napečení ATtiny85 Citovat

Nedaří se mi v Arduino IDE napíct přes USBasp programátor čip ATtiny85.
Mám v IDE doinstalovaný ATtiny85 core, který může měnit nejen Clock ale i fuse.
Pokaždý se mi zahlásí chyba SCK s výpisem že je potřeba SCK 187,5 kHz.
Když napíkám ATmega 328p, tak vše proběhne v pořádku.
Zkoušel jsem napečení ATtiny85 přes USBasp z BAScom. Ta samý chyba ale v Bascom je možnost SCK nastavit na 187,5 kHz a níže. Potom už napečení proběhne OK. V nejhorším budu projekty z IDE kopírovat hexy nebo biny do BAScomu, ale je to docela pakárna hledat kam to IDE ukládá.
Netušíte prosím někdo, jestli se někde v Arduino IDE dá nastavit SCK pro USBasp na 187,5 kHz, nebo nevíte jinou fintu jak to rozhejbat?
Díky!

_________________
Jirka

Proč mi nemůže všechno chodit hned ?!!
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
eleferner



Založen: Jun 04, 2016
Příspěvky: 665
Bydliště: Brno

PříspěvekZaslal: út březen 07 2023, 0:06    Předmět: Citovat

Tohle souvisi s tim, ze kmitocet SCK musi byt treba 8x mensi nez je kmitocet jadra. U techto malych procesoru byva kmitocet jadra od vyroby jen 1 MHz, takze SCK vychazi pomerne nizky a programovani trva dlouho. Pri masove vyrobe je na to trik, ze pomoci fuses se kmitocet jadra zvedne treba na 8 MHz, nahrnou se data do Flash a fuses se zase vrati zpatky. Treba bys to mohl pouzit jako workaround.

Tady ty kmitocty rozebiraji pro ATTiny13:

https://www.eevblog.com/forum/microcontrollers/sck-frequency-for-programming-attiny13a/

A v USBasp pry jde upgradovat firmware, aby tu chybu nehazel:

https://www.youtube.com/watch?v=NDwDCTnSTzg
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Celeron



Založen: Apr 02, 2011
Příspěvky: 18533
Bydliště: Nový Bydžov

PříspěvekZaslal: út březen 07 2023, 8:58    Předmět: Citovat

Jo, někde jsem četl, že čínský klony USBasp mají proti Fischlově originálu automatickou volbu SCK, která nefunguje jak má a je potřeba napíct origo FW od Fischla.
To video, co jsi dal, je potřeba druhej USBasp. Vypadá to, že to dělá v AVRdue s příkazovým řádkem. Vzhledem k tomu jeho žvatlání mu moc nerozumím a obávám se, že i kdybych použil místo druhýho USBasp UNO jako Arduino ISP, tak to nedám.
Ale naťukl jsi mě na věc, co by to vyřešila, v BAScomu, kterej umí měnit kmitočet SCK, přecvaknout ATtiny85 na 8 MHZ a pak by možná mělo makat i v IDE. Zkusím, díky za tip.

_________________
Jirka

Proč mi nemůže všechno chodit hned ?!!
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Celeron



Založen: Apr 02, 2011
Příspěvky: 18533
Bydliště: Nový Bydžov

PříspěvekZaslal: út březen 07 2023, 18:36    Předmět: Citovat

Vyzkoušel jsem v BAScomu napíct do ATtiny85 obligátní Blink s Interním oscilátorem 8 MHz. Prolezlo to bez chyb ale oscilem se na noze nic nedělo. Tedy dělo, ale z jedný sekundy jich bylo osm. Zkusil jsem vypnout předděličku osmi a už to jede stejně rychle jako ATmega 328p.
Divný ale je, že program maká v ATtiny správně jen když se nahraje do Flash buferu BAScomu zkompilovanej soubor ve formátu HEX. Pokud nahraju to samý ve formátu BIN, tak ATtiny nemaká.
Bohužel, ta moje doměnka, že pokud nastavím v BAScomu v ATtiny interní oscilátor 8 MHz, že potom půjde programovat ATtiny přes USBasp přímo v Aeduino IDE byla lichá, stále to řve že chce SCK 178,5 kHz. Zajímavý ovšem je, že v BAScomu pokud zvolím SCK "automat", tak to s 8 MHz oscilátorem v ATtiny chodí. Pokud ho vrátím na 1MHz tak přestane. Pavěda...

_________________
Jirka

Proč mi nemůže všechno chodit hned ?!!
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
RayeR



Založen: Aug 02, 2009
Příspěvky: 1403
Bydliště: Praha

PříspěvekZaslal: pá březen 31 2023, 13:42    Předmět: Citovat

Ten hex muze obsahovat i fuse bity, zatim co bin je jen flash, tak proto asi ten rozdil...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
JirkaZ



Založen: Feb 26, 2021
Příspěvky: 2977

PříspěvekZaslal: pá březen 31 2023, 14:10    Předmět: Citovat

*.hex pro Atmel přeci nemůže obsahovat pojistky....

Nebo se mýlím? Rád se nechám poučit...

_________________
Kdo chce, hledá způsob;
kdo ne - hledá důvod.

Ze dvou možností často volím tu třetí.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Celeron



Založen: Apr 02, 2011
Příspěvky: 18533
Bydliště: Nový Bydžov

PříspěvekZaslal: pá březen 31 2023, 19:26    Předmět: Citovat

Neobsahuje. V Bascomu i v AVRdude, což je podkladek pod Arduino IDE se pečou fuse a lock zvlášť od flash, případně eeprom. Záleží co si nastavíš, jestli to udělá po pečení flash nebo ne.
To pečení mě už chodí na všem. Doporučovanej driver od Zaziga je na W7/32 i W7/64 nepoužitelnej, chce to originál od autora USBasp.

_________________
Jirka

Proč mi nemůže všechno chodit hned ?!!
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Mahoney



Založen: Oct 26, 2019
Příspěvky: 404

PříspěvekZaslal: so duben 01 2023, 0:45    Předmět: Citovat

Obsahuje, resp. záleží jak si to nastavíš, ale obecně jo. I v Arduino IDE, když dáš Projekt - Export kompilovaného bináru, tak ti to do složky s projektem vygeneruje dva HEX soubory, jeden s bootloaderem a jeden bez, a tam si to můžeš prohlídnout.

Tady je jednoduchej sketch, kde si je v Arduino IDE můžeš vyčíst přímo z brouka, a tady jsou vysvětlivky. Na Tině to bude možná malinko odlišný, ale definice najdeš v datasheetu té Tiny (strana 148, a dej pozor na to, že 0 = NASTAVENÁ fuse; clock sources na straně 25) a v hlavičkových souborech přímo ve složce toho prostředí (../hardware/tools/avr/avr/include/avr/iotn85.h)
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Celeron



Založen: Apr 02, 2011
Příspěvky: 18533
Bydliště: Nový Bydžov

PříspěvekZaslal: so duben 01 2023, 8:43    Předmět: Citovat

Hmm, tak proč teda v Bascomu se LB, FS, FSH, FSE nahrávají samostatně ihned jakmile ji změníš? Write PRG se dělá samostatně a nic na nich nezmění, nebo jsem si dosud nevšiml.
_________________
Jirka

Proč mi nemůže všechno chodit hned ?!!
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Mahoney



Založen: Oct 26, 2019
Příspěvky: 404

PříspěvekZaslal: so duben 01 2023, 10:39    Předmět: Citovat

Špatně to chápeš, to jestli je to prostředí umí zapsat přímo z menu nijak nesouvisí s tím, jestli jsou fuses v HEX zrovna momentálně uloženy nebo ne, to platí obecně a závisí to na konfiguraci prostředí (hlavně co se týče překladu). Fuses prostě v HEX být můžou i nemusí. Bascom neznám, ale jestli to v něm nejde nastavit, tak jen proto, že si s tím autor nedal tu práci.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
JirkaZ



Založen: Feb 26, 2021
Příspěvky: 2977

PříspěvekZaslal: so duben 01 2023, 20:29    Předmět: Citovat

V prostém *.hex (univerzálním pro všechny způsoby použití) obsahujícím program pro Atmel pojistky nikdy nejsou (na rozdíl třeba od PICu).

Pokud to nějaké prostředí (IDE, obslužý program k programátoru atd.) umí, tak je to nestandardní a ryze proprietární záležitost a umí to zpracovat zase jen tentýž sw. Někdy se to ukládá jako projekt (třeba u Asixu a jistě i mnohde jinde), kde pojistky jsou uloženy jako samostatný soubor.

_________________
Kdo chce, hledá způsob;
kdo ne - hledá důvod.

Ze dvou možností často volím tu třetí.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Celeron



Založen: Apr 02, 2011
Příspěvky: 18533
Bydliště: Nový Bydžov

PříspěvekZaslal: ne duben 02 2023, 0:23    Předmět: Citovat

Tak to by mě teda zajímalo, kdo z Vás dvou má pravdu. Rolling Eyes
Jen tak ze srandy jsem si nechal převýst v Xeltecu stejnej projekt z HEX bez Bootloaderu na BIN a porovnal ho s BINem, co vypadnul přímo z AVRdude. A světe div se, oba BINy byly naprosto stejný. Předpokládám, že pokud by HEX soubor obsahoval něco navíc, tak by musely být BINy rozdílný.

_________________
Jirka

Proč mi nemůže všechno chodit hned ?!!
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Ruprecht



Založen: Sep 28, 2005
Příspěvky: 1404
Bydliště: ZČ + JM

PříspěvekZaslal: ne duben 02 2023, 8:20    Předmět: Citovat

citace:
v Bascomu se LB, FS, FSH, FSE nahrávají samostatně ihned

Ano, můžeš ručně přímo změnit fuse z Bascomu, změníš, zapíšeš do procesoru. Pokud chceš pro každý program/procesor jiné nastavení automaticky, použij na začátku programu direktivu $prog. Nejjednoduššeji ji vytvoříš tak, že ručně zapíšeš fuses do procesoru na kartě "lock a fuse bity" v okně programátoru a klikneš na poslední volbu "write prg", tím se ti na pozici kurzoru v programu vypíše nový řádek "$prog a 4x hex hodnota", tímto řádkem se při každém programování pojistky nastaví.
Bascom pro programování generuje soubory bin, hex, eep (eeprom) a prg (fuses) + další pomocné soubory (obj pro AVR studio, report, error ...), fuses jsou v samostatném souboru a nejsou součástí hex, koukni do adresáře po překladu.

_________________
Kampaň, účelovka, nepodepsal, Palermo, ODS, Kalousek, je líp a jsou na to čísla, nastudujte si to.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Habesan



Založen: Jan 12, 2009
Příspěvky: 7159
Bydliště: Plzeňsko

PříspěvekZaslal: ne duben 02 2023, 8:25    Předmět: Citovat

Zde je popsáno další, ryze proprietární řešení:
Kanda.com/
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
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
Strana 1 z 1

 
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.17 sekund