


Продолжу теорию работы с различным железом. Сейчас рассмотрим TFT-дисплеи, для конкретики рассмотрим дисплей на контроллере ILI9341. Как устроен дисплей. Основой дисплея (чаще всего) являются: TFT-матрица; Контроллер дисплея; Интерфейс; Преобразователи уровня; Питание. TFT-матрица. Прежде чем рассматривать дисплей определимся с цветами. Практически все матрицы - RGB, бывают BGR или что-то иное, но это только порядок следования цветов ...

Допустим, нам нужно разработать БП для какого-либо устройства на одном литий-ионном аккумуляторе. Аккумуляторы имеют две основные формы - прямоугольные (плоские) и цилиндрические. Для того, чтобы разработать БП, нам нужно учесть кучу всего: Напряжение питания устройства; Потребляемый ток; Тип зарядного устройства; Падение напряжения на стабилизаторе; Стабильность напряжения на выходе стабилизатора; Пульсации на выходе БП. Напряжение питания ...

В прошлый раз я рассказывал, что такое адресное пространство МК, и как мог показал отличия разных архитектур. Настала пора рассказать, как примерно устроены порты GPIO, и с чем их лучше готовить. Каждый функциональный регистр - это, с точки зрения программиста, просто адрес, куда мы пишем или откуда читаем данные. Но с точки зрения железячника это ...

Как всё устроено "внутрях". Данный опус меня побудило написать приобретение новых друзей, которые хотят изучать STM. Есть много разных хороших книг, но многие из них сразу начинают рассказывать, как всё это программируется, и не касаются внутренней структуры самого МК. Можно найти отдельных авторов, которые небольшими статьями пытаются объяснить, как все устроено. Но приходится всё это ...

В статье "Часть 12. STM32 и C++. I2C в Cortex-M4" я описал, как работать с I2C на ядрах Cortex-M4. Продолжая работать с I2C на других чипах, я столкнулся с тем что данный способ общения с I2C корректен не для всех ядер. Описанный способ точно подходит для STM32F405xx и STM32F407xx, вполне возможно что подходит также и ...

Продолжение предыдущей статьи. Если разобрались в том, что я и сам плохо понимаю (для тех, кто не понял - шутка), будем продолжать разбираться дальше. Есть два способа обмена: просто ведущий стучится к ведомому, тот в ответ высылает пакет со всеми данными, и второй способ, похожий на ModBUS (совсем чуть-чуть). В этом случае ведущий передаёт один ...

ModBUS. О нем много было рассказано, много копий сломано. Но сложилась ситуация таким образом, что никто и ничего не рассказал о том, как пишется прошивка для ведомого, а не для ведущего. Как создаются регистры, как они заполняются, каким образом отыскивается нужный регистр. Вот общение с ведомым обсосано со всех сторон, но разговор сейчас не о ...

Что-то мне так сильно повезло, что у меня попёрли дисплеи на SPI, и поэтому пришлось написать библиотеку для работы с этим интерфейсом. Так как очень многие дисплеи могут работать только ведомыми (slave) и могут только принимать данные, написал только часть касающуюся передачи. Постарался сделать все типы передачи данных и часть функций чтения. Хоть передачу и ...

Все, кто пользовался отладкой на уровне регистров под STM32CubeIDE, замечал, что список регистров идёт вразнобой, без какой-либо логики. Например, список для типичного STM32F407xx выглядит таким образом, здесь у нас порты ввода/вывода: Это у нас UART/USART: Это таймеры: Как видим, все устройства идут не по порядку, а вразнобой. И это ещё цветочки. Есть МК, где всё ...

Как-то несколько лет назад, когда я только начинал программировать, вышел на меня человек и попросил написать прошивку для "Прикормочного кораблика". Потом он куда-то пропал и так и не ответил, заработало это, как он хотел, или нет. Я же сам полную схему не собирал, только проверял управление, работает нормально или нет. У меня была договоренность, что ...



