|
|
  |
Программирование AVR при серийном производстве |
|
|
|
Jul 11 2008, 16:16
|

Знающий
   
Группа: Свой
Сообщений: 966
Регистрация: 27-05-06
Из: СПб
Пользователь №: 17 499

|
Цитата(uriy @ Jul 11 2008, 20:01)  6 метализированных отверстий с шагом 2,54 и втыкаем туда линейку PLD (если буквы не напутал) коих навалом. При программировании просто втыкаем и прижимаем небольшим усилием в сторону. на плате 6 квадратиков или кружочков. плата вставляется в оснастку с подпружиненными контактами. если позволяет топология, то удобно делать их с краю платы и вставлять в разъем с соответствующим шагом, например , isa-шные разъемы. также еще пробовал делать разъемы , наподобие разъемов для sd карт, тоже работает. минус дырочек и штырьков pld в том, что их надо держать при программировании
|
|
|
|
|
Jul 11 2008, 19:59
|

За битами по регистрам гоняюсь
  
Группа: Свой
Сообщений: 457
Регистрация: 24-04-06
Из: Таганрог
Пользователь №: 16 446

|
Заказчики, они разные бывают. Некоторым требуются изменения в программе в момент упаковки приборов. И хотя эти изменения иногда  оплачиваются, без разъёма ISP никак не обойтись. Кстати, очень удобно использовать PLS или PLD с мелким шагом. Места на плате почти не занимают.
--------------------
Курсор влево, курсор вправо - считается хакерством. FORMAT C: производится без предупреждения
|
|
|
|
|
Jul 11 2008, 20:01
|
Частый гость
 
Группа: Участник
Сообщений: 169
Регистрация: 31-08-05
Из: New York
Пользователь №: 8 118

|
TQFP корпус, например, неудобно без ISP программировать.
--------------------
ASB
|
|
|
|
|
Jul 12 2008, 18:54
|
Участник

Группа: Участник
Сообщений: 50
Регистрация: 16-04-05
Из: СПб
Пользователь №: 4 208

|
Если производство серьёзное, с нормальной документацией, имеем один нюанс. Программируя микросхему отдельно, получаем новую сборочную единицу, которая должна быть записана в перечне и спецификации. Желательно, чтобы прошитые микросхемы имели маркировку. Ведь прошивка и пайка разнесены во времени и пространстве. Получив плату в проверку можно долго искать неисправность из-за ошибки комплектовщицы или монтажницы. А перешить на плате нельзя…
Кроме того, могут возникнуть проблемы при upgrade (здесь может помочь bootloader) и ремонте на объекте.
|
|
|
|
|
Jul 12 2008, 20:29
|
Гуру
     
Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588

|
Цитата(bill_vs @ Jul 12 2008, 18:54)  Если производство серьёзное, с нормальной документацией, имеем один нюанс. Да, "бумажечки", приклеенные к корпусам, часто встречаются. А вот если прошиваем, скажем, во время тестирования, то имеем другой нюанс - прошивальщик может зашить не тот код, что приводит к тому же самому - неисправности или краху девайса. Цитата(bill_vs @ Jul 12 2008, 18:54)  Кроме того, могут возникнуть проблемы при upgrade (здесь может помочь bootloader) и ремонте на объекте. Скорее обязан, если уж апдейт предусматривается.
|
|
|
|
|
Jul 13 2008, 11:06
|
Участник

Группа: Участник
Сообщений: 50
Регистрация: 16-04-05
Из: СПб
Пользователь №: 4 208

|
Цитата(Огурцов @ Jul 13 2008, 00:29)  А вот если прошиваем, скажем, во время тестирования, то имеем другой нюанс - прошивальщик может зашить не тот код, что приводит к тому же самому - неисправности или краху девайса. Не понял, что такое тестирование? И как оно проходит при прошивке вне платы?
|
|
|
|
|
Jul 13 2008, 13:12
|

Участник

Группа: Участник
Сообщений: 26
Регистрация: 21-02-08
Пользователь №: 35 272

|
Цитата(bill_vs @ Jul 12 2008, 22:54)  Если производство серьёзное, с нормальной документацией, имеем один нюанс. Программируя микросхему отдельно, получаем новую сборочную единицу, которая должна быть записана в перечне и спецификации. Желательно, чтобы прошитые микросхемы имели маркировку. Ведь прошивка и пайка разнесены во времени и пространстве. Получив плату в проверку можно долго искать неисправность из-за ошибки комплектовщицы или монтажницы. А перешить на плате нельзя…
Кроме того, могут возникнуть проблемы при upgrade (здесь может помочь bootloader) и ремонте на объекте. на мой взгляд идеальный вариант это SPI на плате, разъём только поменьше поставить.. и прошивку потом можно обновить если что.
|
|
|
|
|
Jul 13 2008, 13:37
|

Местный
  
Группа: Участник
Сообщений: 355
Регистрация: 27-03-07
Из: Україна, Чуднів
Пользователь №: 26 530

|
Цитата(radiofill @ Jul 13 2008, 16:12)  на мой взгляд идеальный вариант это SPI на плате, разъём только поменьше поставить.. и прошивку потом можно обновить если что. Это уже и сказал Igor26. читайте повнимательнее
--------------------
нельзя недооценивать предсказуемость глупости
|
|
|
|
|
Jul 13 2008, 15:25
|
Участник

Группа: Участник
Сообщений: 50
Регистрация: 16-04-05
Из: СПб
Пользователь №: 4 208

|
Цитата(Огурцов @ Jul 13 2008, 16:18)  Прошиффка и тестирование - после сборки. Ежели это две операции - тем более неэкономно. А если прошивка вне платы, то тестировщик/прошивальщик не ошибется с прошивкой, поскольку не шьет. Прошивка - отдельная операция, более унифицированная и короткая по времени. А если лениво/глючно, а объем большой - сделайте/поставьте прошивальный станок. У нас регулировщик шьёт и сразу тестирует плату после пайки. Пайка производится на стороне. В некоторых случаях используется специальная тестовая прошивка для упрощения контроля железа. Почему вероятность ошибки регулировщика больше, чем ошибки прошивальщика + комплектовщика + монтажника? Да и исправить ошибку повторной прошивкой много проще чем перепайкой. Я не утверждаю, что прошивка в плате всегда лучшее решение. Но мы используем его, и я хочу понять плюсы другого решения.
|
|
|
|
|
Jul 13 2008, 18:52
|
Профессионал
    
Группа: Свой
Сообщений: 1 508
Регистрация: 26-06-06
Из: Киев
Пользователь №: 18 364

|
Цитата Сейчас применяю WH-125-6 (HU), но разъем программатора ессно быстро изнашивается... Как уже сказали - на плате 6 метализированных отверстий. Писать переходником из ширпотребной линейки штырей. Для исключения отрывания проводов от штырей наконечника обычно укрепляю наконечник и провода эпоксидкой или холодной сваркой. Заодно получаю и корпус за который удобно держать при записи. При записи вставляешь наконечник в плату и слегка наклоняешь (хотя если удачно выбрать диаметр отверстий не придется даже держать)... Цитата Извините, а зачем при серийном производстве ISP ? Вроде бы гораздо удобнее прошить в цивильном программаторе, да и на плате лишний фарш будет не нужен. При МАССОВОМ производстве гораздо удобнее заказать прошивку у изготовителя микросхем. Во всех остальных случаях (кроме совсем штучного) прошивка "в цивильном программаторе" - наименее удобный вариант. Цитата Плюсом контроль _до пайки_. Минусом - отсутствие контроля ПОСЛЕ пайки. Да и неисправность микроконтроллера (единственное что может поймать "контроль _до пайки_") сейчас - наименее вероятная неисправность. Цитата Так панелька одна на всю партию, а то и на несколько. А дырки/штырьки/разъемы и кусок печатной платы - на каждое изделие. Вот и считайте. А сколько микросхем при этом останутся не записанными и в последствии их придется выпаивать !? Цитата А вот если прошиваем, скажем, во время тестирования, то имеем другой нюанс - прошивальщик может зашить не тот код, что приводит к тому же самому - неисправности или краху девайса. Если прошиваем во время тестирования, СПЕРВА в чип записывается тестовая программа, затем изделие подключается к "тестовой косичке" через которую девайс с зашитой тестовой программой за несколько секунд тестирует сам себя, а уже затем в изделие записывается окончательная программа прошивки. Ну а для того, что-бы не записать "не тот код" делается автономный программатор который имеет одну кнопку начала записи и светодиод/пищалка говорящих о завершении записи. Сложность такого программатора - до 200 слов кода. Из особых плюсов такого подхода - если на плате больше одного МК, то их можно шить за один подход. ЗЫ. В общем мое решение - метализированные дырки на прате плюс атономный программатор для прошивки МК (МК-ов).
|
|
|
|
|
Jul 13 2008, 19:08
|
Гуру
     
Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588

|
Цитата(bill_vs @ Jul 13 2008, 15:25)  Я не утверждаю, что прошивка в плате всегда лучшее решение. Но мы используем его, и я хочу понять плюсы другого решения. Возможно, что и нет универсального решения. Но на мой взгляд вывод ISP на существующие разъемы - хуже всего, далее - стандартный разъем специально для ISP, и, лучше всего, - программирование вне платы, при условии, что в девайсе уже предусмотрен какой-либо интерфейс, который можно так же заюзать для бутлоадера. Цитата(ArtemKAD @ Jul 13 2008, 18:52)  При МАССОВОМ производстве гораздо удобнее заказать прошивку у изготовителя микросхем. Согласен. Но до 2000 штук атмел вряд ли опустится. Цитата(ArtemKAD @ Jul 13 2008, 18:52)  Минусом - отсутствие контроля ПОСЛЕ пайки. Одно вроде бы не отменяет другое. Цитата(ArtemKAD @ Jul 13 2008, 18:52)  Да и неисправность микроконтроллера (единственное что может поймать "контроль _до пайки_") сейчас - наименее вероятная неисправность. Согласен. Но бывает, и что намного хуже - для всей(новой) партии. Достаточно посмотреть последние посты. В этом случае, если шить в плате, вся партия уйдет в ремонт. Или в мусор. Цитата(ArtemKAD @ Jul 13 2008, 18:52)  А сколько микросхем при этом останутся не записанными и в последствии их придется выпаивать !? Нисколько - шить нужно с контролем. Цитата(ArtemKAD @ Jul 13 2008, 18:52)  Если прошиваем во время тестирования, СПЕРВА в чип записывается тестовая программа Тогда вне платы шьется бутлоадер. Иначе, таки да - разъем ISP.
|
|
|
|
|
Jul 13 2008, 22:32
|

кекс
     
Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326

|
Цитата(ArtemKAD @ Jul 13 2008, 21:52)  ЗЫ. В общем мое решение - метализированные дырки на прате плюс атономный программатор для прошивки МК (МК-ов). Зы, IDC-10/6/5 впаять и шить нормальным обжатым шлейфом дорого? Ращески "на вес" продают. Цитата(Огурцов @ Jul 13 2008, 22:08)  Но бывает, и что намного хуже - для всей(новой) партии. Достаточно посмотреть последние посты. В этом случае, если шить в плате, вся партия уйдет в ремонт. Или в мусор. При смене комплектовки что мешает собрать и оттестировать вначале пару экземпляров. Пройдут цикл тестирования, тогда вперед собирать все остальные. Цитата(Огурцов @ Jul 13 2008, 22:08)  Тогда вне платы шьется бутлоадер. Иначе, таки да - разъем ISP. IMHO нет смысла скупиться на разъемы. Если место на плате позволяет, можно и ISP и JTAG разъемы ставить - пользователю приятное сделать. ;> Вот например, если бы в d-link'овых роутерах где ARM'ы, впаивали бы сразу JTAG разъем, я думаю многие разработчики бы кинулись их покупать и пользовать вместо отладочных плат.  Я бы себе точно взял бы такой девайс вместо дерьмеца от Olimex'a.
|
|
|
|
|
Jul 13 2008, 23:26
|
Гуру
     
Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588

|
Цитата(defunct @ Jul 13 2008, 22:32)  При смене комплектовки что мешает собрать и оттестировать вначале пару экземпляров. Сборка "на стороне". Цитата(defunct @ Jul 13 2008, 22:32)  IMHO нет смысла скупиться на разъемы. Если место на плате позволяет, можно и ISP и JTAG разъемы ставить - пользователю приятное сделать. Нафига это пользователю ? Пользователь нужен для того, чтобы пользовать, а не для того, чтобы дебажить. Цитата(defunct @ Jul 13 2008, 22:32)  Вот например, если бы в d-link'овых роутерах где ARM'ы, впаивали бы сразу JTAG разъем, я думаю многие разработчики бы кинулись их покупать и пользовать вместо отладочных плат.  У моего d-link`а - бутлодырь. Если разобраться - отличная база...можно бы все свои поделки выбросить и заменить на него. Был бы какой-то стартап-пример, м.б. так бы и поступил( Даже без JTAG`а.
|
|
|
|
|
Jul 13 2008, 23:52
|

кекс
     
Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326

|
Цитата(Огурцов @ Jul 14 2008, 02:26)  Нафига это пользователю ? Пользователь нужен для того, чтобы пользовать, а не для того, чтобы дебажить. Ну мало ли. Представим закончился срок эксплуатации вашего девайса. Так из него можно будет хоть мигалку сделать, в школы/ВУЗы передать чтобы дети игрались, вместо того чтобы выбрасывать. ;> Цитата У моего d-link`а - бутлодырь. Если разобраться - отличная база...можно бы все свои поделки выбросить и заменить на него. Был бы какой-то стартап-пример, м.б. так бы и поступил( Даже без JTAG`а. Сложновато без JTAG'а. А база действительно отличная. И думаю им (d-link'у) по барабану, что на их железе будет крутиться, главное чтобы брали по цене роутеров. То же самое может относиться и к устройствам, разрабатываемым Вами ;> Цитата(Огурцов @ Jul 14 2008, 02:26)  Сборка "на стороне". Прекрасно Вас понимаю, у нас тоже сборка на стороне. Но при смене комплектовки что мешает спаять 1-2 экземпляра своими силами. Передать в тестирование - после чего зеленый свет на заказ сборки. Или лучше превед на всей партии получить?
|
|
|
|
|
Jul 14 2008, 19:05
|
Профессионал
    
Группа: Свой
Сообщений: 1 508
Регистрация: 26-06-06
Из: Киев
Пользователь №: 18 364

|
Цитата Одно вроде бы не отменяет другое. Отменяет. Если чип записать до пайки окончательной программой, то тестировать плату после пайки придется вручную, что при достаточной сложности изделия - крайне малоэффективно. Цитата Но бывает, и что намного хуже - для всей(новой) партии. Это не брак МК, это разгильдяйство разработчиков. Запись МК до пайки тут не поможет никак. Цитата Нисколько - шить нужно с контролем. А причем тут контроль? Двух человек садить на запись - один шьет, а другой потом проверяет первого? Цитата Тогда вне платы шьется бутлоадер. Иначе, таки да - разъем ISP. Ну какой бутлоадер, скажем в AtTiny26? Там бы прогу поместить, а не то, что прогу с загрузчиком... Цитата Зы, IDC-10/6/5 впаять и шить нормальным обжатым шлейфом дорого? Ращески "на вес" продают. Да нет. У меня просто обычно места на плате в обрез. Часто и дырки программатора под МК приходится засовывать че бы не мешали. Да и запись автономником идет быстрее "цивильных программаторов с ПК", что уменьшает время которое человеку надо удерживать наконечник в плате. ЗЫ. Кстати в тему. Не далее как сегодня искал ZIF панельку под SSOP-48 для записи китайского HT48R70 (до ISP они не доросли). Слава Богу, что уту заразу мне не придется писать в объемах больше 5 шт - ножки гнуться от любого чиха. Ну и как "приятное дополнение" - цена панельки превышает 220$.
|
|
|
|
|
Jul 15 2008, 08:26
|
Профессионал
    
Группа: Свой
Сообщений: 1 508
Регистрация: 26-06-06
Из: Киев
Пользователь №: 18 364

|
Цитата Скорее всего, речь идет о верификации после прошивки. Так это может любой программатор. Но это не помогает. Мне иногда приходится писать At45DB041 в программаторе. И я сам себя несколько раз ловил на том, что не прошиваю микросхему. Т.е. вставить вставил, отвлекся и не заметил, что клавишу "запись" не нажал. А затем смотришь на экран - запись завершена (еще от предыдущей), в панельке микросхема стоит и автоматом ложишь ее в кучу записанных.... Единственное что хоть как-то спасает - счетчик записанных микросхем который сверяешь по окончании записи пенала. Но искать там не записанную - то еще удовольствие.
|
|
|
|
|
Jul 16 2008, 13:04
|
практикующий тех. волшебник
    
Группа: Участник
Сообщений: 1 190
Регистрация: 9-09-05
Пользователь №: 8 417

|
Цитата(ArtemKAD @ Jul 15 2008, 12:26)  ...Т.е. вставить вставил, отвлекся и не заметил, что клавишу "запись" не нажал. А затем смотришь на экран - запись завершена (еще от предыдущей), в панельке микросхема стоит и автоматом ложишь ее в кучу записанных.... Дабы на такое не налетать - делаю чтение после выставления защиты. программатор скидывает буффер в нули. хоть и лишние пару нажатий на клаве(перегрузить буффер), но зато хоть какая то фаза окончания - пустой буффер. Хотя опять же, если не нажать перегрузку  с уважением (круглый) ЗЫ Сам пришёл к ISAшному разьёму у края. ЗЫ ЗЫ Понравилась идея с автономным программатором...Для передачи всего процесса штамповки на лево - удобная вещь..
|
|
|
|
|
Jul 16 2008, 17:14
|

Знающий
   
Группа: Свой
Сообщений: 521
Регистрация: 10-02-05
Пользователь №: 2 544

|
Цитата отвлекся и не помнишь шил или нет, значит не шил и надо шить. Как говорится, лучше перебдеть чем недобдеть. О! Золотые слова!!! Справедливы даже для случая с однократно программируемыми микросхемами. Шьётся то одна прошивка. Цитата При настройке изделия наверняка будет ясно что память не зашита. У нас шьют AT45DB161D штук 500 в месяц - не заработала плата зашили еще раз. Еще раз +1! Пришла партия плат в наладку. Одна не идет. Причина - не зашита конфигурационная ЕРС1. Выпаяли (делов то, DIP8), зашили - полная гармония:-)
|
|
|
|
|
Apr 28 2010, 10:01
|
Участник

Группа: Участник
Сообщений: 33
Регистрация: 28-04-10
Пользователь №: 56 945

|
Еще вариант с использованием "гребенки" PLS: В качестве отладочного разъема на плате развести ряд отверстий с шагом 2,54 мм (либо другим - смотря какая гребенка). Но отверстия располагать не чётко в одну линию, а как бы в шахматном порядке, с расстоянием между осями рядов 0.1 ... 0.15 мм. Таким образом, при подсоединении разъема программатора вы получите надежный контакт без необходимости чего-то придерживать и подгибать. Единственный замеченный минус - этот способ только для плат с металлизацией отверстий.
|
|
|
|
|
May 21 2010, 10:06
|
Участник
  
Группа: Свой
Сообщений: 462
Регистрация: 2-04-07
Из: Иркутск
Пользователь №: 26 695

|
Цитата(Инженер @ May 21 2010, 15:12)  А какие есть отдельные программы, не в комплекте AVR Studio, для прошивки по ISP DRAGON AVR?, чтобы прошивать можно было, не запуская AVR Studio. Есть консольная программа [INSTALL PATH]\Atmel\AVR Tools\AvrDragon\avrdragon.exe Правда она идёт в составе AVR Studio, и скорее всего не работает без установленной AVR Studio, но для прошивки запускать студию не придётся. Ключи запуска посмотреть в хелпе или avrdragon.exe -h
|
|
|
|
|
Jun 3 2010, 03:17
|
Частый гость
 
Группа: Свой
Сообщений: 104
Регистрация: 10-12-04
Из: Ебург
Пользователь №: 1 436

|
Цитата(ae_ @ May 21 2010, 16:06)  Есть консольная программа [INSTALL PATH]\Atmel\AVR Tools\AvrDragon\avrdragon.exe Правда она идёт в составе AVR Studio, и скорее всего не работает без установленной AVR Studio, но для прошивки запускать студию не придётся. Ключи запуска посмотреть в хелпе или avrdragon.exe -h А чего-нибудь не консольного, можно стороннего разработчика, нету?
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|