All streams
Search
Write a publication
Pull to refresh
178
99.9

Embedded SW/Firmware Engineer

Send message

Но не такие перегруженные, как на примерах  В них сложно разобраться

Это ни разу не проблема. Исходник схемы это векторный *.svg файл.
Открываете его в Inkscape или Adobe Illustrator(e) и отключаете видимость тех слоев, которые вас не интересуют.

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

Еще раз, такие блок-схемы не для печати на бумаге. Это для анализа в векторном редакторе/браузере.

По этой схеме из Altium невозможно ответить даже на такой простецкий вопрос "сколько у платы разъёмов?" Надо просмотреть все листы, чтобы перечислить разъёмы.

В представленной же в статье нотации разъёмы видны сразу. Достаточно просмотреть схему по периметру по или против часовой стрелки.

Структурная схема из Altium нужна только для прощёлкивания (кликерства). На этом ее польза целиком и полностью заканчивается.

Плюс явные недостатки:
--Сетка(абсолютно непонятно зачем) отвлекает внимание.

--Не указана битовая скорость

--не указано как распределяется питание

--не указано сколько пинов на каждом чипе
--не указано какими частотами тактируются чипы

--не показывает сколько памяти доступно в плате

--не показывает сколько регистров в периферийных чипах

Структурная схема из Altium - это инфантильная документация про документацию. Она практически никак не характеризует само устройство и намекает на то, что надо просмотреть оставшиеся 30-100 страниц схемотоса.

Схемы с первой страницы мало информативны. Нужны лишь для прощёлкивания на нужный лист.

Боюсь, что скоро в России придется разводить топологию PCB на миллиметровке при помощи рейсшины.

Про CAN I2C согласен.

Не всегда UART делают 2х проводным.
Я уже в двух российских организациях видел как разработчики железа выводят на разъём только UART_TX.


Есть интерфейсы где количество проводов варьируется в зависимости от режима: MII, I2S, SPI, SDIO. Поэтому лучше указывать битность шины.

Altium это платный софт.
Firmware программистам не покупают Altium.

Также Altium объявили Россию санкционной страной.

Раз нет слоёв то, тут и говорить не о чем, это значит, что в DrawIO можно делать исключительно и только очень простые и дешевые схемотосы.

Пока в DrawIO нет поддержки слоёв, то DrawIO так и будет позиционирует себя как программа для начальной школы.

я бы добавил номера страниц, на которых находятся компоненты куска схемы для упрощения поиска

Не могу согласится.
Блок-схема должна показывать сущность только устройства, а не сущность документации.
Иначе получится документация о документации. Бесконечный Doc Food.

Этапы разработки дают разную документацию.
Проблема в том что российские компании часто пренебрегают выпуском КД.

Блок-схемы не делают в первую очередь. Перечни компонентов заполняют без названия чипов, что даже datasheet приходится искать по надписям на корпусе микросхемы (при помощи камеры с увеличением на смартфоне).

Inkscape еще хорош тем, что в нем чертить можно. Бесплатная альтернатива AutoCAD.

Еще не пробовал yEd. Что-то не видно чтобы в yEd были слои (как в Photoshop и Inkscape).

У локальных переменных обработчика прерываний собственный стек прерываний(вариант а) или локальные переменные прерывания находятся в стеке конкретного потока, в котором возникло прерывание(вариант b)?

Зачем в UART cуществует опция с 2мя стоповыми битами?
Зачем два стоп-бита UART, если с одним стоп битом больше плотность данных?

Канадский Bluetooth модуль BC127 компании Sierra Wireless тоже обладает интерфейсом командной строки поверх UART.

Также очень хорошей практикой является установка на PCB вот таких цепляш для заземления.


Доступный GND всегда нужен в отладочных платах.

В основном этот трюк используют PCB инженеры с североамериканского континента.

Зачем делают маленькие отверстия по периметру метализации вокруг большого отверстия для стоек?

Information

Rating
71-st
Location
Москва, Москва и Московская обл., Россия
Registered
Activity

Specialization

Embedded Software Engineer, DevOps
Senior
Git
Bash
CI/CD
C
Embedded system
Programming microcontrollers
Software development
Algorithms and data structures
System Programming
Development of drivers