Рубрика «Производство и разработка электроники» - 75

«С опытом приходит стандартный, научный подход к вычислению правильного размера стека: взять случайное число и надеяться на лучшее»
— Jack Ganssle, «The Art of Designing Embedded Systems»

Привет!

Как ни странно, но в абсолютном большинстве виденных мной «учебников для начинающих» по STM32 в частности и микроконтроллерам вообще нет, как правило, вообще ничего про такую вещь, как распределение памяти, размещение стека и, главное, недопущение переполнения памяти — в результате которого одна область перетирает другую и всё рушится, обычно с феерическими эффектами.

Отчасти это объясняется простотой учебных проектов, выполняемых при этом на отладочных платах с относительно жирными микроконтроллерами, на которых влететь в нехватку памяти, мигая светодиодом, довольно сложно — однако в последнее время даже у начинающих любителей мне всё чаще встречаются упоминания, например, контроллеров типа STM32F030F4P6, простых в монтаже, стоящих копейки, но и памяти имеющих единицы килобайт.

Такие контроллеры позволяют делать вполне себе серьёзные штуки (ну вот у нас, например, такая вполне себе годная измериловка сделана на STM32F042K6T6 с 6 КБ ОЗУ, от которых свободными остаются чуть больле 100 байт), но при обращении с памятью при работе с ними нужна определённая аккуратность.

Об этой аккуратности и хочу поговорить. Статья будет короткая, профессионалы ничего нового не узнают — но начинающим эти знания очень рекомендуется иметь.

Читать полностью »

— Шеф, у нас дыра в безопасности!
— Ну хоть что-то у нас в безопасности...

Привет!

В комментариях к предыдущему посту про InoThings++ высказали мнение, что в Интернете Вещей есть более важная для обсуждения область, нежели вмешательство государства — это область обеспечения безопасности устройств. Со всех точек зрения.

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

Почему вообще обеспечение безопасности в IoT рассматривают как что-то отдельное и специфическое, непохожее на обеспечение безопасности в классических ИТ-системах?

Да в общем потому, что IoT-системы на классические похожи лишь со стороны пользователя, видящего на экране монитора красивые картинки или управляющего лампочкой со смартфона — а вот внутри, на низком уровне, они совсем, совсем другие.

И, к сожалению, мы ещё многократно хлебнёт горя с авторами продуктов, не понимающими разницы в подходе и проблемах.

Читать полностью »

Продолжаем рассказывать о советских портативных кассетных магнитофонах. С первой частью материала можно ознакомиться здесь. Пришло время устройств с компактным форм-фактором, которые традиционно считаются наследниками легендарного SONY Walkman. Удивительно, но за сравнительно короткий период советская промышленность разработала внушительное количество устройств такого рода, многие из которых стали настоящими хитами среди советской молодежи 80-х.

История советских кассетников (часть вторая): бум Walkman`ов, гаджет для КГБ и магнитофоны-конструкторы - 1

Для меня этот пост еще и повод поностальгировать. Моим первым аудиогаджетом в жизни был портативный магнитофон “Электроника-331-стерео”, который появился в семье не на много позже меня, впоследствии это же устройство я использовал вместе со своим первым компьютером ZX-Spectrum. Именно благодаря ему я стал интересоваться музыкой, а впервые сломав и пытаясь починить узнал, что в советские магнитофоны ставят японские двигатели.
Читать полностью »

Продолжая наш цикл о советском аудио, захотелось рассказать о кассетных магнитофонах в СССР. Известно, что в Стране Советов эти устройства стали появляться несколько позже, чем на западе, а исчезли наоборот раньше (производство их было свернуто почти сразу после распада Союза).

История советских кассетников: эволюция “Десны”, MK-60 made in USA и народные магнитофоны 70-х - 1

Мне было интересно проанализировать насколько наши разработчики приблизились к коллегам из Японии, Западной Европы и США, удалось ли им догнать и перегнать, а также понять, почему советские разработки в этой области порой пользовались редким или т. н.”вынужденным” спросом, а большинство их современников стремились приобрести зарубежные образцы.

Ввиду того, что тема достаточно обширна, я разделю материал на четыре части, в первых двух я расскажу об эволюции портативных устройств, а в остальных — рассмотрю развитие и упадок стационарных дек.
Читать полностью »

5-8-8-lenin

Прочитав заметку про гипотетическое «нелицеприятное завтра», молодой, растущий, пытливый, крепнущий инженерный ум должен воспылать праведным гневом и, прижав к груди [конечно, обесточенный и остывший] паяльник одной рукой и положив вторую на коллективную библию, образованную стопкой потертых справочников по полупроводниковым изделиям, искренне-горячо, слезно-торжественно поклясться все, всегда, везде делать только и только правильно! А вот как правильно? Следующая заметка про «основы электробезопасности», призванная быть для таких молодых умов, если и не путеводной, так уж точно разъясняющей, сама требует разъяснений, уточнений и даже… некоторых поправок.

Настоящая заметка не претендует на роль путеводной, а призвана очень осторожно, чуть-чуть (чтобы революционный огонь взбудораженного ума разочаровано не угас в противоречиях с сухой, суровой действительностью) приоткрыть дверь в кладовую традиционных профессиональных умолчаний.
Читать полностью »

Компании наконец озаботились развитием IoT-устройств и их безопасностью - 1
Типичное IoT-устройство

IoT — сегмент рынка крайне молодой, только-только пробующий делать первые серьезные шаги. Конечно, IP-камеры и прочие датчики существуют уже давно, но полноценно назвать их «умными» язык не поворачивается. При этом одной из проблем рынка является, как не странно, цикл разработки, потому что он подразумевает не только создание физического девайса, но и написание ПО для него в условиях крайне ограниченных ресурсов. Это 20 лет назад несколько мегабайт памяти под приложение было нормой. Сейчас же, когда оптимизация потребления ресурсов пользователям (да и разработчикам) только снится, а для топовых продуктов нормальны утечки памяти или нереальная прожорливость (привет, Chrome), работа в условиях пары сотен килобайт флеш-памяти на энергоэффективном микроконтроллере кажется наказанием для тех девелоперов, кто плохо себя вел в прошлом году.

Но это не единственная проблема IoT. Не мне вам рассказывать, насколько беспомощными являются умные устройства в плане информационной безопасности. Истории о ботнетах из IP-камер, холодильников и прочих микроволновок периодически всплывают в медиа начиная еще с 2015 года. Добавим в это «блюдо» еще и «соус» из всяких умных колонок и ассистентов, типа Alexa или Алисы, и мы получим и вовсе пугающую картину; со времен китайских ноунейм-камер, продукты от Amazon и Яндекса обзавелись еще и возможностью совершать онлайн-заказы по запросу владельца. Собственно, именно эти функции нового поколения IoT-устройств и заставили производителей ПО начать шевелиться, а именно укреплять рубежи цифровой обороны наших говорящих ящиков и прочих датчиков.
Читать полностью »

Если на клетке слона прочтешь надпись: буйвол, — не верь глазам своим

В одном разрабатываемом изделии применялась аккумуляторная батарея значительной емкости из нескольких параллельных секций по шесть банок LiIon аккумуляторных ячеек типа «1s1p MP 176065 IntegrationTM» на 6000мАч производства фирмы Saft в каждой. Одна батарея вернулась к нам на ремонт и я решил оценить степень баланса отдельных банок после длительной эксплуатации. Для этого следовало расцепить банки, зарядить по отдельности и оценить разброс принятого заряда.

Но для начала решил посмотреть напряжение на секции в целом, ожидая увидеть ноль, ведь любая разряженная банка отключает себя от цепи потребителя, и мы должны либо увидеть напряжение минимум 6*2.4В=14.4В, либо ничего.

Каково же было мое изумление, когда на одной секции было обнаружено 12В, а на другой и вовсе 7В (дальше я Вольты писать не буду и вовсе не из-за отсутствия уважения к великому итальянцу, а в силу лени).
Читать полностью »

Технологическая студия DEEPTIME из Чехии представила ограниченную серию акустических систем, изготовленных из песка при помощи метода 3D-печати. Устройство создано промышленными дизайнерами Мартином Хребеном и Онджеем Чотовинским.

Первая серийная акустическая система из песка напечатана на 3D-принтере в Чехии - 1

Создатели заявляют, что помимо эстетической и экспериментальной ценности песок был выбран в связи с его акустическими свойствами. Прототип АС появился в прошлом году, в этом году создатели объявили о старте продаж небольшой серии. Под катом подробнее о новом устройстве, его характеристиках, создателях и технологии производства.
Читать полностью »

Введение

Довольно часто в устройствах применяются активные датчики (терморезисторы, тензорезисторы, фоторезисторы, времярезисторы, счастьерезисторы и прочее).

Чтобы измерять соответствующую величину, датчик включают в цепь делителя в одно из его плеч.
Так рекомендуют поступать практически везде, особенно там, где точность не так важна как стоимость. В интернете множество уроков для ардуинщиков о считывании температуры именно при помощи терморезистора. Так поступают и в более серьезных приложениях.

Для примера ниже я представил часть схемы из драйвера VESC 4.2, который измеряет температуру ключей.

Читать полностью »

Несколько месяцев назад завершился мой проект по изготовлению USB-клавиатуры. Среди прочего, я выполнил дизайн электронных схем, спроектировал печатную плат, запрограммировал прошивку, сделал макет в CAD и произвёл сборку устройства. В результате получилась удобная клавиатура, которую я использую ежедневно и ласково называю KeeBee:

KeeBee. Изготовление с нуля собственной USB-клавиатуры - 1
Клавиатура KeeBee в окончательном виде

Несколько целей проекта:

  1. Самостоятельное создание схемы.
  2. Написание прошивки клавиатуры.
  3. Узнать, как работает протокол USB.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js