Реклама

Макрос в Assembler на примере AVR

Макрос — это набор команд и инструкций,  которые группируются в единую команду для автоматизации задач программирования, ускорения часто выполняемых действий редактирования и форматирования. Также Макросы могут использоваться для ускорения разработки программного обеспечения для микроконтроллеров на языке программирования Assembler. В процессе компиляции Макросы заменяются на последовательности команд микроконтроллера. Подобный подход к программированию позволяет облегчить восприятие программного кода,…

QMenu — контекстное меню в QTableView

Для работы с контекстным меню в Qt используется класс QMenu. При совершении действий, которые должны вызвать меню, вызывается обработчик, который создаёт меню и привязывает обработчики к действиям в данном меню. В данном уроке работа с контекстным меню будет показана на примере программного кода из урока по работе с QDataWidgetMapper. В данном уроке будет отредактировано два файла…
Advertisement

QShortcut или Горячие клавиши в Qt

Даже в официальной документации на тему QShortcut написано не так много, поэтому это скорее заметка, чтобы не забыть, а не полноценная статья. Всего лишь несколько слов о том, как подключить объект QShortcut, который будет отвечать за обработку нажатия горячей клавиши или сочетания горячих клавиш, например Ctrl + D. Программный код был написан в QtCreator 3.3.1 на основе…

Фильтр для записей в QSqlTableModel

Продолжая работу с таблицами в Qt, хотелось бы освятить тот момент, как установить фильтр на модель представления данных в QSqlTableModel или в QSqlRelationalTableModel. Поэтому для описания процесса установки фильтра за основу был взят программный код из урока по QSqlTableModel. Программный код был написан в QtCreator 3.3.1 на основе Qt 5.4.1. Структура проекта В данном уроке структура…

Применяем Фоторезист при изготовлении печатной платы

Все слышали о том, что печатные платы можно изготавливать методом ЛУТа (лазерно-утюжная технология), но не все в курсе того, что печатные платы в домашних условиях можно изготавливать, применяя Фоторезист. А ведь этот метод позволяет изготавливать печатные платы со значительно более мелкими элементами, чем метод ЛУТа. Фоторезист по принципу применения может быть двух видов: негативный — когда…

XML файлы в Qt — чтение и запись

Средства разработки Qt включают в себя функционал по работе с XML файлами, который позволяет как создавать XML файлы, так и читать их, что может быть полезно для создания программ по автоматическому созданию XML разметок, конфигурационных файлов, использующих XML, либо для парсинга XML-файлов. Для записи файлов в формате XML используется класс QXmlStreamWriter, тогда как для чтения XML файлов…

USI в Attiny24 настройка в режиме Two-wire

USI — Universal Serial Interface (Универсальный последовательный интерфейс) является фактически заготовкой для аппаратных последовательных передачи и приёма данных. Данный интерфейс не является готовым решением для какого-то определённого протокола передачи данных, но позволяет реализовать более удобный способ передачи данных, чем в случае с полностью программным решением. Суть данного интерфейса заключается в том, что он предлагает аппаратный уровень…

QSplitter или Как добавить разделитель

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

MUL — Операция умножения в AVR Attiny

MUL — инструкция умножения в микроконтроллерах, присутствует, например, в микроконтроллерах Atmega. Но не во всех микроконтроллерах AVR присутствует аппаратная поддержка функций умножения. Например в микроконтроллерах Attiny команда MUL попросту отсутствует, поэтому решение этой задачи возлагается на программный код. Основной момент, который необходимо учитывать при реализации функции умножения это то, что для сохранения результата умножения понадобится два…

EEPROM в микроконтроллерах AVR Atmega

Микроконтроллеры AVR Atmega48/88/168/328 содержат память EEPROM объемом 256/512/512/1K байт соответственно. EEPROM  в микроконтроллерах AVR поддерживает до 100 000 циклов перезаписи. Доступ к энергонезависимой памяти осуществляется посредством регистров трёх видов: EEARH, EEARL — регистры адресации ячеек памяти. В Atmega48 регистр EEARH отсутствует, поскольку в данном типе микроконтроллера присутствует всего 256 ячеек памяти. EEARH отвечает за старший байт…