Измерение напряжения питания
|
|
AndrF |
Дата: Пт, 10.04.2015, 17:28 | Сообщение # 16 |
Группа:
Проверенные
Ранг:
Продвинутый
Сообщений:
145
Замечания:
±
На сайте с 03.02.2012
Статус:
Offline
|
Цитата MiXaS (  ) Я видел люди даже целые модули выключают так, для экономии энергии. Порт выдерживает до 200 мА. Вообще-то, из даташита PIC18F4550 ( к примеру):
Код Maximum output current sunk by any I/O ............................................25 mA Maximum output current sourced by any I/O pin ..................................25 mA Maximum current sunk by all ports .....................................................200 mA Maximum current sourced by all ports ................................................200 mA То есть 200 mA это максимальный ток всех портов одновременно - по крайней мере надо стараться чтобы он был не более, чтобы не попалить контроллер. А у одного порта - 25 mA...
Сообщение отредактировал
AndrF - Пт, 10.04.2015, 17:30
|
|
|
|
MiXaS |
Дата: Вс, 12.04.2015, 11:49 | Сообщение # 17 |
Группа:
Проверенные
Ранг:
Разобрался
Сообщений:
545
Замечания:
±
На сайте с 02.10.2010
Статус:
Offline
|
Цитата AndrF (  ) То есть 200 mA это максимальный ток всех портов одновременно - по крайней мере надо стараться чтобы он был не более, чтобы не попалить контроллер. А у одного порта - 25 mA... Возможно! Давно не читал эту инфу, но даже 25мА для мобильного устройства, это не плохо! Можно какие–нибудь модули выключать, если у них нет режима stand by, например. Когда делал беспроводной датчик на nrf24l01+ и sht21, то отказался от этой идеи, так как у обоих приборов есть режим ожидания, ток потребления в котором измеряется в мкА, а так как при подаче питания их нужно конфигурировать, на что может тратиться больше энергии, было решено загонять их в сон, вместе с мк и каждые 2 минуты заставлять работать. Так от баратейки CR2032 датчик отработал чуть больше 2 месяцев.
|
|
|
|
xvovanx |
Дата: Вс, 12.05.2019, 19:52 | Сообщение # 18 |
Группа:
Модераторы
Ранг:
Помогаю всем
Сообщений:
355
Замечания:
±
На сайте с 02.05.2013
Статус:
Offline
|
День добрый! Столкнулся с проблемой. Для контроля напряжения CR2032 батарейки портативного устройства хочу использовать внутренний источник опорных напряжений FVR(Fixed Voltage Reference) микроконтроллера Pic12F1840. Положительным напряжением АЦП ставим U питания (батарейки), и программно на вход АЦП подключаем внутренний опорный источник (есть такая возможность в контроллере), тем самым пересчитав можем узнать U батарейки. А вот как его в коде Протона командой обозвать для замера ума не приложу. С аналоговыми входами все работает, все понятно, скажем для AN0 входа обозвал его командой "ADIn 0" и считай ступеньки АЦП, а тут то внутренний источник замерять надо, как его для замера АЦП в Протоне командой обозвать?
Сообщение отредактировал
xvovanx - Вс, 12.05.2019, 21:11
|
|
|
|
anatol |
Дата: Пн, 13.05.2019, 20:12 | Сообщение # 19 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
471
Замечания:
±
На сайте с 10.02.2010
Статус:
Offline
|
Просто устанавливаете регистр напрямую. FVRCON=10000010 - Включаете внутренний опорный источник с опорным 2.048 вольта (цена деления равна 2 милливольт). При питании от батарейки внутрений опорник не может быть больше напряжением чем напряжение питания. Через делитель (измеряемое напряжение не должно превышать опорное) измеряете обычным способом. Результат в вольтах будет равен 2мВ х результат измерения х коэфф. делителя. (к примеру намерил 999, делитель = 3 , тогда 999х3х2=5994мВ или 5.994В
Сообщение отредактировал
anatol - Пн, 13.05.2019, 20:13
|
|
|
|
xvovanx |
Дата: Вт, 14.05.2019, 08:24 | Сообщение # 20 |
Группа:
Модераторы
Ранг:
Помогаю всем
Сообщений:
355
Замечания:
±
На сайте с 02.05.2013
Статус:
Offline
|
С делителем это все ясно. Но вся суть, чтоб не тратить одну ногу на АЦП и не делать внешний делитель, который будет кушать больше, чем сам чип. Программно регистром можно источник опорного внутри чипа подключить сразу к самому АЦП без внешних коммутаций и делителей, и измеряя напругу опорного 2.048 V относительно Uбат (3V), пересчитать и вычислить напругу самой батарейки. В новых чипах есть такая полезная фишка. Не мог найти как можно считать значение АЦП, ведь аналоговые входы не используем. Кое что нашел на дружественном англоязычном сайте Протона - значения внутреннего АЦП сразу считываем с регистров ADRESH и ADRESL, типа ADC_Value = (ADRESH << 8 ) + ADRESL
Сообщение отредактировал
xvovanx - Вт, 14.05.2019, 19:09
|
|
|
|
anatol |
Дата: Ср, 15.05.2019, 21:17 | Сообщение # 21 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
471
Замечания:
±
На сайте с 10.02.2010
Статус:
Offline
|
был занят. на этой странице достаточно подробно смотри
|
|
|
|
xvovanx |
Дата: Ср, 15.05.2019, 21:59 | Сообщение # 22 |
Группа:
Модераторы
Ранг:
Помогаю всем
Сообщений:
355
Замечания:
±
На сайте с 02.05.2013
Статус:
Offline
|
Да, спасибо. Я вчера сам уже это нашел с формулами.
|
|
|
|