Založen: Aug 20, 2004 Příspěvky: 2172 Bydliště: Brno-venkov
Zaslal: ne září 08 2013, 21:36 Předmět: AtMega 328P-PU Arduino bootloader
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?
Založen: Nov 20, 2012 Příspěvky: 1453 Bydliště: Praha
Zaslal: ne září 08 2013, 22:40 Předmět:
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š.
Založen: Aug 20, 2004 Příspěvky: 2172 Bydliště: Brno-venkov
Zaslal: po září 09 2013, 9:58 Předmět:
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.
Založen: Nov 20, 2012 Příspěvky: 1453 Bydliště: Praha
Zaslal: po září 09 2013, 11:25 Předmět:
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
Založen: Aug 20, 2004 Příspěvky: 2172 Bydliště: Brno-venkov
Zaslal: po září 09 2013, 20:01 Předmět:
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á
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í).
Založen: Aug 20, 2004 Příspěvky: 2172 Bydliště: Brno-venkov
Zaslal: po září 09 2013, 20:53 Předmět:
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é.
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.
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
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.