цифровая электроника
вычислительная техника
встраиваемые системы

 

Код для взаимодействия с матричной клавиатурой

Автор: Mike(admin) от 1-09-2014, 12:30

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


Матричная клавиатура

Реализация простого планировщика задач

Автор: Mike(admin) от 19-08-2014, 06:55

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


планировщик задач

Приведенный код планировщика задач полезен для знакомства с данным механизмом. Он представляет собой планировщик по методу round-robin, написан на языке C и удобен при отладке на ПК, поскольку содержит приличное количество команд вывода данных на экран printf.

Код для взаимодействия микроконтроллера и сканера отпечатков пальцев

Автор: Mike(admin) от 23-07-2014, 06:53

В некоторых приложениях, требующих повышенной безопасности, желательно иметь некоторый модуль для аутентификации пользователя. Таким модулем может служить сканер отпечатков пальцев, например, SM-630.


сканер отпечатков пальцев

Встроенный DSP-процессор позволяет без особых проблем организовать взаимодействие между контроллером и сканером благодаря богатому набору управляющих команд. Ниже представлен пример кода такого взаимодействия.

4-битный режим передачи данных для ЖК-дисплея

Автор: Mike(admin) от 13-07-2014, 08:17

Обычно передачу данных на символьные ЖК-дисплеи осуществляют по 8 линиям. Но в целях экономии количества выводов микроконтроллера такую передачу можно осуществить всего лишь по четырем линиям.


MC21605A6W

Нижеприведенный код на языке C позволяет осуществить четырехпроводное подключение микроконтроллера ATMEGA328P к символьному дисплею MC21605A6W (16x2). При этом следует учесть, что выводы DB0:3 и RW должны быть заземлены.

Маркировка импортных транзисторов

Автор: Mike(admin) от 9-07-2014, 12:25

Транзистор представляет собой полупроводниковое устройство, которое выполнено в виде отдельного электронного компонента или как части интегральной схемы. Зачастую их производят из кремния или германия. Большинство типов транзисторов имеют кремниевое происхождение, и они могут выдерживать высокие температуры. Транзисторы могут быть как биполярными, так и полевыми, и быть предназначены для различных сфер применения.


Транзистор BC548

Но из чего конкретно сделан определенный транзистор, и для каких целей он наиболее подходящий? Об этом может поведать его наименование. И если с отечественными транзисторами все более-менее понятно, то импортные модели не столь просты в расшифровке. Поэтому предоставим небольшой ликбез по данной теме.

Связываем акселерометр ADXL345 и микроконтроллер

Автор: Mike(admin) от 5-07-2014, 15:55

Акселерометр ADXL345 представляет собой 3-осевой датчик ускорения с возможностью связи как по интерфейсу SPI, так и по I2C. Он довольно дешев и прост в эксплуатации, поэтому хорошо подходит для несложных приложений инерциальной навигации.


акселерометр ADXL345

Представленный код позволяет наладить взаимодействие между ADXL345 и микроконтроллером (в данном случае код для PIC16 и компилятора CCS PICC, но при желании можно переделать под любой МК) по шине I2C. С помощью него можно инициализировать, настраивать акселерометр, записывая в него данные по определенному адресу, и считывать данные с самого акселерометра.

WiFinder – оповещение о присутствии устройства в сети WiFi

Автор: Mike(admin) от 30-06-2014, 07:39

Если вы живете в общежитии с сетью WiFi и хотели бы, чтобы нарушающее ваше одиночество возвращение соседей по комнате не было столь внезапным, то можно воспользоваться очень полезным в подобных случаях кодом WiFinder.


WiFinder

Этот довольно простой скрипт, написанный на Python, определяет появление в сети нового устройства, например, телефона соседа, если, конечно, на этом телефоне активирован модуль WiFi.

Вычисление CRC-16

Автор: Mike(admin) от 22-06-2014, 16:05

Представленный код позволяет реализовать основанный на полиномиальной арифметике алгоритм расчёта контрольной суммы CRC16.


CRC-16

Для выполнения функции алгоритма нужно сначала присвоить константе POLYNOM одно из перечисленных до этого значений CRC16.

Простой метод определения направления вращения вала инкрементального энкодера

Автор: Mike(admin) от 12-06-2014, 07:21

Определить направление вращения двухбитного инкрементального энкодера можно довольно простым способом. При этом не нужно организовывать ветвления из структур if-then, которые оценивают оба бита при каждом переходе.


инкрементальный энкодер

Здесь применяется операция исключающего ИЛИ над младшим битом новой выборки и старшим битом старой выборки.

Избавьтесь от Google Glass в своей сети

Автор: Mike(admin) от 8-06-2014, 07:11

Очки дополненной реальности Google Glass, не смотря на относительно высокую стоимость, набирают популярность. Впрочем, это нравится далеко не каждому. Люди, не желающие лишний раз попадать в объективы каких-либо видеокамер, далеко не в восторге от такой новинки. Энтузиаст по имени Julian, которого можно причислить к этой категории людей, разработал специальный скрипт glasshole, позволяющий выявить присутствие Google Glass в сети и «выпнуть» эти очки из нее.


Google Glass

Принцип работы скрипта прост и заключается в том, что каждый производитель сетевых интерфейсных устройств присваивает своей продукции собственный MAC-префикс. Это часть МАС-адреса, которая является уникальной для данного производителя. Программа с помощью утилиты arp-scan формирует список всех MAC-адресов устройств сети, которые потом сравнивает с MAC-адресом, характерным для Google Glass. При совпадении выдается предупреждающий звуковой сигнал, и затем запускается утилита aireplay-ng в режиме де-аутентификации. Это позволит отправить spoof-пакеты клиенту (очкам Google Glass), что заставит его отключиться от сети.