Якая мэта мікракантролера загрузніка?

З майго разумення, для агульнага мікракантролера (напрыклад, AVR, PIC), то, як правіла, два спосабу праграмавання яго флэш-памяці.

    <�Літый> Выкарыстанне праграміста: (? Або нейкі варыянт) У-ланцуга паслядоўнага праграмавання<�Літый> Некаторыя формы загрузніка, да якога вонкавая прылада абменьваецца дадзенымі, у канчатковым рахунку, дазваляючы мікракантролер флэш сваю ўласную памяць.

Вядома, павінна быць вельмі важкая прычына, каб выкарыстоўваць загрузнік, яшчэ яго бягучы шырокае выкарыстанне было б вельмі дзіўна. Я проста не здавалася, цалкам захапіла яго яшчэ.

Ці з'яўляецца гэта, што праграміст дорага? Але тады, ёсць Arduinos (ATmega мікракантролер), які можа працаваць як праграмісты . Ці з'яўляецца кошт аднаго дадатковага Enough IC, каб апраўдаць выкарыстанне загрузніка? Калі я не памыляюся, апошнія Arduinos пазбавіцца ад чыпа FTDI ў цэлым, замяніўшы яго на працэсар ATmega, які робіць USB да паслядоўнага спалучэнне. Вядома, можна было б інтэграваць функцыі праграміста на гэтай ІМС, напрыклад?

Ці, напрыклад, пас мікракантролера. Існуе тое, што я бачыў называецца JDM программатора . Калі нешта накшталт гэтага, практычна без актыўных кампанентаў, можна запраграмаваць пас тады,

  1. Навошта выкарыстоўваць загрузнік наогул?
  2. Якая мэта адносна значна больш складанай PICkit (акрамя робастности)? Магчымасць адладкі?
10
Для таго, каб дадаць некаторыя з адказаў тут, адносна «дарагі»: для некаторага мікракантролеры (AVR, STM8/32, ...) праграмісты танныя. Вы можаце атрымаць программатор AVR за $ 15 або менш. Тым не менш, для іншых сямействаў мікракантролераў (Kinetis, да прыкладу), праграмісты могуць быць больш за $ 100, і праграміст/адладчык, якія можна запраграмаваць шмат ARM сям'і можа быць $ 500 +. Але, як і іншыя маюць сказаў, што гэта ў асноўным аб зручнасці, выдаленым абнаўленні і ліквідацыі вонкавага абсталявання.
дададзена аўтар Tachyons, крыніца
для ініцыялізацыі апаратнага забеспячэння або коды нагрузкі ад вонкавай крыніцы да ўнутранай памяці
дададзена аўтар Alex, крыніца

6 адказы

Асноўныя мэтай загрузчыка магчымасць абнаўлення ўбудаванага праграмнага забеспячэння праз іншыя, чым інтэрфейс апаратнага па змаўчанні інтэрфейсаў. Напрыклад, гэта дазваляе абнаўлення праз каналы сувязі, якія выкарыстоўваюць прыкладанне ў адваротным выпадку для сваіх уласных мэтаў, а гэта азначае, што вы можаце зрабіць выдаленае абнаўленне в-сістэмы, не патрабуе фізічнага ўмяшання на выдаленым вузле.

Калі ў вас ёсць такая магчымасць, неабходна нулявое дадатковае абсталяванне, што робіць яго метад з найменшай паўтаральным кошту, і таму Hobbyist сістэмы, такія як Arduino выкарыстоўваць. Яна таксама забяспечвае невялікая колькасць маркетынгавай блакавання ў, таму што цяпер вам трэба купіць вашы AVR чыпаў з загрузнікам ўжо запраграмаваны ў іх.

16
дададзена

Ёсць некалькі сцэнарыяў, у якіх загрузнік ня дадае каштоўнасці. Вы маеце рацыю, калі ў вас ёсць некалькі саветаў вы можаце, вядома, прыкласці программатор і адштабнаваць код. Калі вы аматар з парай дошак ці ў вас ёсць нават невялікае вытворчасць вы можаце зрабіць гэта такім чынам.

Загрузнікі маюць больш сэнсу ў сцэнарах, дзе фізічна падключыць программатор будзе менш практычным. Гатовыя вырабы, якія ўжо разгорнутыя, напрыклад, з'яўляецца адным з тых сцэнарыяў,

Як правіла, калі ў Вас ёсць электронны прадукт, які вы не дазваляйце «адладкі» або порт «праграмаванне» выкрыў. У вас ёсць толькі як Ethernet або паслядоўны або RS485 або CAN або бесправадной на вырабе.

Акрамя таго, што калі ў вас ёсць некалькі дзясяткаў ці, магчыма, сотні з іх ужо прададзеныя/разгорнутыя і ў вас ёсць абнаўленне прашыўкі?

Замест таго, каб ісці адзін за адным адтулінай у вальерах, прыклаўшы программатор, праграмаванне, закрыць справу прадукту і гэтак далей, вы можаце проста выкарыстоўваць адзін з існуючых інтэрфейсаў вашага бягучага прадукту для яго праграмавання.

Гэта нават лепш, калі вы «звязаныя» прылады з лакальнымі сеткамі, напрыклад, або любога віду бесправадной сувязі. Калі змясціць модуль бесправадной сувязі ў любы ваш прадукт вы можаце выкарыстоўваць, што бесправадная сувязь з загрузнікам, каб абнавіць код, такім чынам, вы можаце абнавіць некалькі прылад адначасова і не дакранаючыся іх.

І гэта становіцца функцыяй мары, калі прылады падлучаныя да сеткі Інтэрнэт. Такім чынам, вы можаце абнавіць прашыўку за ўсё з адной пстрычкай мышы, так як ваш тэлефон атрымлівае свае абнаўлення.

Для аматараў, магчыма, гэта не мае асаблівага сэнсу выкарыстоўваць загрузнік, але з пункту гледжання бізнесу, дзе вы на самой справе продажу прылад мае шмат сэнсу, так як гэта эканоміць час, дадае шмат зручнасць ў працэсе, і калі вашы карыстальнікі маюць кантакт з вашым прылада вы не павінны прадаваць іх праграмістамі толькі для абнаўлення ўбудаванага праграмнага забеспячэння (або зрабіць іх купіць праграміст у адваротным выпадку). А што, калі вашы прылады аднолькавыя функцыянальна, але з рознымі мікракантролерамі? Вы павінны вызначыць, хто мае тое, што для таго, каб адправіць або прадаць правільны праграміст, гэта ператвараецца ў кашмар !!

Instead of this you just put a USB port on it and everything gets hidden from the user, everybody knows how to connect a USB to the PC, copy one file to it and attach it to another device, but no normal user knows what the heck is a P&E debugger, a PICKit or a Segger J-Link.

Выбачайце, калі гэта трохі збівае з толку, англійская не маю мову, і, можа быць, рэдакцыя бардак, але я спадзяюся, што вы атрымаеце гэтую ідэю.

Ура !!

9
дададзена
Добры адказ, можа быць, трохі шматслоўны. Ваш англійская выдатна (прынамсі, з майго пункту гледжання, не носьбітам мовы).
дададзена аўтар Rev1.0, крыніца
Англійская няцотна у тым сэнсе, што, быўшы мовай па змаўчанні для глабальнай гандлю, ёсць, верагодна, больш не з'яўляецца роднай, чым родны. Такім чынам, «правільны» англійская становіцца значна складаней вызначыць. Як носьбітам мовы з Канзас-Сіці, Злучаныя Штаты Амерыкі, у мяне не было ніякіх праблем з разуменнем вас.
дададзена аўтар AaronD, крыніца

Асноўнай мэтай загрузчыка:

  • выняць праграму з памяці/сеткі і загрузіць яго.

Там можа быць вельмі абмежаваную колькасць хуткага захоўвання побач з блокам апрацоўкі, і праграма, якую вы хочаце запусціць, можа адрознівацца ад платы да плаце ці вы можаце змяніць праграму на борце. Загрузнік з'яўляецца агульным назоўнікам праграма, якая ведае, як загрузіць адмысловае праграмнае забеспячэнне ад таго, дзе яна захоўваецца і падачы яго на блок апрацоўкі.

Пашыраныя загрузнік можна зрабіць:

  • саматэставання
  • Сеткавая загрузка
  • загрузіць дадатковыя прашыўкі
  • ...
1
дададзена
ОП просіць канкрэтна пра загрузнікаў, знойдзенага ў базе флэш-мікракантролераў. Хоць стаўленне да загрузніка ў больш агульным сэнсе, гэты адказ Пабадзяўшыся крыху не па тэме.
дададзена аўтар GSerg, крыніца

Акрамя ўсіх іншых вялікіх адказаў ёсць яшчэ адна прычына, па меншай меры, для камерцыйных прадуктаў: ​​пасля вытворчасці праграмавання большасць чыпаў маюць магчымасць усталяваць, каб абараніць іх ад чытання дадзеных.

У залежнасці ад зададзенага па MCU гэты варыянт счытвання абарона можа фактычна адключыць падлучэнне программатора (напрыклад, ДСО або JTAG). Калі вам не загрузнік зроблена, вы не можаце перапраграмаваць прылада.

І тады вы ў канчатковым выніку з 10k адзінак з багі праграмнага забеспячэннем на рынку, гэта цягне за сабой вялікія страты за тое, што з'яўляецца па сутнасці некалькімі месяцамі кадавання.

1
дададзена

Гэта не кошт праграміста. Продажу не прыходзяць ад радыёаматараў; гэта фактар, але не фактар, людзі, якія купляюць у аб'ёме, безумоўна, можа дазволіць сабе праграміст. У вас ёсць некалькі варыянтаў:

  1. У часткі запраграмаваны альбо пастаўшчык запасных частак або сярэдні чалавек ці ваш вытворчы дом, а затым размешчана на плаце

  2. Нейкі у праграмаванні схемы пасля размяшчэння на борце

У другой катэгорыі ў вас ёсць жорсткія лагічныя рашэнні (у SPI або SPI-иш рэч на AVR чыпаў ) і мяккія рашэнні (загрузнік, праграма працуе ў частцы выкарыстання часткі). Некаторыя з іх абодвух.

Цвёрдае рашэнне, якое вы павінны атрымаць правы, калі вы лох дызайн, вы павінны злавіць яго досыць рана ці ваш прадукт куча непатрэбных дэталяў вы павінны смеццем. Вы можаце змяніць праграмныя рашэнні, нават да гэтага часу, як пасля крэмнія; Вы можаце нават узяць запас і запусціць яго праз і паўторна яе праграма. Так што раскоша, калі памылка ў вашым прадукце быць прасцей выправіць і/або стварыць. Мяккае рашэнне таксама можа забяспечыць больш шырокі спектр магчымасцяў для карыстальніка. SPI і I²C і USB і паслядоўны і любыя апаратныя рашэнні, калі такія маюцца. Мяккае рашэнне ў некаторых выпадках карыстальнік можа замяніць загрузнік з іх уласнымі па сваіх уласных прычынах.

Не кожны мікракантролер можа мець праграмнае забеспячэнне, якое можа праграмаваць сваю ўласную выбліск, але для любых, што рабіць элемент можа зрабіць свой уласны загрузнік незалежна ад пастаўшчыка чыпаў пастаўляецца адзін, калі ёсць чып пастаўшчык пастаўляецца адзін.

З ARM Cortex-M і SWD Я бачу рэчы мяняюцца; некаторыя мікрасхемы ня SWD, і ніякага іншага з завадской опцыі. Я толькі што атрымаў Atmel SAM D21 ; яны больш не маюць SAM-BA пачатковага загрузніка, і яны забяспечваюць крыніца, каб вы можа дадаць свае ўласныя ў пачатку карыстацкай выбліскам, а таксама некаторых рэгістраў роду абароны, але гэта трывіяльна, каб сцерці. Дык на тое; Вы можаце таксама проста зрабіць свой уласны або выкарыстоўваць ДСО.

Паглядзіце на свет Arduino/AVR, на аматараў. У іх ёсць свой уласны загрузнік, і што з'яўляецца асноўным інтэрфейсам, бо гаворка ідзе пра зусім бясплатна. Вы можаце атрымаць ISP программатор для некалькіх (або некалькіх дзясяткаў) даляраў. Але зьвярніце ўвагу, як існуе цэлы шэраг іншага AVR плата, які ідзе з USB на аснове пратаколаў замест да гэтага моманту папулярных загрузнікаў. Некаторыя з гэтых пратаколаў USB выкарыстоўваюцца крос пастаўшчыка.

У рэшце рэшт, калі вашы кліенты хочуць і/або ваш аддзел маркетынгу можа выкарыстоўваць яго, каб адрозніць наш прадукт ад іх, і не ўрэзацца ў кошт прадукту або прыбытку. Чаму не? Бяспройгрышная.

Там не адзін і не правільны адказ на гэтае пытанне; усё гэта меркаванне, заснаванае. Вы можаце звязацца з кожным з пастаўшчыкоў чыпаў і спытаць іх, але людзі, якія адказваюць маюць намер выказаць сваё меркаванне, яны, верагодна, нават не ведаюць, ці калі-небудзь размаўлялі з людзьмі, якія дадалі гэтую функцыю або падтрымліваць яго. Там няма адказу на гэтае пытанне.

0
дададзена

Проста таксама даць перспектыву аматар у:

Гэта робіць жыццё нашмат лягчэй, не патрабуючы якіх-небудзь дадатковых апаратных сродкаў або шмат ведаў нізкага ўзроўню. Адзін крайні выпадак я быў часціц (не прыналежнасць), які можа атрымаць мільганула над воблакам. Адзіныя рэчы, неабходныя для ўспышкі гэтага чыпа з'яўляюцца:

  • Харчаванне
  • <�Літый> WLAN </літый>
  • падлучэнне да Інтэрнэту
  • Адзін іншага кампутара, каб напісаць праграмнае забеспячэнне

Гэта робіць працэс даволі нядорага і на самай справе даволі проста ад не пра перспектывы.

0
дададзена