Не совсем так. В нем есть пользовательское ядро 8051, для которого можно писать код. То есть в принципе, вся управляющая логика может быть в нем. Поэтому у него и выведено 2 UART - один для общения непосредственно с "тупым" HMI, а второй подключен к пользовательскому ядру.
А в данном случае есть какая-то разница между "постоянно" и "среднее"? Мы же говорим о временных промежутках в дни и недели.
Ну и да, если сделать запрос раз в сутки, то будет меньше. А если вообще отключить запросы, то станет совсем мало. Но ведь по умолчанию запросы идут раз в час, и при этом они высасывают 1 А*ч за два дня, причем почти 70% этой энергии совершенно бесполезно тратится на обогрев атмосферы.
Батарея у Вас никогда не будет полностью заряженной, т.к. сам трекер постоянно сосет из нее. А значит и от основного аккума идет постоянное потребление около 20 мА. Из которых две трети уходят просто в тепло на линейном стабилизаторе.
работает на CMOS-логике. Это обеспечивает низкое потребление (400мкА)
...
приходит напряжение буферного режима 4,58В, 250мА
Ставить понижающий линейник с падением напряжения в 3 раза при токе 250 мА и при этом считать микроамперы потребления схемы? Ну даже не знаю как это расценивать :)
Гм, не видел такой реализации в статье. Было две схожих, но не таких:
ДМА гоняется по кругу в автоматическом режиме, сигнал защелки висит на одном из служебных сигналов SPI или DMA.
ДМА гоняется по кругу в автоматическом режиме, сигнал защелки выставляется вручную.
Вот автоматическая зацикленность ДМА - кардинальное отличие от предлагаемого мной варианта. Я предлагаю запускать пакеты ДМА вручную, в прерывании по завершению отправки предыдущего пакета. И тогда не будет никакого рассогласования между отправкой данных и сигналом защелки.
Всё работает, но т.к. очередь циклится программно — начинает залипать посреди экрана со временем.
Вот этого я так и не пойму :)
Я бы слал по строкам. Зарядил в ДМА 128 бит первой строки, запустил отправку. В прерывании окончания отправки мигнул стробом выходных защелок и запустил следующую строку. И так до последней строки, а потом опять с первой.
Если поведение отличается, то это уже не 595-я микросхема, а что-то другое :) Я работал с 595-ми от разных производителей и всегда их поведение было стандартным.
Я, если честно, так и не понял что вы там навертели с DMA и SPI, и почему эти три линии каким-то образом оказались несинхронными, не смотря на то, что тактируются клоком одного SPI... Я не знаком с ESP32 и не понял всех этих хитрых маневров. Но сдается мне, что вы все же перемудрили с софтом и ошибка именно в нем.
Покуда сигнал защёлки находится в состоянии лог. 0, все биты с выходов триггера напрямую проходят на выход. Стоит же защёлку перевести в лог. 1, и эти биты будут зафиксированы на выходе, даже если состояние триггеров с тех пор поменялось.
Ну нет же, все совсем не так. Биты с выходов триггера ни при каких обстоятельствах не проходят напрямую на выход. Они фиксируются на выходах при переходе клока защелок из 0 в 1, то есть выходные защелки срабатывают по фронту. А при постоянном сигнале (хоть 0 хоть 1) выходы меняться не будут.
Недавно натыкался то ли, то ли на вопрос на форуме на статью (сейчас с ходу не нашел), что если подавать 5 В при выключенном питании, оно просачивается куда не надо, а это опасно.
Ну так и 3.3 вольта на выводах незапитанного контроллера просачивается куда не надо, вплоть до попыток контроллера включиться.
Но на 5-вольтовых линиях такой защиты нет, и если подать туда слишком большое напряжение — уже безразлично, с резистором или без — можно легко пробить транзисторы.
Странно, у STM32 такая защита уже давным-давно есть. Неужели китайцы ее не сделали? Верится с трудом, честно говоря.
Это единая точка отказа, которая приводит к неработоспособности всей системы. А просто точка отказа может привести к ухудшению качества работы системы, или потери ею каких-то отдельных функций, но не к полному отказу. В принципе, любой узел системы является потенциальной точкой отказа. Если его неисправность приведет к полной неработоспособности системы, то это единая точка отказа, например это вводной автомат в электрощитке, без него вся система окажется нерабочей. А если, например, произойдет отказ индикатора кондиционера, то это никак не повлияет на работу всей системы.
У вас просто неверное выражение. Больше устройств - больше точек отказа, это вам написали верно. Просто при дублировании устройств повышаются шансы пережить одиночные отказы :)
Мост? В Тесле? :))
Не совсем так. В нем есть пользовательское ядро 8051, для которого можно писать код. То есть в принципе, вся управляющая логика может быть в нем.
Поэтому у него и выведено 2 UART - один для общения непосредственно с "тупым" HMI, а второй подключен к пользовательскому ядру.
Искал-искал в статье FPGA, но так и не нашел. Но статью читаю почему-то в разделе FPGA.
А в данном случае есть какая-то разница между "постоянно" и "среднее"? Мы же говорим о временных промежутках в дни и недели.
Ну и да, если сделать запрос раз в сутки, то будет меньше. А если вообще отключить запросы, то станет совсем мало. Но ведь по умолчанию запросы идут раз в час, и при этом они высасывают 1 А*ч за два дня, причем почти 70% этой энергии совершенно бесполезно тратится на обогрев атмосферы.
Тогда каким образом ваша батарея на 1 А*ч высаживается за два дня?
1000мА*ч / 48 ч = 20.83 мА
Батарея у Вас никогда не будет полностью заряженной, т.к. сам трекер постоянно сосет из нее. А значит и от основного аккума идет постоянное потребление около 20 мА. Из которых две трети уходят просто в тепло на линейном стабилизаторе.
Ставить понижающий линейник с падением напряжения в 3 раза при токе 250 мА и при этом считать микроамперы потребления схемы? Ну даже не знаю как это расценивать :)
По логике автора ветки - это не они производят на TSMC, а сама TSMC производит :)
Зачем - этого я не знаю. Так решили те, кто делал ту систему :)
Гм, не видел такой реализации в статье. Было две схожих, но не таких:
ДМА гоняется по кругу в автоматическом режиме, сигнал защелки висит на одном из служебных сигналов SPI или DMA.
ДМА гоняется по кругу в автоматическом режиме, сигнал защелки выставляется вручную.
Вот автоматическая зацикленность ДМА - кардинальное отличие от предлагаемого мной варианта. Я предлагаю запускать пакеты ДМА вручную, в прерывании по завершению отправки предыдущего пакета. И тогда не будет никакого рассогласования между отправкой данных и сигналом защелки.
Вот этого я так и не пойму :)
Я бы слал по строкам. Зарядил в ДМА 128 бит первой строки, запустил отправку. В прерывании окончания отправки мигнул стробом выходных защелок и запустил следующую строку. И так до последней строки, а потом опять с первой.
Если поведение отличается, то это уже не 595-я микросхема, а что-то другое :) Я работал с 595-ми от разных производителей и всегда их поведение было стандартным.
Я, если честно, так и не понял что вы там навертели с DMA и SPI, и почему эти три линии каким-то образом оказались несинхронными, не смотря на то, что тактируются клоком одного SPI... Я не знаком с ESP32 и не понял всех этих хитрых маневров. Но сдается мне, что вы все же перемудрили с софтом и ошибка именно в нем.
Или там действительно стоят не 595-е.
Ну нет же, все совсем не так. Биты с выходов триггера ни при каких обстоятельствах не проходят напрямую на выход. Они фиксируются на выходах при переходе клока защелок из 0 в 1, то есть выходные защелки срабатывают по фронту. А при постоянном сигнале (хоть 0 хоть 1) выходы меняться не будут.
Ну так и 3.3 вольта на выводах незапитанного контроллера просачивается куда не надо, вплоть до попыток контроллера включиться.
Оно несет просто другой смысл, а не мало или много, в этом и дело :)
Странно, у STM32 такая защита уже давным-давно есть. Неужели китайцы ее не сделали? Верится с трудом, честно говоря.
Это единая точка отказа, которая приводит к неработоспособности всей системы. А просто точка отказа может привести к ухудшению качества работы системы, или потери ею каких-то отдельных функций, но не к полному отказу. В принципе, любой узел системы является потенциальной точкой отказа. Если его неисправность приведет к полной неработоспособности системы, то это единая точка отказа, например это вводной автомат в электрощитке, без него вся система окажется нерабочей. А если, например, произойдет отказ индикатора кондиционера, то это никак не повлияет на работу всей системы.
У вас просто неверное выражение. Больше устройств - больше точек отказа, это вам написали верно. Просто при дублировании устройств повышаются шансы пережить одиночные отказы :)
Видел I2C датчики влажности, висящие на проводе с десяток метров длиной. Лютое нарушение всех норм, но как-то работали :)
А, ну да, я чет по себе примеряю. Согласен, большинству проще подобрать и использовать готовое :)