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í 

AtMega 328P-PU Arduino bootloader

 
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
Honza_dy



Založen: Aug 20, 2004
Příspěvky: 2172
Bydliště: Brno-venkov

PříspěvekZaslal: ne září 08 2013, 21:36    Předmět: AtMega 328P-PU Arduino bootloader Citovat

Nazdar,
potřeboval bych si vyrobit pár čipů s Arduino bootloaderem jenže:

1) NEMÁM VŮBEC ŽÁDNÉ ZKUŠENOSTI s "napalováním" uP
2) Jsem vůl, protože jsem místo 328-PU koupil 328P-PU a jak tak procházím internetem, nacházím zprávy že jsou s tím problémy.
Vypalovat bych chtěl nástrojem v IDE.

Koupil jsem tento programátor se kterým by to mělo jít. Mimo to mám ještě desku UNO R3. Redukci 10p -> 6p si vyrobím.

S angličtinou nemám větší problémy, ale jelikož je to pro mě velká neznámá, chtěl bych nějaký odkaz nebo nakopnutí v češtině, protože vidina několika zničených procesorů po 80,-Kč je dost deprimující.

Je tady někdo znalý problematiky ochotný mě za ručičku provést celým procesem?
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: ne září 08 2013, 22:40    Předmět: Citovat

A máš bootloader jako hex soubor ? Tj. to co cheš do procesoru nahrát. Nevím co myslíš tím
citace:
Vypalovat bych chtěl nástrojem v IDE

Jelikož tvůj programátor je klon USBasp, programuj nejlépe programem AVRDude + GUI. Žádná záludnost v tom není.

Tady je odkaz na AVRDude v5.11, pak grafické rozhraní pro něj. A nakonec driver pro programátor. Todle mě funguje ve Win7 x64.

Po naisntalování připojíš programátor k procesoru, spustíš AVRDude-GUI.exe. Nastavíš typ programátoru na USBasp, port na USB. Pak vybereš správný typ procesoru, v řádce Flash vybereš hex soubor který chceš do procesoru nahrát. A nakonec stiskneš tlačítko Erase-Write-Verify.

Případně že Audrino potřebuje nastavené Fuse bity jinak než je default, tak je vyplníš v řádcích Fuse a tlačítkem Write zapíšeš.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Honza_dy



Založen: Aug 20, 2004
Příspěvky: 2172
Bydliště: Brno-venkov

PříspěvekZaslal: po září 09 2013, 9:58    Předmět: Citovat

Programu kterým arduino programuješ říkají IDE. Je tam v žáložce tools přímo možnost vypálit zavaděč do čistého čipu a to buď přes programátor(y) nebo přes desku (UNO atp.) do čipu na nepájivém poli.
.hex nemám, teoreticky ho nepotřebuji a nastavování pojistek v nějakém avrdude se chci vyhnout, protože napoprvé bych zničil procesorů za několik stovek, než by se to povedlo.
Jak už jsem psal, nemám žádné zkušenosti! Nevím jaký je rozdíl mezi USBasp a USBisp programátorem, nevím co znamenají jednotlivé pojistky.
Vědět to pro tento případ ani nepotřebuji, IDE by mělo udělat většinu věcí za mě.
ALe než se do toho pustím, chtěl bych víc informací od někoho zkušenějšího.
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: po září 09 2013, 11:25    Předmět: Citovat

Aha, omlouvám se. Tvůj dotaz sem pochopil úplně jinak.

Nejprve nainstaluj driver pro programátor (já používám ten v odkazu jak jsem psal, s tím co se instaluje volitelně s Arduino IDE mě programátor nefungoval). AVRdude se nainstaluje spolu s Arduino IDE. V záložce Tools vyber typ programátoru. V tomto případě USBasp. Důležité je v záložce Tools vybrat správný typ Arduino desky. Program podle toho totiž vybere správný hex bootloaderu a nastaví i fuse bity. Potom už jenom stačí z menu Tools zvolit Burn Bootloader. Program sám spustí AVRdude s příslušnými parametry, ověří signaturu procesoru a zapíše hex soubor.

Nemusíš se bát, ani při chybném naprogramování se procesor nezničí a vše je opakovatelné.

Celé se to dá udělat i ručně, zdrojové kódy i hex od bootloaderu jsou v adresáři <program files>\Arduino\hardware\arduino\bootloaders

Nastavení typu procesoru a fuse bitů pro každou desku je uloženo v textovém souboru <program files>\Arduino\hardware\arduino\boards.txt
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Honza_dy



Založen: Aug 20, 2004
Příspěvky: 2172
Bydliště: Brno-venkov

PříspěvekZaslal: po září 09 2013, 20:01    Předmět: Citovat

Tak jsem vyrobil redukci programovacího kabelu a zkusil to. K mému velkému překvapení skončil proces hláškou "Bootloader burning done".
Další pokus o nahrání prográmku blink dopadl také dobře a ledka blinká Very Happy

Nakonec to ani nebolelo, díky za trpělivost.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
frpr666



Založen: Dec 28, 2009
Příspěvky: 1051

PříspěvekZaslal: po září 09 2013, 20:03    Předmět: Citovat

1/ vůbec nevadí, že máš čip ATmega 328P. 328P je kompatibilní s 328 (co se týče funkce chipu jako Arduino). Já mám koupené Arduino osazené právě chipem 328p.

2/ Důležité je, aby jsi při programování "prázdného" chipu splnil podmínky pro ISP programování (správné napájení, připojení vývodů RESET, MOSI, MISO, SCK,+V,GND)

3/ Neznám tvůj programátor, já na tvém místě bych nejprve zkusil získat nějakou zručnost s mazáním, se zápisem a čtením flash a se zápisem a čtením fuse bitů. (fuse bity opatrně!)

4/ Vypálení bootloaderu spočívá v tom, že zapíšeš přiložený .hex do flash a následně nastavíš správně fuse bity. Flash najdeš zde:
(E:\programs\arduino-1.0.4\hardware\arduino\bootloaders\atmega\ATmegaBOOT_168_atmega328.hex)
Pojistky by měly být tyto:
atmega328_isp: HFUSE = DA
atmega328_isp: LFUSE = FF
atmega328_isp: EFUSE = 05

5/ Jakmile je bootloader v chipu, tak se chip po restartu snaží "spojit" s IDE Arduino. Nezapomeň, že pokud připojíš jiný krystal než 16MHz, nebude tento bootloader fungovat (bude komunikovat jinou rychlostí).

Odkazy:
http://forum.arduino.cc
http://www.engbedded.com/fusecalc/
www.google.cz/search?q=how+to+burn+arduino+bootloader

edit1/
Anebo pro začátek koupit jeden Arduino board již kompletní a pomocí něj vypalovat chipy dle návodu např. zde:
http://learn.adafruit.com/arduino-tips-tricks-and-techniques/arduinoisp
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Honza_dy



Založen: Aug 20, 2004
Příspěvky: 2172
Bydliště: Brno-venkov

PříspěvekZaslal: po září 09 2013, 20:53    Předmět: Citovat

frpr666@edit1/ :
tomuhle jsem se právě chtěl vyhnout protože se tam dá nasekat spousta chyb. Desku samozřejmě mám, ale chtěl jsem si vyrobit čipy do konstrukcí, protože používat celé desky by bylo dost neekonomické. Smile

Mimochodem ČR vs. DX (nahoře si přepněte na CZK) docela rozdíl ne?
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: út září 10 2013, 9:10    Předmět: Citovat

Zrovna GME je dost drahý obchod, hlavně vše kolem mikroprocesorů. Tydle věci se tam vůbec nevyplatí kupovat.

Na druhou stranu, taky už sem nejednou platil clo a DPH ze zásilky z DX.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
silas15



Založen: Feb 09, 2013
Příspěvky: 90

PříspěvekZaslal: st říjen 16 2013, 12:52    Předmět: Citovat

Pokud máš desku s Arduinem, tak na co používáš ještě další programátor, když k tomu můžeš rovnou připojit tvůj MCU a bootloader vypálíš taky. Jinak pokud chceš ušetřit a stačí ti míň paměti 16k tak můžeš zkusit 168P, a když to chceš ještě jednodušší, můžeš použít interní oscilátor v MCU na 8 MHz, a nepotřebuješ ani krystal. Jen pak už nemůžeš programovat na desce arduina. Tedy ano pokud chip vložíš do patice a té patici vyrušíš piny, na kterých je krystal.
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
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.38 sekund