AVR. Учебный курс. Трактат о программаторах. Устанавливаем ISP-подключение Значит isp

Программа для микроконтроллера пишется на любом удобном языке программирования, компилируется в бинарный файл (или файл формата intel HEX) и заливается в микроконтроллер посредством программатора.

Итак, первым шагом в освоении микроконтроллера обычно становится программатор. Ведь без программатора невозможно загнать программу в микроконтроллер и он так и останется безжизненным куском кремния.

Что же представляет из себя это устройство?
В простейшем случае программатор это девайс который связывает микроконтроллер и компьютер, позволяя с компа залить файл прошивки в память контроллера. Также нужна прошивающая программа, которая по специальному протоколу загонит данные в микроконтроллер.

Программаторы бывают разные под разные семейства контроллеров существуют свои программаторы. Впрочем, бывают и универсальные. Более того, даже ту же простейшую AVR’ку можно прошить несколькими способами:

Внутрисхемное программирование (ISP)
Самый популярный способ прошивать современные контроллеры. Внутрисхемным данный метод называется потому, что микроконтроллер в этот момент находится в схеме целевого устройства — он может быть даже наглухо туда впаян. Для нужд программатора в этом случае выделяется несколько выводов контроллера (обычно 3..5 в зависимости от контроллера).

К этим выводам подключается прошивающий шнур программатора и происходит заливка прошивки. После чего шнур отключается и контроллер начинает работу.
У AVR прошивка заливается по интерфейсу SPI и для работы программатора нужно четыре линии и питание (достаточно только земли, чтобы уравнять потенциалы земель программатора и устройства):

  • MISO — данные идущие от контроллера (Master-Input/Slave-Output)
  • MOSI — данные идущие в контроллер (Master-Output/Slave-Input)
  • SCK — тактовые импульсы интерфейса SPI
  • RESET — сигналом на RESET программатор вводит контроллер в режим программирования
  • GND — земля

Сам же разъем внутрисхемного программирования представляет собой всего лишь несколько штырьков. Лишь бы на него было удобно надеть разъем. Конфигурация его может быть любой, как тебе удобней.
Однако все же есть один популярный стандарт:


Для внутрисхемной прошивки контроллеров AVR существует не один десяток разнообразных программаторов. Отличаются они в первую очередь по скорости работы и типу подключения к компьютеру (COM/LPT/USB). А также бывают безмозглыми или со своим управляющим контроллером.

Безмозглые программаторы, как правило, дешевые, очень простые в изготовлении и наладке. Но при этом обычно работают исключительно через архаичные COM или LPT порты. Которые найти в современном компьютере целая проблема. А еще требуют прямого доступа к портам, что уже в Windows XP может быть проблемой. Плюс бывает зависимость от тактовой частоты процессора компьютера.

Так что твой 3ГГЦ-овый десятиядерный монстр может пролететь, как фанера над Парижем.

Идеальный компьютер для работы с такими программаторами это какой-нибудь PIII-800Mhz с Windows98…XP.
Вот очень краткая подборка проверенных лично безмозглых программаторов:


Программаторы с управляющим контроллером лишены многих проблем безмозглых. Они без особых проблем работают через USB. А если собраны на COM порт, то без извращенских методик работы с данными — как честный COM порт. Так что адаптеры COM-USB работают на ура. И детали подобрать можно покрупней, чтобы легче было паять. Но у этих программаторов есть другая проблема — для того чтобы сделать такой программатор нужен другой программатор, чтобы прошить ему управляющий контроллер. Проблема курицы и яйца. Широко получили распространение такие программаторы как:

  • AVRDOPER
  • AVR910 Protoss

Внутрисхемное программирование, несмотря на все его удобства, имеет ряд ограничений.
Микроконтроллер должен быть запущен, иначе он не сможет ответить на сигнал программатора. Поэтому если неправильно выставить биты конфигурации (FUSE), например, переключить на внешний кварцевый резонатор, а сам кварц не поставить. То контроллер не сможет запуститься и прошить его внутрисхемно будет уже нельзя. По крайней мере до тех пор пока МК не будет запущен.
Также в битах конфигурации можно отключить режим внутрисхемной прошивки или преваратить вывод RESET в обычный порт ввода-вывода (это справедливо для малых МК, у которых RESET совмещен с портом). Такое действо тоже обрубает программирование по ISP.

Параллельное высоковольтное программирование
Обычно применяется на поточном производстве при массовой (сотни штук) прошивке чипов в программаторе перед запайкой их в устройство.

Параллельное программирование во много раз быстрей последовательного (ISP), но требует подачи на RESET напряжения в 12 вольт. А также для параллельной зашивки требуется уже не 3 линии данных, а восемь + линии управления. Для программирования в этом режиме микроконтроллер вставляется в панельку программатора, а после прошивки переставляется в целевое устройство.

Для радиолюбительской практики он особо не нужен, т.к. ISP программатор решает 99% насущных задач, но тем не менее параллельный программатор может пригодиться. Например, если в результате ошибочных действий были неправильно выставлены FUSE биты и был отрублен режим ISP. Параллельному программатору на настройку FUSE плевать с высокой колокольни. Плюс некоторые старые модели микроконтроллеров могут прошиваться только высоковольтным программатором.
Из параллельных программаторов для AVR на ум приходит только:

  • HVProg от ElmChan
  • Paraprog
  • DerHammer

А также есть универсальные вроде TurboProg 6, BeeProg, ChipProg++, Fiton которые могут прошивать огромное количество разных микроконтроллеров, но и стоят неслабо. Тысяч по 10-15. Нужны в основном только ремонтникам, т.к. когда не знаешь что тебе завтра притащат на ремонт надо быть готовым ко всему.

Прошивка через JTAG
Вообще JTAG это . Он позволяет пошагово выполнять твою программу прям в кристалле. Но с его помощью можно и программу прошить, или FUSE биты вставить. К сожалению JTAG доступен далеко не во всех микроконтроллерах, только в старших моделях в 40ногих микроконтроллерах. Начиная с Atmega16.

Компания AVR продает фирменный комплект JTAG ICEII для работы с микроконтроллерами по JTAG, но стоит он (как и любой профессиональный инструмент) недешево. Около 10-15тыр. Также есть первая модель JTAG ICE. Ее можно легко изготовить самому, а еще она встроена в мою демоплату .


Прошивка через Bootloader
Многие микроконтроллеры AVR имеют режим самопрошивки. Т.е. в микроконтроллер изначально, любым указанным выше способом, зашивается спец программка — bootloader. Дальше для перешивки программатор не нужен. Достаточно выполнить сброс микроконтроллера и подать ему специальный сигнал. После чего он входит в режим программирования и через обычный последовательный интерфейс в него заливается прошивка. Подробней описано в .
Достоинство этого метода еще и в том, что работая через бутлоадер очень сложно закосячить микроконтроллер настолько, что он не будет отвечать вообще. Т.к. настройки FUSE для бутлоадера недоступны.

Бутлоадер также прошит по умолчанию в главный контроллер демоплаты чтобы облегчить и обезопасить первые шаги на пути освоения микроконтроллеров.

Pinboard II
Прошивка AVR с помощью демоплаты Pinboard II (для Pinboard 1.1 все похоже)

На самом деле, вы уже знакомы с этим понятием. ISP, сокращённо с английского «internet service provider», означает «поставщик интернет-услуг» или по-другому называется «интернет-провайдер» (можно просто провайдер). Он же, в свою очередь, является организацией, занимающейся предоставлением такого товара, как выход в глобальную сеть . Это могут быть подключения через домашний телефон или по оптоволоконному кабелю, беспроводные сети, аренда оборудования и многие другие вещи, связанные со Всемирной паутиной. Как вы могли заметить, понятие это вам уже давно знакомо. Просто у него появилось более-менее «научное» название.

Каждый из пользователей интернета хоть раз в жизни сталкивался с интернет-провайдерами

Как можно провести интернет?

Практически в любом малом и большом городе имеются интернет-провайдеры. Тот же Ростелеком, например, является поставщиком интернет-услуг. Получается, чтобы вам в дом или квартиру провели сеть, достаточно просто написать заявление в одной из точек продаж. Если вы не знаете адрес, то вам на помощь придут следующие источники информирования:

  • Они сами вас найдут. Как бы смешно не звучало, но пословица «Если гора не идёт к Магомеду, то Магомед идёт к горе» очень хорошо описывает эту ситуацию. Сейчас практически нет жилого помещения без выхода в глобальную сеть. У провайдеров большая конкуренция, поэтому они сами стараются найти новых пользователей. Так что, чаще всего, команда той или иной фирмы сама наведается к вам домой, представляя услуги своей компании. В крайнем случае они везде развешивают рекламные флайеры, баннеры, всевозможные плакаты, посему вы никак не упустите их из виду.
  • Телевидение. По телевизору часто крутят рекламу, где вы можете увидеть адрес нахождения или телефон справочной службы необходимого провайдера .
  • Интернет. Небольшой парадокс, однако во Всемирной паутине можно найти практически любую информацию. Возьмите смартфон или попросите друга, и он обязательно найдёт вам необходимые адреса и номера телефонов.

Ну что ж, теперь вы знаете, как найти провайдера (если по каким-то непонятным причинам он сам до сих пор не нашёл вас). Ещё необходимо ознакомиться с некоторыми подсказками, которые помогут вам сделать всё правильно. Важно подобрать оптимальный тарифный план. Чаще всего, работники организации сами сделают это за вас, подсказывая цены и предоставляемую скорость. Если ваше подключение будет через ADSL, важно знать, какую скорость сможет «потянуть» проведённый кабель. То есть, если вы подключите скорость 70 МБит/с, а кабель поддерживает лишь 20 Мбит/с, то вам нет смысла переплачивать.

Также стоит отметить использование роутеров. Чаще всего, провайдеры предлагают свои модемы (с поддержкой Wi-Fi). Но вы можете отказаться и приобрести в магазине совершенно другой (подходит для более опытных пользователей). В домашних условиях такого роутера хватит с головой, поэтому не стоит заморачиваться по этому поводу.

Подключение и настройка ISP

Обычно, установка ISP осуществляется сотрудниками организации, которая в дальнейшем будет предоставлять вам интернет-услуги. Поэтому настройка и подключение не должны ложиться на ваши хрупкие плечи. Однако бывают случаи, когда компания предлагает такую «помощь» за отдельную плату (может даже большую). Поэтому, на всякий случай, ознакомьтесь с небольшой инструкцией, которая поможет узнать, как осуществляется установка ISP-подключения.

  1. Стоит отметить, что кабель в дом проведёт сам провайдер. То есть, вам не нужно заниматься этим вопросом. Если это оптоволокно, то вам нужно будет включить шнур в роутер или модем, или же напрямую к сетевому адаптеру компьютеру (если нужно подключить только одно устройство).

  1. В частных домах чаще всего используется ADSL-кабель . В этом случае нужно будет провести шнур от домашнего телефона к роутеру, после чего переходить к настройкам.

  1. Все современные провайдеры поставляют в комплекте не только модем, но и установочный диск, который поможет вам сделать подключение.

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

Заключение

Сегодня вы узнали о том, что такое ISP-подключение и как его настроить. Как видите, это оказалось простым интернет-соединением , которое предоставляет вам интернет-провайдер. Приятного использования, друзья! Делимся в комментариях с другими пользователями информацией о том, услугами какого провайдера пользуетесь вы.

Узлы могут подключаться к ISP (поставщику услуг Интернета) и Интернету несколькими способами.

Получение публичного или частного адреса зависит от метода подключения узла.

Прямое подключение

У некоторых клиентов есть только один компьютер с непосредственным подключением к поставщику услуг Интернета через модем. В данном случае публичный адрес с сервера DHCP поставщика услуг Интернета присваивается только одному узлу.

Подключение через интегрированный маршрутизатор

Если к Интернету нужно подключить несколько узлов, модем поставщика услуг Интернета можно соединить не с одним компьютером, а непосредственно с интегрированным маршрутизатором. Таким образом создается домашняя сеть или сеть малого предприятия. Интегрированный маршрутизатор получает от поставщика услуг Интернета публичные адреса. Внутренние узлы получают от маршрутизатора частные адреса.

Подключение через шлюз

Шлюзы объединяют в себе интегрированный маршрутизатор и модем и подключаются непосредственно к поставщику услуг Интернета. Как и в случае с интегрированными маршрутизаторами, шлюз получает от поставщика услуг Интернета публичный адрес, а ПК во внутренней сети получают от шлюза частные адреса.


Иногда ошибки ISP.js и другие системные ошибки JS могут быть связаны с проблемами в реестре Windows. Несколько программ может использовать файл ISP.js, но когда эти программы удалены или изменены, иногда остаются "осиротевшие" (ошибочные) записи реестра JS.

В принципе, это означает, что в то время как фактическая путь к файлу мог быть изменен, его неправильное бывшее расположение до сих пор записано в реестре Windows. Когда Windows пытается найти файл по этой некорректной ссылке (на расположение файлов на вашем компьютере), может возникнуть ошибка ISP.js. Кроме того, заражение вредоносным ПО могло повредить записи реестра, связанные с MSDN Disc 1846. Таким образом, эти поврежденные записи реестра JS необходимо исправить, чтобы устранить проблему в корне.

Редактирование реестра Windows вручную с целью удаления содержащих ошибки ключей ISP.js не рекомендуется, если вы не являетесь специалистом по обслуживанию ПК. Ошибки, допущенные при редактировании реестра, могут привести к неработоспособности вашего ПК и нанести непоправимый ущерб вашей операционной системе. На самом деле, даже одна запятая, поставленная не в том месте, может воспрепятствовать загрузке компьютера!

В связи с подобным риском мы настоятельно рекомендуем использовать надежные инструменты очистки реестра, такие как WinThruster (разработанный Microsoft Gold Certified Partner), чтобы просканировать и исправить любые проблемы, связанные с ISP.js. Используя очистку реестра , вы сможете автоматизировать процесс поиска поврежденных записей реестра, ссылок на отсутствующие файлы (например, вызывающих ошибку ISP.js) и нерабочих ссылок внутри реестра. Перед каждым сканированием автоматически создается резервная копия, позволяющая отменить любые изменения одним кликом и защищающая вас от возможного повреждения компьютера. Самое приятное, что устранение ошибок реестра может резко повысить скорость и производительность системы.


Предупреждение: Если вы не являетесь опытным пользователем ПК, мы НЕ рекомендуем редактирование реестра Windows вручную. Некорректное использование Редактора реестра может привести к серьезным проблемам и потребовать переустановки Windows. Мы не гарантируем, что неполадки, являющиеся результатом неправильного использования Редактора реестра, могут быть устранены. Вы пользуетесь Редактором реестра на свой страх и риск.

Перед тем, как вручную восстанавливать реестр Windows, необходимо создать резервную копию, экспортировав часть реестра, связанную с ISP.js (например, MSDN Disc 1846):

  1. Нажмите на кнопку Начать .
  2. Введите "command " в строке поиска... ПОКА НЕ НАЖИМАЙТЕ ENTER !
  3. Удерживая клавиши CTRL-Shift на клавиатуре, нажмите ENTER .
  4. Будет выведено диалоговое окно для доступа.
  5. Нажмите Да .
  6. Черный ящик открывается мигающим курсором.
  7. Введите "regedit " и нажмите ENTER .
  8. В Редакторе реестра выберите ключ, связанный с ISP.js (например, MSDN Disc 1846), для которого требуется создать резервную копию.
  9. В меню Файл выберите Экспорт .
  10. В списке Сохранить в выберите папку, в которую вы хотите сохранить резервную копию ключа MSDN Disc 1846.
  11. В поле Имя файла введите название файла резервной копии, например "MSDN Disc 1846 резервная копия".
  12. Убедитесь, что в поле Диапазон экспорта выбрано значение Выбранная ветвь .
  13. Нажмите Сохранить .
  14. Файл будет сохранен с расширением.reg .
  15. Теперь у вас есть резервная копия записи реестра, связанной с ISP.js.

Следующие шаги при ручном редактировании реестра не будут описаны в данной статье, так как с большой вероятностью могут привести к повреждению вашей системы. Если вы хотите получить больше информации о редактировании реестра вручную, пожалуйста, ознакомьтесь со ссылками ниже.

После событий 11 сентября в США организация IMO - International Maritime Organization (Международная морская организация) - приняла решение разработать, рекомендовать и внедрить комплекс мер безопасности в отношении морских судов, портовых сооружений и оборудования по всему миру. Комплекс этих мер, получивших название International Ship and Port Facility Code , или сокращенно ISPS , был внедрен в соответствии с Международная конвенцией по охране человеческой жизни на море (International Convention for the Safety of Life at Sea, или SOLAS) от 1974 года и в настоящее время он прописан в главе XI-2. В отличие от процедуры данный набор процедур является обязательным и этот сбор оплачивается всегда.

Основные функции кода ISPS состоят в следующем:

  • создание стандартизированного глобального подхода к вопросу безопасности на морском транспорте по всему миру;
  • данный инструмент позволяет различным странам, присоединенным к ISPS, обнаруживать и оценивать риски безопасности в отношении заходящих в порт судов, а также принимать соответствующие меры для того, чтобы определить, каким уровням безопасности они должны следовать по отношению к тому или иному судну, и какие превентивные меры к ним принимать;
  • распределение ролей и мер ответственности между всеми заинтересованными сторонами (правительствами и правительственными агентствами, администрациями портов, шиппинговыми и портовыми агентами) как в рамках всего мира, так и внутри отдельной страны, обеспечивая безопасность морского судоходства;
  • обмениваться / предоставлять информацию, связанную с вопросами безопасности на морском транспорте;
  • гарантировать судовладельцам необходимый уровень безопасности для их судов в том или ином порту, в который они заходят.

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

Уровни безопасности вводятся в действие администрацией соответствующего порта после консультаций с местными органами власти. Введение того или иного уровня производится администрацией порта после консультаций с прибывающими морскими судами.

Существует 3 уровня безопасности:

Normal. Уровень, при котором суда и порт работают в обычном режиме. Принимаются минимальные меры безопасности.

Heightened. Повышенный уровень, который применяется при достаточно высоком риске возникновения какого-либо индидента в системе безопасности. На период действия данного режима предпринимаются дополнительные меры по защите порта и кораблей. Временной интервал, на который распостраняется этот режим, определяется экспертами по безопасности.

Exceptional. Исключительный уровень. В данном случае предполагается, что инцидент неминуем. На период действия режима предпринимаются особые меры безопасности. Эксперты работают в тесном контакте с местными властями, следуют особым протоколам и инструкциям.

Материал подготовлен специалистами компании G lobal F reight S olutions