avatar_Яков93

О зарядных устройствах и свинцовых АКБ от А до Я (по версии Kass)

Автор Яков93, 15 Апр. 2016 в 20:41

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

serggio

Цитата: Alex_Soroka от 27 Нояб. 2018 в 10:13теперь мне окончательно понятно почему ракеты не летают и падают, и также понятно почему тупик в разработках
Тупик в разработках мы наблюдаем в некоторых авторских темах раздела

S_Kov

Цитата: Яков93 от 27 Нояб. 2018 в 08:49Ну как же, ведь пока идет обсчет этого цикла можно пропустить какое-то важное событие. Например нажатие кнопки... оооочень короткое, короче 1/3 мс.
Понял. Да, можно и прерывание. Можно, как тут писал уважаемый Паяка, использовать компаратор. Только он не совсем точно писал про наличие внутреннего программируемого логического модуля. На самом деле практически все современные контроллеры имеют такую возможность и без всякой выходной программируемой логики. По крайней мере про PIC-и могу сказать, что там есть возможность принудительно обрывать активную фазу ШИМ (на аппаратном уровне МК) по срабатыванию компаратора. А сам компаратор вообще не привязан к тактовой частоте, т.е. срабатывает асинхронно, причем можно назначить выход МК, где будет появляться асинхронный выход компаратора. Т.е. это просто аналоговый компаратор, который встроен в МК. И достаточно быстрый. Ну и прерывания по срабатыванию компаратора всегда можно использовать.

Кass

Цитата: S_Kov от 26 Нояб. 2018 в 22:34Критика должна быть конструктивной. Ну, ладно, еще как-то можно самому придумать, почему для некоего "реалтайма" это плохой вариант. А вот почему это только для неотвественных задач?.. Это уже не для среднего ума.. 

Это потому, что Сорока понятия не имеет что такое системы реального времени, но мнение свое имеет и щедро со всеми им делится, даже если его не просят. Он наивно предполагает, что реалтайм - это минимальное время исполнения, а не то, что под этим понимают во всем мире. Как говорится слышал звон. Слово понравилось, а изучить суть понятия не удосужился. По сути тут никто не делает реалтайм в ЗУ. Да собственно и не используют функции в программах, которые требуют реального времени. :)
АРМ стенда онлайн: http://scada.kontar.ru Пользователь: Электротранспорт, Пароль: 111111

Гербалайф от всех болезней, Кашпировский лучший врач,  Орифлейм самая лучшая косметика, а МММ самый лучший способ вложения денег. Кто бы спорил. ;)

Alex_Soroka

Цитата: Кass от 27 Нояб. 2018 в 16:55
Это потому, что Сорока понятия не имеет что такое системы реального времени
Снова оскорбление меня!  :ireful:
ЦитироватьОн наивно предполагает, что реалтайм - это минимальное время исполнения, а не то, что под этим понимают во всем мире.
Кто вам разрешал решать что у меня в голове и о чем я думаю???  :ireful:

Так вот, ниже про реалтайм и гениальных программистов ПЛК на STM32, которая показывает что Касс полностью некомпетентен не только в реалтайме но и в программировании вообще.
Я тут, от нечего делать, решил посмотреть что у нас сейчас в може на STM32 программинге "в моде".
Стандартная прога, имени ST- STM32CubeMX - рекомендуемая всеми для начальной настройки и создания "проекта" для разработки программ на STM32.
Качаем с сайта производителя, ставим, смотрим.
Выбираем свой чип - ставим "галочки" что хотим использовать из "ножек" и таймеров и т.п.

STM32CubeMX рожет в муках "проект".  B-)

Теперь идем в "проект" и смотрим че там нарожала "рекомендованная программа". Да еще и отрекомендованная "для быстрого старта разработки и помощи тем кто переходит на STM32".
... 
O_O
:facepalm:

пару примеров "гениального программинга" от гениальных программистов АСУ ТП приведена ниже.
Слабонервным не смотреть!
( подсвечено "жирным" на что именно обратить внимание , мои каменты синим по ходу)

Вот файл main.c . Начальные установки:
...
#include "main.h"
#include "adc.h"
#include "dac.h"
#include "tim.h"
#include "gpio.h"

int main(void)
{
  /* MCU Configuration--------------------------------------------------------*/
  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  HAL_Init();  <--- я не просил никого подключать какой-то HAL и его "исполняемые библиотеки"!!!

  /* Configure the system clock */
  SystemClock_Config();  <--- это процедура, "вызов подпрограммы", для всего-то изменения бита в байте(слове)! Зачем функция с записью регистров в стек???  O_O

  /* Initialize all configured peripherals */
  MX_GPIO_Init();  <--- это "вызов подпрограммы", для всего-то изменения бита в байте(слове)! Зачем функция с записью регистров в стек???  O_O
  MX_ADC_Init();
  MX_DAC_Init();
  MX_TIM2_Init();
  MX_TIM3_Init();
  MX_TIM4_Init();
  MX_TIM6_Init();
     ....зачем столько вызовов функций ???

  while (1)
  {
    /* USER CODE  */
  }
}
...

Это еще не все веселье...
...
void assert_failed(uint8_t *file, uint32_t line)
{
     tex: printf("Wrong parameters value: file %s on line %d\r\n", file, line)
}

O_O  вы серьезно??? printf ??? в микропроцессоре? в котором нет "стандартного вывода"??? и вообще у меня ЖКИ тут нет и нет ни клавы ни телевизора - разработчикам простой вопрос: КУДА это все будет выводиться????
И printf подразумевает подстегивание "стандартной библиотеки" !!! на много килобайт! К моему коду !!!  :ireful:
Я разве просил ЭТО ????

Идем дальше - заглянем например в файл "настройки" "gpio.h"
...
void MX_GPIO_Init(void)
{
  /* GPIO Ports Clock Enable */
  __HAL_RCC_GPIOC_CLK_ENABLE();     ...Снова вызов процедур(подпрограмм) ???
  __HAL_RCC_GPIOA_CLK_ENABLE();
}


Снова вызов процедур(подпрограмм) ??? И это всего-то для изменения пары битов в регистре управления ???
то есть вызов подпрограммы, в которой снова вызывается подпрограмма, с записью кучи всего в стек, а потом раскруткой стека??
это вы серьезно ??? :facepalm:

...теперь я понимаю зачем в STM32 частоты в 36 и 72 Мегагерц. Это чтоб ыуспевать хлопать стеком и регистрами при каждом чихе. Иначе просто работать не сможет - никакой производительности не хватит...
...а если мы в этоу прогу еще и напишем прерываний...  O_O
то получим =  :facepalm: с непредсказуемыми киданиями по стеку , мемоли ликами и периодическими "ой! мы перезагрузились!".

Вот как "проффессиональные инженеры типа Касс пишут проги на свои ПЛК"  :hello:

Это я вот посмотрел - а потом полез посмотреть как там "реалтайм операционка RTOS" рекомендованная производителем  :hello:
работает.
...лучше бы я этого не видел...  O_O :facepalm:
там восторг на восторге: если надо изменить битик в регистре то не мелочась, просто вызывается что-то типа
HAL_RCC_GPIOC_CLK_BIT1_SET();
HAL_RCC_GPIOC_CLK_BIT2_RESET();


:facepalm: теперь я стал понимать, почему глючит все написанное для STM32...




SapienzSPB

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

Паяка

#887
[user]Alex_Soroka[/user], Респект, что нашли время поэкспериментировать с STM32CubeMX. HAL - hardware abstraction layer - уровень абстракции от железа - сделан для безболезненного перехода с одного МК на другой. В идеале, это должно давать максимальную оптимизацию кода, если грамотно указать компилятору прагмы - критерии (векторы, тензоры), по которым оптимизировать. Скорость, экономия ОЗУ и ПЗУ, и так далее.

Но библиотеки HAL написаны "индусами", причём, увы, далеко не каждый из них специалист и любитель, (нельзя быть хорошим специалистом, не любя своё дело), уровня Issa Batarseh, Swagatam Majumdar и многих других блестящих инженеров, учёных и разработчиков. Пишут в спешке, отвлекаясь, чего-то не умея и не зная, в результате бывает то, что бывает.

Александр Васильевич, Вы, я, многие другие коллеги, имеем представление о машинных кодах, их записи мнемониками ассемблера и опыт работы с ним. А ещё, мы не хотим писать всю "микро"программу в чистом ассемблере, потому что это заставило бы думать не о ТЗ и перспективах, а об адресах и их назначениях. Мы берём какой-нибудь язык высокого уровня, по сути макроассемблер, пишем на нём, периодически удостоверяясь, что скомпилировались ключевые моменты так, как надо. Если не нравится какая-то библиотечная функция, заменяем её другой или пишем свою.

Всё, что связано с регистрами взаимодействия с периферией, пишу вручную по даташиту. Компилятору, по сути, остаётся только распределить адреса, условные и безусловные переходы. Но свой HAL есть и у нас, разработчиков "старой школы". Мы создаём константы и макросы подстановки, чтобы, например, при другой разводке платы не менять одно и то же в десятках мест кода. Также создаём свои библиотеки, которые можно портировать на другие МК.

По уму, HAL_RCC_GPIOC_CLK_BIT2_RESET(); должно скомпилироваться в одну команду BCF, (в PIC так), размером 1 машинное слово и выполняемую за 1 такт, плюс учёт дублирующих регистров, если необходимо. Повторяющиеся блоки инструкций должны выноситься в функции, если уместно, или наоборот, функции разворачиваться, если важнее скорость и экономия стека, чем место в ПЗУ.

Лишних инициализаций можно не делать, опять же, если понимать их назначение, последовательность и состояния регистров после сброса.

Одним разработчикам приоритетна возможность быстро переносить разработки с платы на плату, c МК на МК, другим - максимально грамотно и надёжно делать аппаратно-программный модуль, с которым работать месяцы и годы, с незначительными изменениями и доработками. Вывод: у каждого свой HAL. Бездумно брать чужой - нехорошо, боком выйдет. Надо просто любить свои разработки, то, на чём, для чего и тех, для кого они делаются. И находить время и силы вникать в ключевые моменты.

Иначе мигание светодиодом будет занимать пару килобайт ПЗУ, c переменными циклов с плавающей запятой и повышенной точностью, и вызовом кучи ненужных подпрограмм, тогда как МК, имеющий конфигурируемые логические ячейки, вообще позволяет, (допустим), перебрасывать счётный триггер по переполнению или совпадению таймера, и аппаратно выводить получаемый сигнал на ножку, и всего-то надо тактов 10 и 10 слов ПЗУ для записи в регистры, а затем мигалка будет мигать без участия процессора вообще!

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

Кстати, и без CLC можно мигать лампочкой. Просто тактировать ШИМ с часового кварца. Тактов процессора при этом занимается ноль, (если отключены прерывания с таймера).

И самое главное. Процедуры HAL должны быть виртуальные (non-volatile). Т.е. процедура вызывается по сути для компилятора, а не МК. А уж как сработает компилятор, вопрос к нему и его авторам.

HAL позволяет разработчику писать не микропрограмму, а ТЗ на неё. А в компиляторе "сидит конструкторское бюро", которое за несколько секунд-минут это ТЗ решает и выдаёт микропрограмму, в ассемблере и машинных кодах (прошивку).
GT TF1 60V 20Ah Chilwee DZF

Alex_Soroka

Цитата: SapienzSPB от 03 Дек. 2018 в 10:49
Если я правильно понимаю, то программируя ПЛК инженер может вообще не сталкиваться с кодом.
ну да, зачем нам знать про железо? ХЗ как оно там работает, я тут кубики по экрану подвигал - авось будтет работать...
а потом ракеты падают :(

ЦитироватьЭто визуальная среда разработки.
которая полностью убирает понимание "что там и как" работает в железе.
Это в ВИнде хорошо - Винда это черный ящик и никто вас в код Винды не пустит.

ЦитироватьТо есть ему совершенно не интересно кто там как ползает по стеку и что это вообще такое.
ага  B-) не интересно ровно до момента, когда стек почему-то станер расти и расти до перезагрузки.
...у писателей "говнокода в Геймдеве" есть даже параметр - "скорость мемори лика", так вот у них нормой(!) считается когда 100 килобайт в час растет :) Потому "Игры на РС" надо перезагружать, бо ворочается все труднее и труднее.
А в ПЛК да, сосем не важно когда табун прерываний просто забьет стек и нарушит временные соотношения в процессах - и... "...ой! ракета снова упала!  ..."  B-) ;-D

ЦитироватьЕму главное чтобы ПЛК много лет непрерывно реагировал на события.
при таком подходе к программированию - не будет никаких длительной стабильности.

Alex_Soroka

Цитата: Паяка от 03 Дек. 2018 в 11:24
[user]Alex_Soroka[/user], Респект, что нашли время поэкспериментировать с STM32CubeMX. HAL - hardware abstraction layer - уровень абстракции от железа - сделан для безболезненного перехода с одного МК на другой.
я не просил его пихаться в мой код.
Я если пишу то пишу сам все функции - это спасает от "подарков" внутри кода от индусов и китайцев.
И я не хочу чтобы HAL за меня решал что мне делать.  :ireful:
А если кто-то прыгает с МК на МК, то ему-бы хорошо бы разбираться в особенностях, а не "я тут кубики по экрану подвигал"
В итоге - на всех форумах по STM32 русских полное ж.... - вопросы детские и ответы такие-же - чуть какой вопрос идет в сложное взаимодействие DMA+ADC+DAC - фсё! туши свет! никто даже не может понять что спрашивают. :(
"на НАL напиши..." ага, щаз  :ireful:

ЦитироватьВ идеале, это должно давать максимальную оптимизацию кода, если грамотно указать компилятору прагмы - критерии (векторы, тензоры), по которым оптимизировать. Скорость, экономия ОЗУ и ПЗУ, и так далее.
ну да, канешна  :-D так и буду делать, я очень верю С++ начиная с 11 релиза, который теперь данные типами меняет без предупреждения  :facepalm:

Цитироватьассемблера и опыт работы с ним. А ещё, мы не хотим писать всю "микро"программу в чистом ассемблере, потому что это заставило бы думать не о ТЗ и перспективах, а об адресах и их назначениях.
лень не есть полезное качество. и С обычно "Для ленивых" хватает.  :hello:
но вот так вот откровенно ложить на "я ДОЛЖЕН знать начинку и как работает" - мои поздравления  :kidding:

ЦитироватьВсё, что связано с регистрами взаимодействия с периферией, пишу вручную по даташиту.
ага :) вы сами STM32 доки читали?  ;-D :-D  почитайте.
там так хорошо написано, и вообще без примеров, что так и хочется ... промолчу... что-то сделать тем кто их писал.
А заточено все на "возьмите готовую библиотеку!"...  :ireful:

ЦитироватьПо уму, HAL_RCC_GPIOC_CLK_BIT2_RESET(); должно скомпилироваться в одну команду BCF, (в PIC так), размером 1 машинное слово и выполняемую за 1 такт, плюс учёт дублирующих регистров, если необходимо.
Да, так ДОЛЖНО стать. Но это вы получите только если "инлайн" в оптимизации включить, и то не всегда, так что так и будет "функция вызывается из функции которая вызывает функцию..." а в этот момент табун прерываний повергает МК в полный ступор, потому что на стек выделено всего 200 байт  B-) ;-D "по умолчанию"... и никакие "реалтаймы" там уже не светят, с таким джиттером по "времени выполнения".  ;-D

ЦитироватьПовторяющиеся блоки инструкций должны выноситься в функции
ну удачи, в процедурном программировании  :hello:

ЦитироватьИначе мигание светодиодом будет занимать пару килобайт ПЗУ,
так сейчас "в примерах от разработчиков" примерно так и есть.
"рекомендованные библиотеки" весят как раз на всю память.

ЦитироватьИ самое главное. Процедуры HAL должны быть виртуальные (non-volatile). Т.е. процедура вызывается по сути для компилятора, а не МК. А уж как сработает компилятор, вопрос к нему и его авторам.
потому я и пишу проги так, чтобы меньше всего зависеть "от авторов компилятора".

ЦитироватьHAL позволяет разработчику писать не микропрограмму, а ТЗ на неё. А в компиляторе "сидит конструкторское бюро", которое за несколько секунд-минут это ТЗ решает и выдаёт микропрограмму, в ассемблере и машинных кодах (прошивку).
ага  B-)  а ракеты все падали и падали, и плеер затыкался на MP4 файле каждые 3 минуты  B-) ;-D :-D ...
зато "инженер" очень быстро сдал свой проект  B-)

Кass

#890
Цитата: SapienzSPB от 03 Дек. 2018 в 10:49Если я правильно понимаю, то программируя ПЛК инженер может вообще не сталкиваться с кодом.

:-D ...не обращайте внимание. Пусть пишет. Я даже перестал комментировать. Это не имеет никакого смысла. Мне ... не переубедить, тем более такого как Сороку. Любая промышленная АСУ ТП строится только не системах реального времени. И только. Что это такое я уже писал, и приводил даже ссылки из букваря. Но даже текст из букваря не усвоен Сорокой. Далее что то объяснять не имеет смыла. ...
АРМ стенда онлайн: http://scada.kontar.ru Пользователь: Электротранспорт, Пароль: 111111

Гербалайф от всех болезней, Кашпировский лучший врач,  Орифлейм самая лучшая косметика, а МММ самый лучший способ вложения денег. Кто бы спорил. ;)

Яков93

Препирательства насчет кого можно называть и как я перенес в "Гаражные войны", на следующей неделе открою, там и сможете обсудить без привязки к пользователям.

Кass

Что то в теме войн начали обсуждать явно не войны, а то, что должно быть в других темах. Не порядок.

Давайте я предложу тему для очередного холивара. ;)

Вот сижу я в сети через планшет. Вернее уже лежу. И вот хотел было купить к нему зарядку в авто. Заряжается он через USB type C. Будучи в магазине глянут что там есть, но все они на 5 В,с током до 4,8 А, то есть 24 Вт. Если учесть что в планшете проц i7, то этого явно мало. Только проц кушает 15 Вт, а еще WiFi, блютуз, диск, хоть и SSD, но тоже кушает, экран, подсветка, можно клаву подцепить с тачпадом... В общем явно не хватит еще зарядить АКБ при включенном планшете. Беру таймаут, думаю нужно глянуть дома сетевую зарядку. Сегодня смотрю, а там: 5В 3А/ 9В 3А/ 10В 5А/ 12В 5А/ 15В 4,33А/ 20В 3,25А  65Вт МАХ.

Вот сижу и думаю... Не, ранее еще с Sony Z появилась быстрая зарядка с повышением до 9В. Ну думаю на данные вешают сопротивление какое то или коротят и оно включает повышенное напряжение. Сейчас на беспроводных зарядках тоже как то определяет, что можно как то включить быструю зарядку. Но это то что? Это же коплектный блок питания. Видимо сделано для универсализации, что бы раз USB C, то можно это воткнуть куда угодно, но ведь и круглые разъемы от ноутов можно еще куда то всунуть.

Так вот как эта хрень определяет куда воткнули разъем и какое напряжение нужно подать. Там что, контроллер в блоке питания и они обмениваются по шине с компом, или я загоняюсь? И как в Винде можно глянуть, каким оно напряжением реально заряжает?

Все же тоже тама о зарядке АКБ и алгоритмах заряда, при этом ЗУ каким то образом само определяет каким профилем заряжать.  :-D
АРМ стенда онлайн: http://scada.kontar.ru Пользователь: Электротранспорт, Пароль: 111111

Гербалайф от всех болезней, Кашпировский лучший врач,  Орифлейм самая лучшая косметика, а МММ самый лучший способ вложения денег. Кто бы спорил. ;)

serg99

[user]Кass[/user], Кабели USB-C https://en.wikipedia.org/wiki/USB-C
Многие кабели, претендующие на поддержку USB-C, на самом деле не соответствуют стандарту. Использование этих кабелей может привести к повреждению устройств, к которым они подключены. [60] [61] [62] Есть сообщения о случаях разрушения ноутбуков из-за использования несоответствующих кабелей. [63]
Проблемы с питанием
Некоторые несовместимые кабели с разъемом USB-C на одном конце и устаревшей вилкой USB-A или розеткой Micro-B на другом конце неправильно замыкают канал конфигурации (CC) с повышением напряжения 10 кОм на шину V BUS вместо требуемой спецификации 56 кОм [64] , в результате чего подключенное к кабелю устройство неправильно определяет количество энергии, которое ему разрешено получать от кабеля. Кабели с этой проблемой могут не работать должным образом с некоторыми продуктами, включая продукты Apple и Google, и могут даже повредить источники питания, такие как зарядные устройства, концентраторы или USB-порты ПК

Кass

#894
[user]serg99[/user], тут кабель не съемный. Он не отделяется от ЗУ. Вопрос как раз в том, как ЗУ понимает, какое напряжение выдать? Вот когда просто повышенное до 9 В, то пусть 10 или 56 кОм. А когда там будет с десяток напряжений? А может там можно и промежуточные значения можно получить, к примеру 19В, а на корпусе просто указаны точки графика нагрузочной кривой? Опять умное ЗУ с адаптивным алгоритмом?

В итоге в магазинах, где продавцы продают автомобильные зарядки к планшетам и ноутам понятия не имеют что там и как работает и предлагают что попало. Предлагают 5В 4,8А, но я предполагаю, что планшет можно от 5В и не зарядить. Планшет может пытаться общаться с ЗУ, но как со стеной. Я погуглил, ничего не нашел о том как это работает. На сайте НР вообще только старые модели и как следствие инфы ноль. Если звонить, то попадешь в кал центр и тебя будут переключать пол дня, в итоге скажут, что кроме того, что было в коробке ничего не подключать.
АРМ стенда онлайн: http://scada.kontar.ru Пользователь: Электротранспорт, Пароль: 111111

Гербалайф от всех болезней, Кашпировский лучший врач,  Орифлейм самая лучшая косметика, а МММ самый лучший способ вложения денег. Кто бы спорил. ;)

serg99

#895
[user]Кass[/user], У меня съёмный кабель, в разъёме с двух сторон контроллер стоит.
Спойлер


Кass

Цитата: serg99 от 26 Дек. 2018 в 09:22Кass, У меня съёмный кабель, в разъёме с двух сторон контроллер стоит.

Ну значит по шине данных идет какой то обмен данными, типа запрос, и ответ о том, какое должно быть напряжение и ток, и подтверждение, либо ответ, что ток должен быть меньше, если потребитель просит ток больший, чем возможности ЗУ. При этом на начальном этапе питание просто 5В. Но в таком случае это должно быть как то унифицировано. Так вот как оно должно общаться? Как узнать тогда параметры ЗУ, которым оно должно обладать и какие стандарты этого общения поддерживать?

Вот что я нашел:

"USB Power Delivery

В новом стандарте USB Power Delivery концепция электропитания была значительно переработана.[34][35] Теперь разработчики как хоста, так и устройства получили возможность гибко управлять питанием через шину USB. Решение о том, кто является источником, кто потребителем, о возможностях источника и кабеля принимаются в ходе диалога между устройствами по отдельному каналу связи. Предусматривалась возможность, что в процессе диалога устройство могло потребовать, а хост согласиться на повышение напряжения питания с целью передачи по существующей кабельной инфраструктуре больших мощностей. Повышенное напряжение выдавалось хостом на провод питания Vusb. Для совместимости со старыми устройствами хост возвращал напряжение к старым значениям 5 Вольт, как только обнаруживал отсоединение устройства.
Технология USB Power Delivery обеспечивает передачу энергии до 100 Вт. Этого должно хватить для любых смартфонов, планшетов и других гаджетов. Благодаря технологии при помощи обычного USB-кабеля появится возможность заряжать и подключать все электронные устройства от источника заряда, которым может выступить смартфон, ноутбук или внешний аккумулятор.[36]

[b-b]Профили источника[/b-b] USB PD rev. 1[37]



USB PD Rev.1
В 2012 году представлена первая ревизия USB PD. Использовалась стандартная разъёмная и кабельная инфраструктура USB 2.0 и 3.0. Управление питанием осуществлялось путём диалога между потребителем и источником по независимому каналу связи, организованному по проводу питания стандартного кабеля USB (Vbus). [b-b]Использовалась частотная модуляция с несущей 24 МГц.[/b-b]
Профили источника USB PD rev. 2[38]



USB PD Rev.2
Вторая ревизия стандарта вышла в 2014 году вместе со спецификацией USB 3.1 и привязана к новому разъёму Type C. В частности, теперь для выделенного канала связи между источником мощности и потребителем [b-b]используется отдельный провод в кабеле (Configuration Сhannel)[/b-b]. Также поддерживается определение типа кабеля и его возможностей по передаче мощности. [b-b]Источник менее жёстко ограничен требованиями профилей первой ревизии[/b-b] и может гибче подходить к выбору максимального тока нагрузки в зависимости от располагаемой мощности.
USB PD Rev.3
Третья ревизия ожидается с выходом спецификации USB 3.2."

То есть и тут уже стандартные профили. ;)
АРМ стенда онлайн: http://scada.kontar.ru Пользователь: Электротранспорт, Пароль: 111111

Гербалайф от всех болезней, Кашпировский лучший врач,  Орифлейм самая лучшая косметика, а МММ самый лучший способ вложения денег. Кто бы спорил. ;)

serggio

#897
Цитата: Кass от 26 Дек. 2018 в 09:00Я погуглил, ничего не нашел о том как это работает.
Нужно гуглить USB Quick charge specification и USB power delivery.
Максимальный ток 5А и напряжение 20В для USB тип С взято не с потолка. Это максимальные значения для вилки или гнезда разъема, обусловленные его контактами.

Alex_Soroka

Цитата: serggio от 26 Дек. 2018 в 12:10
Нужно гуглить USB Quick charge specification и USB power delivery.
именно так.
ЦитироватьМаксимальный ток 5А и напряжение 20В для USB тип С взято не с потолка. Это максимальные значения для вилки или гнезда разъема, обусловленные его контактами.
И я бы не рекомендовал гнаться за максимальными значениями, потому что в реальности только "дорогие бренды" типа Самсунга и Галакси 8(9)+ имеют провода с USB и свои блоки питания, которые таки обеспечивают требования спецификации.
Обычно (то что я как-то проверил в магазине, перебрал кучу кабелей ценой в два-три раза выше чем "просто ширпотреб") провода USB выполнены их тонкой меди и имеют длину до 2метров(!), если при этом БП не имеет "мозга" и обратной связи с телефоном(по проводам USB) - ни о каких "быстрых и мощных" зарядах не может быть и речи.

Кass

Цитата: serggio от 26 Дек. 2018 в 12:10Нужно гуглить USB Quick charge specification и USB power delivery.

По delivery то я выложил общие данные, но так и не нашел информации, как посмотреть реальное напряжение и ток заряда. Для старых USB есть специальные примочки для замера. Может быть для Винды есть какая то утилита. Ибо из того, что есть у производителя, вроде как и пишут про совместимость, но там 45Вт вместо 65, что означает 3 профиль заряда вместо 5-го. Возможно для моделей с другими процессорами, с менее энергоемкими. К примеру М7 потребляет 4 Вт, а i7 15 Вт. Возможно в этом и есть разница. Посему нужно как то посмотреть, сколько потребляет планшет при зарядке, и потом делать вывод, хватит ему 45 Вт, или нет.
АРМ стенда онлайн: http://scada.kontar.ru Пользователь: Электротранспорт, Пароль: 111111

Гербалайф от всех болезней, Кашпировский лучший врач,  Орифлейм самая лучшая косметика, а МММ самый лучший способ вложения денег. Кто бы спорил. ;)