как узнать даташит платы
Что такое даташит и зачем он нужен?
Ищем данные о характеристиках радиодеталей
При ремонте и конструировании современной радиоэлектронной аппаратуры очень часто возникает необходимость в информации о конкретных радиоэлементах: диодах, транзисторах, микросхемах и многих других деталях.
Производством и разработкой электронных компонентов занимаются сотни различных фирм, а предлагаемый ассортимент постоянно увеличивается и обновляется.
В настоящее время рынок радиоэлектронных компонентов заполнен разношёрстным импортом. Каких только обозначений не встретишь на корпусах современных радиоэлементов: 2SB764, LA78040, BA1404, LM1117, SN74HC05N, 1N5822, PAM8403, CD5954, MC34063AP, список можно продолжать до бесконечности.
Как же не запутаться в этих цифро-кодовых обозначениях и найти информацию по конкретному компоненту?
Для опытных радиолюбителей это не проблема. Для начинающих электронщиков разобраться в том, что же скрывается в миниатюрном пластиковом корпусе с непонятной маркировкой порой не так-то просто.
Узнать подробную информацию об электронном компоненте можно из его «даташита» (от англ. – datasheet). Он же справочный лист, техническая документация или описание электронного компонента или изделия. В нём приводятся все характеристики прибора, например, для транзистора – тип проводимости, цоколёвка, тип корпуса, размеры, кодовое обозначение, приводятся всевозможные характеристики, графики зависимостей и многое другое. Имея подробную информацию о радиоэлементе можно быстрее найти ему замену .
Особенно важна информация по современным микросхемам. В описании, как правило, приводятся стандартные схемы включения с обозначением номиналов и параметров элементов обвязки. Также указывается сферы применения данной микросхемы и её особенности. Для начинающего радиолюбителя такая информация крайне важна, поскольку позволяет понять назначение и функционал микросхемы, узнать её схему включения, величину номинального и максимального питающего напряжения, назначение выводов и т.д.
Умение работать с технической документацией, это одно из важных качеств специалиста, работающего с электронной техникой.
Где же можно найти описания (datasheet) для радиодеталей?
Очень большое количество описаний всевозможных полупроводников можно найти на сайте www.alldatasheet.com
На момент написания статьи на сайте доступно более 20 миллионов описаний радиоэлементов. Каждый месяц база пополняется более чем на 30 000 описаний! В сутки ресурс обрабатывает более 370 000 поисковых запросов пользователей!
Было бы глупо не воспользоваться возможностями такого мощного сайта.
Как же пользоваться данным сайтом?
Зайдя на главную страницу сайта, мы увидим поле ввода поискового запроса.
Поиск выдал нам два результата.
Далее жмём на значке . Откроется новая страница.
На новой странице щёлкаем по изображению, которое выглядит как документ.
После этого откроется ещё одна страница и во внутреннем окне начнётся процесс загрузки PDF документа с информацией на электронный компонент.
После полной загрузки даташита его можно просмотреть. При необходимости его можно сохранить на компьютере, как и любой другой PDF файл. Сделать это можно, нажав на кнопку в виде дискеты, которая расположена на панели инструментов.
Появиться окно, где необходимо указать, где сохранить PDF файл и как он будет назван. Кроме такого способа сохранить даташит есть ещё один. Жмём правой кнопкой мыши на любом месте документа и в выпадающем меню выбираем «Сохранить как…». Всё довольно знакомо.
Также можно распечатать даташит прямо из браузера. Для этого жмём кнопку с изображением принтера и указываем настройки печати.
В PDF документе приводится описание микросхемы PB137: структурная схема, стандартная схема включения, электрические характеристики, краткое описание назначения микросхемы, изображение корпуса прибора, таблицы с параметрами.
К сожалению все документы на иностранном языке (в основном на английском). При переводе интересующей информации можно пользоваться on-line переводчиками, например, переводчиком от Google.
3 способа скачать datasheet микросхем импортного производства
Способ 1. Поиск datasheet Analog Devices на сайте производителя
3) В результатах поиска ищите раздел Data Sheets 1 или подраздел Data Sheets в описании компонента:
4) Кликайте на гиперссылки и получайте нужную информацию.
Способ 2. Поиск Maxim datasheet на сайте международного стока
3) В результатах поиска ищем нужный нам вариант партийного номера и кликаем на его название и переходим в детальное описание микросхемы Maxim:
4) В карточке товара находим иконку Datasheet и кликаем на нее.
5) В результате файл сохраниться на вашем компьютере.
Способ 3. Поиск Intel datasheet на сайте Электроника-РА
3) В результатах поиска находим нужным компонент и кликаем на название нужного компонента
4) В карточки товара в поле 1 находим гиперссылку спецификация и кликаем на нее.
5) Файл будет сохранен на ваш компьютер (на рабочий стол, папку загрузки или другое место)
Infineon datasheet
Datasheet микросхем на русском языке
Заключение
Другие наши статьи вы можете найти в разделе сайта Статьи
Подпишитесь и получайте уведомления о наших новых статьях:
Наши проекты
Заявка на поставку импортных микросхем
Как найти схему
Большая часть неисправностей, с которыми приходится сталкиваться ремонтнику, чаще всего имеет, так называемые, типовые причины- «беременные» конденсаторы, отвалившиеся пайки, перегоревшие светодиоды и такие проблемы устраняются довольно легко.
Однако иногда приходится сталкиваться и с более неприятными явлениями- например с выгоревшими напрочь деталями или элементами с нечитаемой SMD маркировкой.
В этих случая сразу-же встает вопрос необходимости поиска схемы на аппарат, и вот тут многие новички допускают одну общую ошибку- пытаясь найти схему, осуществляют поиск по модели телевизора, что не совсем правильно.
Дело в том, что
Во-первых : многие производители сильно не заморачиваются насчет собственных разработок и производств, а просто используют готовое решение- комплектуют телевизор из готовых модулей.
Во-вторых многие модели могут иметь совершенно одинаковые «потроха», однако название модели телевизора может отличаться из-за каких- то дополнительных функций или небольшой разницы в дизайне.
Так, к примеру, распространенное шасси Vestel 11AK30 можно было встретить в некоторых моделях телевизоров Горизонт, Sanyo и Rainford.
Шасси M10 встречалось в Рубинах, Ролсенах и некоторых моделях LG и так можно перечислять очень и очень долго…
Итак, друзья мои, как лучше всего поступить если возникла необходимость найти схему?
В первую очередь пытаемся определить какое шасси применяется в данной модели.
На большинстве шасси название указывается на нем самом. Вот пара примеров:
Если нужно увеличить картинки- кликайте по ним
Древнее Самсунговское шасси SCV-11C
Или шасси CV512H-B42
После того как мы определились с названием, на нашем сайте имеется поисковая строка- туда мы это название и вбиваем
Жмем ENTER, и поиск выдаст нам все результаты, в которых упоминается данная фраза
Вариант второй — на шасси может быть не указано название (Довольно распространенное явление для кинескопных моделей Калининградской сборки). Здесь, конечно-же можно попробовать воспользоваться поиском по названию
Правда тут я вынужден немного оговориться: хотя мы и стараемся постоянно наполнять сайт новой информацией, невозможно «объять необъятное»- чего-то у нас может и не оказаться, и поэтому можно попробовать определить название шасси через поисковые системы (например тот-же Яндекс).
Повторюсь: ищем именно название шасси!!
И затем уже можно повторить поиск по сайту
Если мы ищем схему не на весь телевизор полностью, а лишь на его часть- например драйвер светодиодной подсветки или источник питания.
В данном случае можно воспользоваться поиском не полностью всего модуля, а лишь найти даташит или схему включения применяемых в нем микросхем.
Например — имеется источник питания, выполненный на микросхеме OB2263, у которой напрочь выгорела вся мелочь в обвязке. Как быть? находим схемы, где эта микросхема применяется
Так как микросхема всегда имеет стандартную схему включения, то и номиналы элементов в ее обвязке должны быть стандартными.
Правда иногда могут быть отличия, но они, как правило, не существенные.
Ну и наконец- если Вам все-таки не удалось найти нужную схему- Вы всегда можете заглянуть к нам на форум, однако при регистрации у нас имеются кое-какие правила
Как читать data sheet на микросхемы?
В статье рассматриваются технические описания компонентов в документации производителя (data sheet). Несмотря на кажущуюся ясность data sheet, возможны различные трактовки описанных в них характеристик. Неправильное понимание какого-либо параметра может привести к ошибкам в проекте, исправление которых потребует немало финансовых и временных затрат. Имеет смысл, не ограничиваясь одной статьей, начать разговор на тему, интересующую многих инженеров. Мы надеемся, что разработчики поделятся опытом и расскажут о «подводных камнях», встреченных ими в процессе создания проектов.
Недавно, разыскивая нужную мне информацию, я увидел статью [1], которая меня заинтересовала. По времени это совпало с одним довольно неприятным случаем в компании, причиной которого явилось не очень внимательное прочтение data sheet на микропроцессор, и подумалось, что будет небесполезным познакомить читателей с вольным, хотя и близким к оригиналу, изложением упомянутой статьи.
Инженер-разработчик, постоянно решающий десяток задач параллельно, часто не имеет времени на тщательное изучение data sheet. Как правило, изучение ограничивается несколькими первыми страницами и беглым просмотром остальных. Какую же информацию получает и может получить инженер?
Существуют неписаные правила, по которым создаются data sheet на микросхемы: первая страница содержит заголовки, цель которых привлечь внимание разработчика. Чаще всего на первой странице перечисляются основные параметры и характеристики, области применения, приводится структурная схема. Иногда здесь же указываются максимальные и минимальные величины, а иногда — типовые параметры (причем, разные изготовители по-своему трактуют термин «типовые»). Следует иметь в виду, что над созданием data sheet, и особенно, первой страницы, работают не только технические специалисты, но и специалисты по маркетингу и рекламе. Поэтому не следует принимать решение, основываясь только на «титульной» информации, нужно обязательно уточнять те или иные сведения в соответствующих разделах data sheet.
Параметры и характеристики, представленные на первой странице, как правило, подчеркивают уникальность микросхемы, и им следует уделить внимание. Например, наличие у микросхемы функции блокировки может вызывать ее отключение при переходных процессах, если не учесть особенности работы блокировки. Широкий диапазон напряжения питания (скажем, 3…5,5 В), о котором говорится на первой странице, может означать наличие у данной микросхемы двух типономиналов, один из которых работает при напряжении питания 4,5…5,5 В, а другой в диапазоне 3…4,5 В. Однако о наличии двух типономиналов можно узнать только в одном из последующих разделов.
Иногда на первой странице приводится таблица назначения выводов микросхемы. Однако следует иметь в виду, что встречаются случаи, когда один и тот же вывод может иметь разные названия в таблице и в тексте. Скажем, вывод 4 в таблице назван «вход+», а далее по тексту data sheet этот же вывод может называться «неинвертирующим входом». Изучая схему включения и рассматривая возможность ее использования в своей разработке, следует иметь в виду, что любая ИС разрабатывается для конкретного применения. Приведенная схема включения соответствует именно ему. Реально же таких схем может быть две, три и более. И ни одна бригада инженеров по применению, участвующая в подготовке материалов для data sheet, не в силах предусмотреть все.
Следует соблюдать требования приводимой в data sheet таблицы absolute-maximum ratings, изучить которую необходимо очень внимательно. Название таблицы чаще всего переводится как «предельно допустимые режимы эксплуатации» или как «предельные режимы эксплуатации». Различные, хоть и схожие формулировки свидетельствуют о различном понимании этих параметров среди отечественных инженеров. Следует рассчитывать схему так, чтобы при любых условиях (в том числе и при переходных процессах) ни один из предельных параметров не достигался. Иначе снижается надежность ИС. Превышение любого из предельных параметров может привести к выходу микросхемы из строя. Сочетание даже двух предельных режимов недопустимо.
Одним из таких режимов является температура, воздействующая на микросхему. В data sheet обычно указываются три температуры: окружающей среды, перехода и хранения. Температура окружающей среды указывается, как правило, в диапазоне температур: от минимальной до максимальной. Производитель гарантирует электрические параметры микросхемы только в пределах диапазона рабочих температур. В некоторых случаях выход за границы диапазона рабочих температур может привести к выходу ИС из строя. Диапазоны рабочих температур не стандартизованы, и каждый производитель микросхем волен устанавливать их по своему усмотрению или по требованию заказчика.
В определенной степени общепризнанными являются три диапазона рабочих температур: коммерческий (commercial, обозначаемый обычно буквой C), промышленный (industrial, для обозначения используется буква I) и военный (military, M). Коммерческий диапазон рабочих температур составляет обычно 0…70°С (иногда –10…70°С), промышленный –20…85°С и военный: –55…125°С. Конкретные величины диапазонов рабочих температур приводятся в data sheet, и их необходимо учитывать при выборе режимов эксплуатации ИС.
Следующим предельным режимом является температура перехода. Термин этот был позаимствован для первых микросхем из характеристик транзисторов, ибо в то время микросхемы представляли собой один-два транзистора. И хотя количество транзисторов (и, соответственно, переходов) в микросхемах выросло многократно, термин остался. Правда, сегодня под ним понимается температура не одного отдельно взятого перехода, а любого из имеющихся на кристалле, то есть температура кристалла. В большинстве случаев это одна и та же величина — 150°С. Превышение этой температуры ведет к выходу ИС из строя. Понятно, что в реальных условиях невозможно измерить температуру перехода у корпусной микросхемы. Поэтому производитель указывает в data sheet либо температуру на корпусе ИС (иногда в конкретном месте корпуса), либо приводит такой параметр, как тепловое сопротивление переход–корпус, с помощью которого легко рассчитать предельную температуру корпуса микросхемы. Температура перехода или температура корпуса обычно указываются для ИС, имеющих большую выходную или рассеиваемую мощность.
И наконец, температура хранения. Другими словами, это температура, при которой может находиться микросхема в нерабочем состоянии. Обычно она тоже определяется диапазоном температур: от отрицательной величины до положительной. И хотя диапазон этот достаточно широк, следует принять меры, исключающие выход за указанные границы, так как это влечет за собой снятие гарантий производителя ИС.
Большинство современных микросхем имеет защиту от электростатического разряда (ЭСР), но следует ознакомиться с разделом, где указывается устойчивость ИС к ЭСР и приводятся меры предосторожности, чтобы исключить воздействие статического электричества. Даже если такие рекомендации отсутствуют, лучше считать, что микросхема чувствительна к ЭСР, и предпринимать хотя бы элементарные меры предосторожности: не брать микросхему руками, работать заземленным инструментом и т.д.
После таблицы absolute-maximum ratings обычно следуют таблицы, содержащие электрические параметры микросхемы. Как правило, во всех data sheet эти таблицы имеют примерно одинаковое количество столбцов: «наименование параметра», «обозначение параметра» («символ»), «единица измерения», «условия измерения» и «значение параметра». Как уже отмечалось, стандартной формы data sheet не существует, поэтому порядок столбцов у разных производителей может быть различным, столбцы могут объединяться или делиться.
Несмотря на многолетнюю активную работу Международной электротехнической комиссии (МЭК) по стандартизации терминов, определений и условных обозначений электрических параметров, в data sheet до сих пор можно встретить необщепринятые названия и условные обозначения уже стандартизованных параметров. Поэтому, даже если все параметры, приведенные в таблице, кажутся знакомыми и понятными на первый взгляд, нужно удостовериться в том, что наименования и условные обозначения поняты правильно.
Столбец «условия измерения» содержит данные обо всех режимах, при которых получены значения основных параметров, указанные в следующем столбце. Обычно в столбце «условия измерения» приводят данные о температуре окружающей среды (для мощных ИС — температуре корпуса), напряжении питания, сопротивлении источника сигнала, сопротивлении нагрузки, рабочей или тактовой частоте и т.д. Иногда основной режим измерения указывают в пояснении к таблице, а в самой таблице приводятся только уточнения или отличия от основного режима. Большинство параметров измеряется при номинальном напряжении питания и температуре окружающей среды 25°C. Но некоторые параметры могут измеряться при минимальном или максимальном напряжении питания, минимальной и максимальной температуре окружающей среды.
И наконец, столбец «значение параметра». Почти во всех data sheet он обычно разделен на три колонки: min, typ, max, в которые записываются минимальное, типовое и максимальное значения параметра, соответственно. Если с минимальным и максимальным значениями все более-менее понятно, то с величинами, записанными в колонку typ, следует обращаться с большой осторожностью. Как уже отмечалось, разные производители по-разному понимают этот термин. Кроме того, следует иметь в виду, что «типовые» значения были получены на начальном этапе производства, при испытании достаточно небольшого количества первых микросхем. Со временем изнашиваются маски, вносятся изменения в техпроцесс, что, несомненно, влияет как на конкретные величины параметров изготавливаемых микросхем, так и на их статистическое распределение. Поэтому реальное типовое значение параметра у конкретной партии микросхем может значительно отличаться от величины, записанной в data sheet. Типовое значение параметра следует рассматривать как характеристику его поведения в определенных условиях и не делать расчеты на его основе, особенно в тех случаях, когда отсутствуют минимальные и максимальные величины этого же параметра.
Информация, которую несут графики, полезна для разработчика. И при расчете схемы нужно ориентироваться не только на те величины, которые приведены в таблицах электрических параметров, но и учитывать приведенные на графиках зависимости параметров друг от друга. При этом необходимо иметь в виду, что графики только иллюстрируют характер зависимости, но никак не устанавливают точное числовое соответствие между параметрами. Кроме того, как и в случае с типовым значением параметра, нужно понимать, что все зависимости «сняты» на довольно небольшом количестве микросхем, скорее всего, при первом выпуске, и отражают усредненные величины. Более того, при внимательном анализе графиков можно обнаружить, что условия, при которых снимались зависимости, и условия, при которых нормировались величины параметров в таблицах, могут существенно отличаться, то есть на графике и в таблицах могут быть указаны разные величины одного и того же параметра.
Описание самой микросхемы и схем ее применения весьма привлекательны и информативны. Каждая из схем применения этого раздела была построена и проверена инженерами по применению. Однако это совсем не означает, что она будет работать, когда ее построите вы. Поэтому любую из приведенных схем применения следует рассматривать всего лишь как начальную точку вашей собственной разработки. Инженеры по применению разрабатывают схемы, которые функциональны и привлекательны для читающего data sheet, но эти схемы могут оказаться неработоспособными при массовом производстве.
1. Постарайтесь, несмотря на нехватку времени, прочитать data sheet «от корки до корки», тщательно анализируя и сопоставляя информацию.
2. Никогда не используйте типовые значения параметров и величины из графиков зависимостей для расчета вашей схемы. Используйте их только для того, чтобы понять характер поведения параметра в различных условиях.
3. При любых сомнениях в правильности понимания информации, приведенной в data sheet, или недостаточности такой информации, обязательно обращайтесь в службу технической поддержки производителя ИС.
Как и зачем читать даташиты, если микроконтроллеры – ваше хобби
Микроэлектроника – модное увлечение последних лет благодаря волшебному Arduino. Но вот беда: при должном интересе перерасти DigitalWrite() получается быстро, а что делать дальше – не совсем ясно. Разработчики Arduino приложили немало усилий для снижения порога вхождения в свою экосистему, но за ее пределами по-прежнему колышется темный лес суровой схемотехники, малодоступный любителю.
Например, даташиты. Вроде бы в них есть все, бери и пользуйся. Но только их авторы явно не ставят перед собой задачу популяризации микроконтроллеров; иногда кажется, что они специально злоупотребляют непонятными терминами и аббревиатурами при описании простых вещей, чтобы максимально запутать непосвященного. Но не все так плохо, при желании ларчик открывается.
В этой статье я поделюсь опытом общения гуманитария с даташитами в хобби-целях. Текст предназначен для выросших из штанишек Arduino любителей, он предполагает некоторое представление о принципах работы микроконтроллеров.
Начну с традиционного
Мигаем светодиодом на Ардуино
«Что это? – Спросит искушенный читатель. – Зачем ты что-то пишешь во входной регистр PINB? Он же только для чтения!» Действительно, документация Arduino, как и большинство учебных статей в интернете, утверждает, что этот регистр read-only. Я и сам так думал, пока не перечитал даташит к Atmega328p, готовя это статью. А там:
Это относительно новый функционал, его не было на Atmega8, о нем не все знают или не упоминают из соображений обратной совместимости. Но вполне годный для демонстрации мысли, что даташиты стоит читать, чтобы использовать все возможности чипа, включая малоизвестные. И это не единственная причина.
Зачем еще читать даташиты
Обычно ардуинщики, наигравшись со светодиодами и AnalogWrite’ами, начинают подключать к плате всякие модули и чипы, для которых есть уже написанные библиотеки. Рано или поздно появляется библиотека, работающая не так, как надо. Тогда любитель начинает ее ковырять, чтобы починить, а там.
А там происходит что-то категорически непонятное, поэтому приходится отправляться в гугл, читать многочисленные тьюториалы, дергать по частям чей-то подходящий код и наконец добиваться своего. Это дает мощное ощущение свершения, но на самом деле процесс напоминает изобретение велосипеда путем реверс-инжиниринга мотоцикла. Причем понимания, как работает этот велосипед, не прибавляется. Знаю, поскольку сам этим занимался довольно долго.
Если бы я вместо этого увлекательного занятия потратил пару дней на изучение документации к Atmega328, я бы сэкономил огромное количество времени. В конце концов, это довольно простой микроконтроллер.
Таким образом, читать даташиты надо хотя бы для того, чтобы представлять себе, как вообще устроен микроконтроллер и что он умеет делать. И еще:
Зачем писать в регистры напрямую, когда есть HAL и LL?
Словарик
HAL, Hardware Abstraction Layer – библиотека для управления микроконтроллером с высоким уровнем абстракции. Если надо использовать интерфейс SPI1, просто настраиваем и включаем SPI1, не задумываясь, какие регистры за что отвечают.
LL, Low Level API – библиотека, содержащая макросы или структуры с адресами регистров, позволяющая обращаться к ним по имени. DDRx, PORTx, PINx на Атмеге – это LL.
Споры на тему «HAL, LL или регистры» регулярно случаются в комментариях на Хабре. Не претендуя на доступ к астральному знанию, просто поделюсь своим любительским опытом и соображениями.
Более-менее разобравшись с Атмегой и начитавшись статей про прекрасности STM32, я накупил полдюжины разных плат – и Discovery, и «Синие Таблетки», и даже просто чипы под свои самоделки. Все они два года пылились в коробке. Иногда я говорил себе: «все, с этих выходных осваиваю STM», запускал CubeMX, генерил сетап для SPI, смотрел на получившуюся стену текста, обильно сдобренную копирайтами STM, и решал, что это как-то уж слишком.
Разобраться, что тут понаписал CubeMX, конечно, можно. Но одновременно понятно, что запомнить все формулировки, чтобы потом писать их руками, нереально. А уж дебажить это, если я случайно забуду в Кубе поставить какую-нибудь галочку, – совсем привет.
Прошло два года, я по-прежнему облизывался в ST MCU Finder на всякие вкусные, но недоступные моему пониманию чипы, и случайно наткнулся на замечательную статью, пусть и про STM8. И внезапно понял, что все это время стучался в открытую дверь: регистры у STM устроены так же, как у любого другого МК, и для работы с ними Куб необязателен. А что, так можно было.
HAL и конкретно STM32CubeMX – инструмент для профессиональных инженеров, плотно работающих с чипами STM32. Главная фишка – высокий уровень абстракции, возможность быстро мигрировать с одного МК на другой и даже с одного ядра на другое, оставаясь в рамках линейки STM32. Любители с такими задачами сталкиваются редко – наш выбор МК, как правило, ограничен ассортиментом AliExpress, и мы чаще мигрируем между кардинально разными чипами – переезжаем с Атмеги на STM, с STM на ESP, ну или что там нам новенького подкинут китайские друзья. HAL здесь не поможет, а времени его изучение съест немало.
Остается LL – но от него до регистров полшага. Лично я нахожу написание своих макросов с адресами регистров полезным: я внимательнее изучаю даташит, думаю, что мне потребуется в будущем, а что точно нет, лучше структурирую свои программы, ну и вообще преодоление способствует запоминанию.
Кроме того, есть нюанс с популярным STM32F103 – для него существуют две несовместимые версии LL, одна официальная от STM, вторая – от Leaf Labs, используемая в проекте STM32duino. Если писать open-source библиотеку (а у меня была именно такая задача), надо либо делать две версии, либо обращаться к регистрам напрямую.
Наконец, отказ от LL, на мой взгляд, упрощает миграцию, особенно если закладываться на нее с самого начала работы над проектом. Утрированный пример: напишем ардуиновский blink в Atmel Studio без LL:
Чтобы этот код замигал светодиодом на китайской платке с STM8 (из ST Visual Desktop), в нем достаточно поменять два адреса:
Да, я использую особенность подключения светодиода на конкретной плате, мигать будет очень медленно, но будет же!
Какие бывают даташиты
В статьях и на форумах, и русско-, и англоязычных, под «даташитами» понимают любую техническую документацию к чипам, так же поступаю и я в этом тексте. Формально они – лишь один из видов такой документации:
Datasheet – ТТХ, тактико- технические характеристики. Обязательно имеется у любого электронного компонента. Справочная информация, полезно держать под рукой, но вдумчиво читать в нем особо нечего. Впрочем, чипы попроще часто ограничиваются даташитом, чтобы не плодить лишних документов; в этом случае Reference Manual включается сюда же.
Reference Manual – собственно инструкция, здоровая книжка на 1000+ страниц. Подробно расписывается работа всего, что понапихано в чип. Главный документ для освоения микроконтроллера. В отличие от datasheet, инструкции пишут для широкой линейки МК, в них содержится много информации о периферии, отсутствующей в вашей конкретной модели.
Programming Manual или Instruction Set Manual – инструкция по уникальным командам микроконтроллера. Предназначена для тех, кто программирует на Ассемблере. Авторы компиляторов активно ее используют для оптимизации кода, поэтому в общем случае нам она не потребуется. Но заглядывать сюда полезно для общего понимания, за некоторыми специфическими командами типа выхода из прерывания, а также при активном использовании дебаггера.
Application Note – полезные советы по решению конкретных задач, часто с примерами кода.
Errata Sheet – описание случаев нестандартного поведения чипа с вариантами обхода, если есть.
Что есть в даташитах
Непосредственно в Datasheet нам могут потребоваться такие разделы:
Device Summary – первая страница даташита вкратце рассказывает об устройстве. Очень полезна в ситуациях, когда вы где-то нашли чип (увидели в магазине, выпаяли, встретили упоминание) и хотите понять, что это.
General Description – более подробное описание возможностей чипов из линейки.
Pinouts – схемы распиновки для всех возможных корпусов чипа (на какой ноге какой пин).
Pin Description – описание назначения и возможностей каждого пина.
Memory Map – карта адресов в памяти нам вряд ли потребуется, но иногда в нее включается также таблица адресов блоков регистров.
Register Map – таблица адресов блоков регистров, как правило, находится именно в даташите, а в Ref Manual – только сдвиги (address offsets).
Electrical Characteristics – в этом разделе нас в первую очередь интересуют absolute maximum ratings, перечисляющие максимальные нагрузки на чип. В отличие от неубиваемой Atmega328p, большинство МК не позволяет подключать к пинам серьезные нагрузки, что становится неприятным сюрпризом для ардуинщиков.
Package Information – чертежи доступных корпусов, полезные при проектировании своих плат.
Reference Manual структурно состоит из разделов, посвященных конкретной периферии, указанной в их заголовке. Каждую главу можно условно поделить на три части:
Overview, Introduction, Features – обзор возможностей периферии;
Functional Description, Usage Guide или просто основной блок раздела – подробное текстовое описание принципов устройства периферии и способов ее использования;
Registers – описание управляющих регистров. В простых случаях типа GPIO или SPI этого может быть вполне достаточно, чтобы начать использовать периферию, но часто приходится все-таки читать и предыдущие части.
Как читать даташиты
Даташиты с непривычки отпугивают своим объемом и обилием непонятных слов. На самом деле все не так страшно, если знать несколько лайфхаков.
Установите хорошую PDF-читалку. Даташиты пишутся в славных традициях бумажных инструкций, их здорово распечатать, проложить пластиковыми закладками и сшить. Гипертекст в них наблюдается в следовых количествах. К счастью, хотя бы структуру документа оформляют закладками, поэтому годная читалка с удобной навигацией очень нужна.
Даташит – не учебник Страуструпа, в нем не надо читать все подряд. Если воспользовались предыдущим советом – просто найдите в панели закладок нужный раздел.
Даташиты, особенно Reference Manuals, могут описывать возможности не конкретного чипа, а всей линейки. Это значит, что половина, а то и две трети информации не имеет отношения к вашему чипу. Прежде чем изучать регистры TIM7, проверьте в General Description, есть ли он у вас.
Знать английский достаточно на базовом уровне. Даташиты наполовину состоят из терминов, незнакомых среднестатистическому носителю языка, и наполовину – из простых связующих конструкций. Еще бывают прекрасные китайские даташиты на китайском английском, где половина также термины, а вторая половина – рандомный набор слов.
Если встречаете незнакомое слово, не пытайтесь перевести его с помощью англо-русского словаря. Если вас ставит в тупик hysteresis, то от перевода «гистерезис» теплее вам не станет. Пользуйтесь Гуглом, Stack Overflow, Википедией, форумами, где нужное понятие будет объяснено простыми словами с примерами.
Лучший способ понять прочитанное – проверить в деле. Поэтому держите под рукой отладочную плату, с которой знакомитесь, а лучше две – на случай, если все-таки что-то недопоняли и увидели волшебный дымок.
Полезна привычка держать под рукой даташит, когда вы читаете чей-то тьюториал или изучаете чужую библиотеку. Вполне возможно, в нем вы найдете более оптимальное решение своей задачи. И наоборот – если из даташита никак не удается понять, как же все-таки работает регистр, загуглите его: скорее всего, кто-то уже все описал простыми словами или оставил понятный код на ГитХабе.
Словарик
Немного полезных слов и обозначений, помогающих быстрее освоиться с даташитами. То, что вспомнилось в последние пару дней, дополнения и исправления приветствуются.
Электричество
Vcc, Vdd – «плюс», питание
Vss, Vee – «минус», земля
current – ток
voltage – напряжение
to sink current – работать «землей» для внешней нагрузки
to source current – питать внешнюю нагрузку
high sink/source pin – пин с повышенной «терпимостью» к нагрузке
IO
H, High – на пине Vcc
L, Low – на пине Vss
High Impedance, Hi-Z, floating – на пине ничего нет, «высокое сопротивление», он фактически невидим внешнему миру.
weak pull up, weak pull down – встроенный подтягивающий/стягивающий резистор, примерный аналог 50 кОм (см. даташит). Используется, например, чтобы входной пин не болтался в воздухе, вызывая ложные срабатывания. Weak – потому что его легко «перебить».
push pull – выходной режим пина, в котором он переключается между High и Low – обычный OUTPUT с Arduino.
open drain – обозначение выходного режима, в котором пин может быть либо Low, либо High Impedance / Floating. При этом почти всегда это не «настоящий» открытый сток, есть защитные диоды, резисторы, еще что. Это просто обозначение режима земля/ничего.
true open drain – а вот это уже настоящий открытый сток: пин напрямую ведет в землю, если открыт, или пребывает в подвешенном состоянии, если закрыт. Это значит, что через него при необходимости можно пускать напряжение больше Vcc, но максимум все равно оговаривается в даташите в разделе Absolute Maximum Ratings / Voltage.
Интерфейсы
in series – подключенные последовательно
to chain – собирать чипы в цепочку последовательным подключением, увеличивая количество выходов.
shift – сдвиг, обычно обозначает сдвиг битов. Соответственно, to shift in и to shift out – принимать и передавать данные побитно.
latch – задвижка, прикрывающая буфер, пока через него сдвигаются биты. Когда передача закончена, задвижка открывается, биты начинают работать.
to clock in – выполнить побитную передачу, сдвинуть все биты на нужные места.
double buffer, shadow register, preload register – обозначения истории, когда регистр должен уметь принимать новые данные, но придерживать их до какого-то момента. Например, для корректной работы ШИМ его параметры (скважность, частота) не должны меняться, пока не закончится текущий цикл, но новые параметры уже могут быть переданы. Соответственно, текущие держатся в shadow register, а новые попадают в preload register, будучи записанными в соответствующий регистр чипа.
Всякое
prescaler – предделитель частоты
to set a bit – установить бит в 1
to clear/reset a bit – сбросить бит в 0 (reset – фишка даташитов STM)
to toggle a bit – поменять значение бита на противоположное (см. пример в начале статьи)
Что дальше
Вообще тут планировалась практическая часть с демонстрацией трех проектов на STM32 и STM8, выполненных специально для этой статьи при помощи даташитов, с лампочками, SPI, таймерами, ШИМом и прерываниями:
Но текста получается многовато, поэтому проекты отправляются во вторую часть.