Embedded HandbookПриложения
Все разделы › 0. О справочнике
STM32F103 · уровень базовый · 13 мин чтения
Открыть в интерактивном справочнике

0д. Электричество на пальцах: напряжение, ток, сопротивление, закон Ома, светодиод с резистором, мультиметр и как не сжечь плату

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

Маршрут новичка (раздел 0а) начинается с устройства микроконтроллера и языка C. Но уже на седьмом шаге он просит посчитать резистор, а на восьмом — взять в руки мультиметр. Этот раздел готовит к обоим шагам. Он не заменяет их, а даёт слова и привычки, с которыми они читаются легко.

Опоры: никаких. Нужны школьная арифметика и плата на столе — подойдёт BluePill на STM32F103. Все числа раздела посчитаны маленьким стендом, а пределы микросхемы взяты из её описания.

Как это называется в документации

Оригинал Перевод
voltage напряжение: «напор», который толкает ток
current ток: сколько заряда проходит за секунду
resistance сопротивление: насколько трудно току пройти
ground (GND) земля: общий провод, от которого меряют все напряжения
forward voltage прямое падение: напряжение, которое светодиод «забирает себе»
breadboard макетная плата: доска с дырками, где детали соединяют без пайки
absolute maximum ratings абсолютные пределы: за ними микросхема портится
five-volt tolerant (FT) вывод, который терпит 5 вольт

0д.1 Вода в трубах: напряжение, ток, сопротивление

Электричество не видно. Поэтому его удобно представлять как воду в трубах. Сравнение не точное, но для начала его хватает.

Напряжение — это напор. Насос давит на воду, и вода хочет течь. Чем сильнее давит насос, тем больше напряжение. Меряют его в вольтах (В). Батарейка — маленький насос. Плата с микроконтроллером работает от 3,3 В, разъём USB даёт 5 В.

Ток — это поток: сколько воды проходит через трубу за секунду. Меряют его в амперах (А). Для платы ампер — очень много, поэтому чаще говорят о миллиамперах (мА): в одном ампере тысяча миллиампер.

Сопротивление — это узость трубы. Узкая труба пропускает мало воды, даже если насос сильный. Меряют сопротивление в омах (Ом). Деталь, которая нарочно мешает току, называется резистор.

Напряжение всегда меряют между двумя точками — как напор меряют относительно чего-то. Ток всегда течёт по кругу: от батарейки через лампочку и обратно в батарейку. Нет круга — нет тока. Выключатель просто разрывает этот круг.

Светодиод — особая деталь. Он похож на клапан, который пускает воду только в одну сторону, и то лишь когда напор достаточен. Красному светодиоду нужно около 2,0 В. Пока напряжения меньше, он не светит. Стоит дать больше — ток через него резко растёт.

Вода в трубах и цепь со светодиодом: насос, узкая труба, клапан и слив против вывода 3,3 В, резистора 110 Ом, светодиода и земли; внизу 3,3 В делятся на 0,4 В в самом выводе, 0,9 В на резисторе и 2,0 В на светодиоде, ток 8,18 мА по расчёту и 8,12 мА в модели цепи


0д.2 Закон Ома на трёх примерах

Три величины связаны одним правилом. Его называют законом Ома:

U = I · R

Словами: напряжение равно току, умноженному на сопротивление. Буквы взяты из учебников: U — напряжение в вольтах, I — ток в амперах, R — сопротивление в омах. Правило можно повернуть как удобно: ток — это напряжение, делённое на сопротивление; сопротивление — это напряжение, делённое на ток.

Пример 1: найти ток. К 5 В подключили резистор 1 кОм (килоом — тысяча ом). Делим 5 на 1000 — получается 0,005 А, то есть 5 мА.

Пример 2: найти напряжение. Через резистор 220 Ом течёт 10 мА (0,01 А). Умножаем 0,01 на 220 — на резисторе 2,2 В.

Пример 3: найти сопротивление. От батарейки 9 В нужен ток 3 мА (0,003 А). Делим 9 на 0,003 — нужен резистор 3000 Ом, то есть 3 кОм.

Главная ошибка в этих расчётах — миллиамперы вместо ампер. Перед делением всё переводят в вольты, амперы и омы.

Мощность и нагрев. Ток, проходя через резистор, греет его. Сколько тепла выделяется за секунду, говорит мощность — она в ваттах (Вт):

P = U · I

Словами: мощность равна напряжению на детали, умноженному на ток через неё. Резистор 100 Ом, включённый прямо на 5 В, пропускает 50 мА и выделяет 0,25 Вт. Это в 34 раза больше, чем на резисторе в цепи светодиода из следующего подраздела. Сколько ватт резистор выдерживает, написано в его описании. Если резистор горячий на ощупь — мощность выбрана неправильно.


0д.3 Светодиод: зачем ему резистор и как его посчитать

Светодиод сам ток не ограничивает. Если подать на него чуть больше нужного, ток растёт лавиной. Поэтому последовательно со светодиодом всегда ставят резистор: он забирает лишнее напряжение и держит ток в норме.

Считаем для вывода микроконтроллера (3,3 В). Вывод даёт 3,3 В. Но сам вывод — не идеальный провод: при токе 8 мА он теряет внутри себя до 0,4 В. Это число из описания STM32F103. Красный светодиод забирает 2,0 В. Значит, на резистор остаётся 3,3 − 2,0 − 0,4 = 0,9 В. Хотим ток 8 мА (0,008 А):

R = (3,3 − 2,0 − 0,4) / 0,008 = 112,5

Таких резисторов не делают: номиналы выпускают рядами. Ближайший в обычном ряду — 110 Ом. С ним ток выйдет 8,18 мА.

Считаем для 5 В. Светодиод питается прямо от 5 В, например от USB, без вывода микроконтроллера. Тогда на резистор остаётся 5 − 2,0 = 3,0 В:

R = (5 − 2,0) / 0,008 = 375

Ближайший номинал — 390 Ом, ток 7,69 мА.

Проверка стендом. Расчёт выше считает, что светодиод забирает ровно 2,0 В при любом токе. На деле его напряжение чуть меняется с током. Стенд собрал те же цепи в программе-симуляторе ngspice — с моделью светодиода, у которой ток зависит от напряжения как у настоящего. Результат: 8,12 мА вместо расчётных 8,18 и 7,70 мА вместо 7,69. Расчёт «на пальцах» работает.

А если резистор забыть? Та же модель показывает:

Цепь Ток
вывод 3,3 В → резистор 110 Ом → светодиод 8,12 мА
шина 5 В → резистор 390 Ом → светодиод 7,70 мА
вывод 3,3 В → светодиод, без резистора от 18,5 до 23,4 мА
шина 5 В → светодиод, без резистора 564 мА

Без резистора от вывода ток задаёт уже сам вывод — и это в два-три раза больше нормы в 8 мА. От 5 В ток не ограничивает ничего, кроме самого светодиода: он вспыхнет и сгорит. Точные числа без резистора зависят от модели; вывод из них один — резистор нужен всегда.

Куда уходит мощность в цепи от вывода: резистор греется на 7,4 мВт, светодиод — на 16 мВт, сам вывод — на 3,3 мВт. Вместе 27 мВт — это мало, любой маленький резистор справится. В цепи от 5 В резистор выделяет 23 мВт — тоже немного.


0д.4 Земля, общий провод и макетная плата

Земля — это точка, от которой меряют все напряжения. Её считают нулём. В воде это уровень слива: напор насоса меряют относительно него. На плате выводы земли подписаны GND. Когда говорят «на выводе 3,3 В», имеют в виду: 3,3 В между этим выводом и землёй.

Отсюда первое правило: у двух устройств, которые обмениваются сигналами, земли соединяют. Плата и переходник USB на компьютер, плата и датчик, плата и блок питания — всегда общий провод земли. Без него напряжение сигнала просто не от чего отсчитывать, и данные не идут.

Макетная плата — доска с дырками, куда детали втыкают без пайки. Под дырками спрятаны металлические полоски. Дырки на одной полоске соединены между собой, на разных — нет. Обычно устроено так:

У разных макеток бывает по-разному: например, длинная линия питания иногда разорвана посередине. Поэтому не верьте на слово — проверьте мультиметром в режиме прозвонки (0д.5): две дырки соединены, если прибор пищит.


0д.5 Мультиметр: напряжение, ток, прозвонка

Мультиметр — первый прибор на столе. У него переключатель режимов и несколько гнёзд для щупов. Чёрный щуп всегда в гнезде COM — это земля прибора. Красный — в гнездо для напряжения, а для тока — в отдельное гнездо, подписанное A или mA.

Напряжение меряют, ничего не разрывая. Режим — постоянное напряжение (значок V с прямой чертой). Чёрный щуп — на землю платы, красный — на точку, которую проверяем. Прибор стоит рядом с цепью, как манометр на трубе. Перепутали щупы — увидите число со знаком минус; это не опасно.

Ток меряют в разрыв. Цепь разрывают, и ток пускают через сам прибор: он встаёт в линию, как счётчик воды в трубе. Красный щуп переставляют в гнездо тока. Внутри прибора на этом режиме — почти провод: маленькое сопротивление, по которому прибор и судит о токе.

Прозвонка — есть ли соединение. Прибор пищит, если между щупами почти нет сопротивления. Звонят только выключенную плату: дошла ли дорожка, соединены ли две дырки макетки, не замкнуто ли питание на землю.

Чего не делать.

⚠️ Амперметр не ставят параллельно. Прибор в режиме тока — почти провод. Если коснуться им двух точек с напряжением, как при измерении вольт, получится короткое замыкание. Пусть внутри прибора 5 Ом — тогда от 5 В пойдёт 1 А, и в приборе выделится 5 Вт. Сгорит предохранитель прибора, а то и плата.


0д.6 3,3 В против 5 В: почему вывод — не источник питания

STM32F103 живёт на 3,3 В. Его описание (по-английски datasheet) даёт пределы прямо в таблицах на страницах 37, 38 и 65:

Что Предел
питание микросхемы от 2 до 3,6 В
питание, после которого она портится 4,0 В
ток одного вывода, обычный режим 8 мА
ток одного вывода, с ослабленными уровнями 20 мА
ток одного вывода, абсолютный предел 25 мА
выводы PC13, PC14, PC15 3 мА
все выводы и сама микросхема вместе 150 мА
потеря на выводе при 8 мА 0,4 В
потеря на выводе при 20 мА 1,3 В

Из таблицы три вывода.

Пять вольт на питание — нельзя. Предел — 4,0 В. Пять вольт с USB подают на вход стабилизатора, а уже он даёт микросхеме 3,3 В.

Пять вольт на вывод — только на некоторые. Выводы с пометкой FT терпят до 5,5 В. Остальные — не больше питания плюс 0,3 В, то есть 3,6 В. На BluePill из 34 выводов ввода-вывода таких 20. Например, PA9 и PA10 — FT, а PA0 — нет. Датчик на 5 В, подключённый к выводу без FT, может его испортить.

Вывод — сигнал, а не источник питания. Он рассчитан на светодиод, а не на мотор. Обмотка реле из раздела 52 потребляет 360 мВт; от 5 В это 72 мА — почти втрое больше абсолютного предела вывода. Моторчик, реле, светодиодную ленту включают через транзистор-ключ: вывод только командует, а ток идёт от отдельного питания.

И ещё одно: светодиод на самой BluePill висит на PC13, а этот вывод отдаёт всего 3 мА. Своё к нему не подключают.


0д.7 Грабли

Светодиод не горит вообще. Он пускает ток только в одну сторону — переверните его. У нового светодиода длинная ножка — плюс (анод). Ещё причина — разрыв в цепи: нет круга, нет тока. Проверьте прозвонкой.

Светодиод ярко вспыхнул и погас навсегда. Его включили без резистора. От 5 В модель даёт 564 мА — светодиод сгорел. Резистор нужен всегда.

Светодиод на выводе горит тускло, микросхема тёплая. На выводе слишком большой ток: при 20 мА вывод теряет уже 1,3 В вместо 0,4. Возьмите резистор побольше или включайте нагрузку через транзистор.

Мультиметр перестал показывать ток или запахло горелым. Амперметр поставили параллельно — сгорел предохранитель прибора. Ток меряют только в разрыв.

Плата и переходник соединены, а данные не идут. Нет общей земли. Соедините GND с GND.

Половина макетки без питания. Длинная линия питания разорвана посередине. Проверьте прозвонкой и поставьте перемычку.

После датчика на 5 В вывод перестал работать. На вывод без пометки FT подали 5 В. Такие выводы терпят не больше 3,6 В.


0д.8 Итоги

Проверь себя

  1. Зачем последовательно со светодиодом ставят резистор? - А) Чтобы светодиод светил ярче - Б) Светодиод сам ток не ограничивает: резистор забирает лишнее напряжение и держит ток в норме - В) Чтобы светодиод пропускал ток в обе стороны - Г) Резистор нужен только от 5 В, от вывода 3,3 В можно и без него
  2. Мультиметр в режиме тока приложили щупами к двум точкам с напряжением, как при измерении вольт. Что будет? - А) Прибор покажет напряжение между точками - Б) Прибор покажет ток, который течёт в цепи - В) Короткое замыкание: в режиме тока прибор — почти провод - Г) Ничего: в режиме тока щупы отключены
  3. Почему реле или моторчик не подключают прямо к выводу микроконтроллера? - А) Вывод — сигнал, а не источник питания: нагрузку включают через транзистор-ключ, а ток идёт от отдельного питания - Б) Вывод выдаёт переменное напряжение, а реле нужно постоянное - В) Реле работает только от USB - Г) Можно и прямо, если поставить резистор побольше

Проверь себя: ответы - 1 — Б. Почему: Стоит дать светодиоду чуть больше нужного напряжения — и ток растёт лавиной, поэтому резистор нужен всегда (0д.3). - 2 — В. Почему: Ток меряют только в разрыв, а амперметр параллельно замыкает точки накоротко и сжигает предохранитель прибора, а то и плату (0д.5). - 3 — А. Почему: Вывод рассчитан на светодиод, а не на мотор: он только командует ключом (0д.6).

Что дальше. Теперь можно идти по маршруту новичка (0а.1). Его первые шаги — чтение (0а.2): раздел 1 «Микроконтроллер как таковой», раздел 3 «Язык C для встраиваемых систем», раздел 3а «Битовые операции» и раздел 4 «Инструментарий». Потом этап с платой (0а.3), и там всё из этого раздела пригодится:

Застряли на маршруте — таблица трудных мест (0а.6).


Дальше: раздел 0е «Числа для железа: двоичная и шестнадцатеричная запись, биты и байты, знак и как читать 0x40021018» — после вольтов и нулей на проводе: как из выключателей получаются числа, что такое бит и байт и как прочитать адрес регистра без единой строки кода.

Открыть в интерактивном справочнике