- Мысль вслух про protothreads: а ведь можно накидать отдельный
протопоток для 1wire, крутящийся в прерывании. Т.о. получится
алгоритм с четкими неблокирующими таймингами! Argon(212 знак., 26.01.2022 10:19, MCU, полностью)
- Нужно заряжать лифер акб в приборе мониторинга.Размером с мыльницу
почти постоянно работает на улице.Снег,дождь,прочие
прелести...Корпус пластик , герметичный , платы залиты в
кубики.Хочу снаружи сделать контакты как у старых бесшнуровых
телефонов и заряжать (в тепле) вставляя в крэдл.Вопрос в контактных
парах.Хочется готовых решений.Пластинки на приборе и чей-то
подпружиненное в крэдле. PlainUser(66 знак., 22.01.2022 17:47, MCU, полностью)
- Беспроводная зарядка. TI это активно продвигали, года два тому. Ой,
боян. Тем не менее. - Бapбoc(22.01.2022 23:17)
- Магнитный USB-кабель - Vit(22.01.2022 18:28)
- Ну да, "подпружиненный гандошек" (как m16 пишет) и ответные
"пятачки" к нему. Toчкa oпopы(82 знак., 22.01.2022 18:18, ссылка, ссылка)
- продается такое AlexG(11 знак., 22.01.2022 18:13, ссылка, ссылка)
- вот m16(2 знак., 22.01.2022 18:08, ссылка, ссылка)
- Делай не полшага, а шаг - беспроводную зарядку. А идеально - чтобы
подходила готовая. - General(22.01.2022 17:47)
- Народ, как считаете - есть смысл использовать троирование настроек
девайса, сохраняемых во внутренней eeprom МК? Argon(390 знак., 23.01.2022 10:27, MCU, полностью)
- наиболее вероятный источник сбоя выключение питания во время
записи. Я использую две копии с СRC. Запись копий идет
последовательно (первая копия, потом вторая), от младшего адреса,
СRC пишется в последнюю очередь, при загрузке востанавливаю копию с
поврежденным ЦРЦ, если оба ЦРЦ целы, актуальной является первая
копия. При регулярном сохранении состояния алгоритм немного
другой... - IBAH(24.01.2022 13:35)
- 1. Почему троирование, если работает дублирование (crc первого
набора не совпало, второго совпало - выбор одного из двух
однозначен, мы же верим в crc?) VLLV(108 знак., 23.01.2022 19:32)
- "-Доктор, как уберечься от триппера? -Слой бинта, слой ваты, еще
слой бинта и слой ваты. А главное - никаких половых сношений!"(с)
:)) - MBedder(23.01.2022 18:50)
- ага.... - Лaгyнoв(23.01.2022 20:13)
- По моему опыту, необходимость троирования зависит от применяемой
EEPROM. Вероятности сбоя разная. Например, в Хмегах EEPROM
оказалась не особо надежной, поэтому в проектах на них у меня по
три копии настроек, которые я побайтно прогоняю через мажоритарный
элемент при запуске. В обычных AVR и без этого проблем нет, а AVR-D
при использовании IAR ничто не спасет. AlexG(144 знак., 23.01.2022 17:24)
- в особо ответственных случаях применяю мажоритарную запись и
чтение/восстановление (соответствующие процедурки для AVR на
ассемблере (там пару-тройку десятков строк кода всего :)) - могу
выложить. Мажоритарное чтение (два из трёх, "голосованием") - эт
понято. Там у меня ещё чтение -проверка-модификация, - т.е. если в
результате чтения найдена сбойная ячейка, то она восстанавливается.
Мегаполезная шняга :) Adept(1293 знак., 23.01.2022 16:17)
- всем спасибо, пожалуй остановлюсь на варианте с дублированием - Argon(23.01.2022 12:47)
- Есть, в прошлом веке еще придумано все, коды с восстановлением
ошибок, типа Рида - Соломона и БЧХ. Даже исходники в сети находил
БЧХ 21 - 31. Восстановление 2 х ошибочных бит в любом из 31. Если
надо, выложу. - Visitor(23.01.2022 11:48)
- Если защищаемых данных мало, то иногда использую 4 копии с
побитовой инверсией и без CRC (а-ля MiFare для адреса) - при
известном порядке записи обеспечивается гарантированное
восстановление - либо до "недописанного", либо до предыдущего
валидного. В других случаях использую CRC, а дополнительная
временая копия появляется собственно на время транзакции вместе с
идентификатором обслуживаемого объекта и флагом (часто достаточно
ненулевого значения указателя). Ну и если Vit(450 знак., 23.01.2022 11:26, ссылка)
- два простых правила позволяют мне не париться с этой темой. LordN(212 знак., 23.01.2022 11:13)
- т.к. stm32 не имеет еепрома, пишу в флешь, использую 2 страницы,
друг за другом, каждая запись имеет номер и срс. даже если
отключится питалово во время записи всегда есть последняя валидная
настройка. при наличии еепром имелось две записи, также с номером и
срс - Aleksey_75(23.01.2022 11:09)
- Я обязательно дублирую настройки и храню их в разных страницах.
Проверяю по CRC и загружаю исправную. Надо в сохраняемой структуре
еще по хорошему хранить номер сохранения, чтобы при совсем
гипотетическом случае двух целых но разных CRC взять последнюю
актуальную. - michas(23.01.2022 10:46)
- Придумываем несуществующие проблемы, а потом решения для них? - SciFi(23.01.2022 10:36)
- Лять, приходится :( Я тут вчера созрел "потеребунькаться"(с) с
дешевыми TLSR825x/TLSR826x. Есть SDK c примерами и IDE для винды.
Хотя не люблю жабообразные среды, но на 8-ядернике оно летает.
Ставится легко, примеры компилятся без проблем. И компилятор
поддерживает многопоточность. С отладкой правда беда. Но прошивать
вроде можно с помощью usb-com и хака (что сейчас буду
пробовать...). Есть bare metal примеры работы с железом. В т.ч. и с
RF частью без всяческих BLE Гyдвин(146 знак., 17.01.2022 22:24, MCU, картинка, полностью)
- Ковыряю MSP430. Читая даташит и RM понимаю, почему 16-битная серия
МК так долго в строю. Они генератор запускают за 5 мксек после
сброса: Because the CPU executes code from MCLK, which is sourced from
the fast-starting DCO, code execution begins from PUC in less than
5 µs. То, что он электричество не ест, а только нюхает - вроде все
знают. Ну и FRAM внутри - очень вкусно в некоторых применениях. Dingo(54 знак., 18.12.2021 10:33, MCU, ссылка, полностью)
- Оне гондоны. Лет семь тому выложили на сайте всё про контроллер на
150 градусов, а потом куды-то заныкали. Даже не ведаю, что за серия
была. Контроллер был очень хорош под мои задачи. - Бapбoc(16.01.2022 15:02 - 18:11)
- Как с доставабельностью, от 1000 шт. Пошукал по российским складам
все печально. - PeterD(19.12.2021 13:59)
- А то... Этим и ценен. Можно застыть в любом состоянии со жрачкой в
сотню нА и через 5 us маслать дальше на 16 МГц. И периферия под
разнообразные извраты с микропотреблением заточена... - Гyдвин(18.12.2021 14:11)
- и не только после сброса, после любой глубокой спячки - просыпается
за 5us. Mahagam(577 знак., 18.12.2021 13:11)
- дописываю ядрышко MSP430 на верилоге. ортогональность архитектуры,
конечно, местами упрощает жизнь. с другой стороны - получаются
местами просто кодаврические команды, которые почему-то и у меня в
модели и в IAR`е исполняются одинаково Mahagam(198 знак., 18.12.2021 20:43)
- с чего посоветуешь начать изучать верилог. желательно переведённое.
есть рабочий проект на XC3S200A, хочется переделать под свои
хотелки. - m16(18.12.2021 22:34)
- На OpenCores есть что-то по теме, но я догадываюсь, что не система
команд делает MSP430 уникальными. Можете поделиться, ради чего вы
взялись повторять? Dingo(107 знак., 18.12.2021 22:06, ссылка, ссылка)
- Ну, система команд создавалась вприглядку с PDP-11, а там была MOV -(PC), -(PC) (ЕМНИП код 014747) - LightElf(18.12.2021 21:14)
- Кто-нибудь реализовывал протокол CAN Kingdom? Из тех, что ложатся
поверх CAN, менее всех пугает сложностью. Argon(243 знак., 19.12.2021 20:09, MCU, полностью)
- Черкну тут для истории: осилить CAN Kingdom не сумел, вернее бросил
это занятие. Несмотря на то, что сама идея неплохая, ее описание
плохо ложится на мозги. Началось это при попытке освоить эфемерные
сущности: "каталоги", "формы", "списки форм", "списки документов".
И уж совсем добила тема сжатых сообщений. Argon(1107 знак., 23.12.2021 21:43)
- А что за функционал протокола нужен? Я делал простую передачу
поверх CAN и все было очень просто. И адаптер COM/CAN был. - VLLV(20.12.2021 08:17)
- Протокол хороший, но сам стиль документации "В одном сказочном
королевстве жили-были..." сбивает с толку. Авторы наверное пытались
подать техническую документацию "доступно и понятно". Доподавались,
блин, черт ногу сломит... - il-2(20.12.2021 05:13)
- Вообще накурено здорово. Evgeny_CD(1 знак., 20.12.2021 02:21, ссылка)
- Вот тут классное сравнение, но сдается мне, что вкурить все это
будет сильно непросто. Evgeny_CD(1 знак., 20.12.2021 01:30, ссылка)
- Чисто ИМХО, если Вам не требуется совместимости с Kingdom (и
прочими), то самопал, в части душевных и временных затрат, будет
дешевле. - Chum_A(19.12.2021 20:21)
- Можно выпускать прибор (датчик) с HART (версия 5, например) не
вступая в их ассоциацию? Какие тогда присвоить коды производителя и
типа устройства? - ssr(21.12.2021 13:52,
, MCU, полностью)
- А вот, кстати. Не появилось ли в последние годы дешёвое решение для
физики CAN? Ну такое, чтобы на малых тиражах вписать пррстенькое
CAN-устройство в пару баксов? - LightElf(19.12.2021 21:05, MCU, полностью)
- А вот у меня тоже вопрос. Два МК с CAN можно напрямую (без
CAN-трансиверов) как два UART соединять (TX-RX и RX-TX)? Кто-то так
делает? Вроде получается соединение точка-точка, арбитраж на уровне
протокола связи - ну типа запрос-ответ, без попыток одновременной
инициализации передачи. - rezident(19.12.2021 21:30)
- В последние годы все не понятно стало, все безумно дорожает и
качество плохое в партиях брак от 10% до 60% имеется. CAN у STM32
на борту есть, только и с ними не понятно, какие серии
производятся, какие нет. - Visitor(19.12.2021 21:12)
- "в последние годы" и "дешевое" - как-то взаимоисключаще, чтоли...
После подорожания STM32F072 из МК, по-моему, самое доступное -
новые PIC18FxxQxx, порядка 2usd. У китайцев CAN вообще как-то не
особо в почете - мало камней с ним и все многоногие. - Argon(19.12.2021 21:11)
- Чет про арбитраж в CAN шине не догоняю... Везде пишут что-то вроде:
"идентификатор с самым низким значением выигрывает арбитраж". С
точки зрения физики процесса все ясно, но это ведь справедливо для
одновременной передачи сообщений! Argon(529 знак., 19.12.2021 12:28, MCU, полностью)
- Ищу замену stm8l152r8. Нужно микропотребление, драйвер ЖК, uart,
i2c, spi. - vasily777(14.12.2021 10:50, MCU, полностью)
- Возникла потребность замены швейцарского 8-битного EM6819 с
питанием 0,9...3,6 вольт на что нибудь близкое по функционалу. Чего
то не могу найти. - my504(10.12.2021 10:23, MCU, полностью)
- Кто-нить подскажите дельную мысль... Надо организовать логический
уровень протокола обмена между двумя девайсами по UART. Да, это
почти студенческий вопрос, но в последнее время не хочется
изобретать велосипеды. Нет ли чего-то
стандартизованно-формализованного? Argon(1203 знак., 06.12.2021 21:33, MCU, полностью)
- Нашёл таки! Спецификация протокола WAKE от ЛИ Dingo(1 знак., 08.12.2021 14:48, ссылка)
- Счас имею схожую задачу, изобретаю свой велосипед. Девайсы висят на
общей шине, мастер один, скорость 250кбит (и есть желание сделать
500кбит). Разделитель пакетов - сигнал BREAK. Дальше заголовок
фиксированного размера и данные. В конце - CRC. - LightElf(08.12.2021 13:58)
- Ну в общем, определился - буду применять COBS. Однако не знает ли
кто ресурса с нормальным объяснением по-русски? Ибо то, что в
русской статье на википедии - дурной автоматический перевод. Да и
английская статья через жопу написана. Argon(582 знак., 08.12.2021 10:42)
- Надеюсь CRC у вас будет наличествовать? При кодировании COBS при
сбое даже в одном бите весь пакет фтопку нужно пускать. В отличие от какого-нибудь Modbus ASCII или
RTU где, во-первых, изначально предусмотрена LRC/CRC и, во-вторых,
даже необнаруженный единичный сбой в самом худшем случае значение
лишь одного регистра/переменной испортит. - rezident(08.12.2021 12:36)
- COBS требует для формирования пакета знать наперёд его содержание
до 254 байт. Подход довольно простой: ищем сколько ненулевых
октетов следует в буффере (но не более 254), записываем N + 1,
записываем эти байты. Второй и последующие подряд идущие нули,
логично, кодируются как 0x1 (перед нами идёт 0 ненулевых октетов) - lloyd(08.12.2021 10:47)
- Октетом вы называете байт? Почему привычно не назвать байтом? Что
такое N? Куда записываем N + 1? Куда записываем "эти байты"? Почему
второй и последующие нули кодируются 0x1? Их не получится спутать с
настоящими 0x1? - Argon(08.12.2021 10:52)
- Байт - это минимально адресуемая ячейка памяти процессором. У
C2000, к примеру, байт 16-битный. А октет всегда 8-битный. lloyd(635 знак., 08.12.2021 11:28)
- Хех, во всех RFC, которые я читал, были октеты вместо байтов. Это у
них шиза какая-то. Якобы в старину бывали и не 8-разрядные байты. А
могли бы не выпендриваться и написать на первой странице своего
документа "у нас байт 8-разрядный". - SciFi(08.12.2021 11:19)
- N - количество не нулевых байт подряд. N+1 передаем (записываем)
перед этими не нулевыми байтами, сам нулевой байт не передаем
(записываем). Если идет сразу ноль, тогда ненулевых байт ноль,
передаем 0+1=1, сам ноль не передаем. Настоящий 0х01 не нулевой, он
идет внутри ненулевых, сами ненулевые ни как не анализируются. - AlexBi(08.12.2021 11:08)
- Стоит заменить UART на CAN, как все проблемы решаюся автоматически. - evgeniy1294(07.12.2021 20:15)
- Мастер в бесконечном цикле по кругу перебирает всех слейвов при
этом передает информацию им если она есть. Когда слейв слышит свое
имя на шине - отвечает что жив и передает здесь же информацию на
мастер если есть. большие пакеты разбиваются на подпакеты с длиной
"окна" связи. детект обрыва связи если не отвечает слейв пару
циклов. Квитируется успех передачи. Если успеха нет то передача в
любом из направлений повторяется. - Tpoeшник(07.12.2021 18:23)
- Re: 1. Если связь по TTL уровням, то скорее всего легко добавить
еще один логический сигнал, означающий желание слейва отправить
данные. Это намного проще, чем решать проблему незапрошенных
посылок на протокольном уровне - VLLV(07.12.2021 09:49)
- Не так уж и сложно сочинить свой протокол. Если некое знакомство с
существующими в природе протоколами имеется (брать из них фичи там,
где надо). Потому что готовый протокол для всего этого списка
хотелок будет моструозным, КМК, ведь там будет много чего ещё
ненужного. - SciFi(07.12.2021 07:52)
- HDLC и ее производные. Я вот сделал как-то реализацию стека IrDA, и
теперь пользуюсь им при случае для межпроцессорного взаимодействия.
Вполне годная вещь, позволяет реализовать все вышеперечисленное. - il-2(07.12.2021 06:16)
- чем модбас не нравится? - LordN(07.12.2021 05:47)
- См. протоколы X-/Y-/Z-modem. Только непонятно, почему от дуплекса
отказались? rezident(1 знак., 06.12.2021 21:40, ссылка)
- Кстати, вопрос. Ты вроде-бы как-то делал какую-то игруху типа
мелкого робота на колёсиках, который разговаривал. Не нашёл тему
тут, видимо сгинула. А то мелкий пристал ко мне, давай робота
сделаем, чтобы речь понимал и общался. Щас голову чешу. - Звepoящep(07.12.2021 08:24, MCU, полностью)Гyдвин
- Тени прошлого. ST7, в частности ST72. ST72F324J4T6 до сих пор
продаётся на DigiKey. 160 - $5.7985 В общем мрачно, но кризис,
кризис. Evgeny_CD(1 знак., 06.12.2021 03:03, MCU, ссылка, полностью)
- А тем временем в Нанкине - новые RISC-V General(43 знак., 04.12.2021 11:35, MCU, ссылка, картинка, полностью)