Pull to refresh
6
Karma
0
Rating
Роман Горобченко @phatok

User

STM32, C++ и FreeRTOS. Разработка с нуля. Часть 1

Programming microcontrollers *
Tutorial

Введение


Не так давно мой отдел столкнулся с трудностями поиска новых инженеров программистов для разработки встроенного ПО. Опытным и умным не нравился уровень зарплаты, а молодых просто нет в нашем городе. Поэтому под патронажем нашей доблестной глобальной компании со штаб квартирой где-то в Сент Луисе, мы начали сначала набирать студентов в интернатуру, а потом, решили пойти другим путем и сделать целых два курса по разработке ПО, а уже там самим выбирать самых “толковых” если понадобятся вдруг новые сотрудники. Это намного дешевле и позволяет охватить максимальное количество претендентов.
Немного отступлю от темы, сам я программировал последний раз очень давно, и вообще больше на С#, а последний глобальный проект на микроконтроллере (PIC16 на зыке Си) был сделан в далеком 2007 году.
Поэтому мне предстояло разобраться с современными микроконроллерами, языком С++ и операционной системой реального времени.
Конечно все наши проекты уже сейчас используют ОСРВ и пишутся на С++, но как разработчик я в них не учувствую, а занимаюсь тунеядством управлением проектами разработки такого ПО.

Выбор


Времени у меня на все про все было дано 1 месяц. С начала июня 2015 до начала июля 2015, потому что потом я собирался в отпуск, а после отпуска обычно полно работы. Надо было делать все быстро и четко.
Немного проконсультировавшись с коллегами, выяснил, что модное направление ARM Cortex различные ядра и из доступных отладочных плат можно заказать Olimex STM32P152 которые стоили 25 долларов. Они пришли очень быстро — 6 плат по цене примерно 2000 рублей. Стоит заметить, что эти платы были закуплены нами для университета, где собственно и будет проходить этот курс.
image
Читать дальше →
Total votes 27: ↑23 and ↓4 +19
Views 117K
Comments 13

ARM-микроконтроллеры STM32F. Быстрый старт c STM32-Discovery

Programming microcontrollers *
Sandbox
При изучении image любого незнакомого дела, особенно когда речь идет о микроконтроллерах, возникает вопрос — «С чего начать». Ведутся поиски статей по ключевым словам «Getting Started», неизбежно появляется дилема выбора среды разработки и программатора-отладчика. Чтобы помочь вам определиться с ответами на возникшие вопросы, я поделюсь своим опытом в освоении 32-битных контроллеров семейства STM32F от ST Microelectronics.

Выбор контроллера


Вариантов по сути дела было два — STM32F или NXP (LPC1xxx). На микроконтроллеры STM32F мой выбор пал по нескольким причинам.
Читать дальше →
Total votes 54: ↑51 and ↓3 +48
Views 388K
Comments 64

Как настроить Android и RAD Studio XE7 (Delphi, C++ Builder)

«Embarcadero (Borland)» corporate blog Delphi *Development of mobile applications *Development for Android *
Поговорим о том, как «подружить» или настроить Android и RAD Studio XE7 (или Delphi, или C++Builder, или AppMethod).
На самом деле вопрос не очень сложный, но часто поступающие на эту тему вопросы побудили меня написать этот пост.

План действий:
— настройка RAD Studio XE7 (SDK + NDK);
— настройка Android-устройства;
— запуск своего приложения на Android-устройстве.
Читать дальше →
Total votes 22: ↑18 and ↓4 +14
Views 62K
Comments 22

GPS Tracker на ардуино своими руками

Global Positioning Systems *
После нескольких экспериментов с ардуиной решил сделать простенький и не очень дорогой GPS-tracker с отправкой координат по GPRS на сервер.
Используется Arduino Mega 2560 (Arduino Uno), SIM900 — GSM/GPRS модуль (для отправки информации на сервер), GPS приёмник SKM53 GPS.
Читать дальше →
Total votes 49: ↑43 and ↓6 +37
Views 205K
Comments 57

Разбираемся с LCD экраном LPH9157-2 от Siemens C75/ME75

DIY

Внятной документации на этот экран я не нашел поэтому пришлось разбираться с тем что есть и экспериментировать. В качестве управляющего устройства я использовал Raspberry PI. Так-же была написана программа позволяющая превратить этот экран в мини-монитор.

Описание


Данный дисплей имеет разрешение 132 x 176 пикселей и даёт возможность работать с тремя цветовыми палитрами 16(5-6-5), 12(4-4-4) и 8(3-3-2) бит.
Читать дальше →
Total votes 70: ↑70 and ↓0 +70
Views 84K
Comments 21

Используем MSP430-Launchpad в качестве программатора

DIY
Sandbox
Здравствуйте! Я хочу поделиться с хабрасообществом одним необычным применением отладочной платы MSP430-Launchpad.

Руководство предназначено тем, кто уже имеет MSP430-Launchpad, освоил микроконтроллеры MSP430-ValueLine и задумывается о том, чтобы перейти на более продвинутые МК MSP430, но пока не решился на то, чтобы приобрести профессиональный программатор MSP430-JTAG или MSP430-UIF. Но это не страшно. В качестве программатора можно пока будет использовать Launchpad. Под катом я расскажу как это сделать.
Читать дальше →
Total votes 16: ↑16 and ↓0 +16
Views 20K
Comments 17

Настройка корректного завершения работы гостевой Windows 2003 в qemu-kvm Linux

Information Security *
Это не статья, а просто заметка для тех кто столкнулся с проблемой корректного выключения.
Я не претендую на оригинальность, но лекрство собранное по частям на просторах интернета мне помогло, надеюсь поможет и вам.

1. Скрипт для посыла сигнала завершения работы гостевым ОС

#!/bin/bash
CONNECT_STRING="qemu:///system"
for MACHINE in $(virsh -c "$CONNECT_STRING" list | awk '/running$/ {print
$2}') ; do
virsh -c "$CONNECT_STRING" shutdown $MACHINE
done
sleep 600


2. Настроить ключ в реестре ОС
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows

ShutdownWarningDialogTimeout dword:00000001

3. Изменить локальную политику безопастности
Control Pannel -> Admin tools ->Local security Policy
Local policies ->Security Options ->Shutdown: Allow system to be shutdown...->Enable

Вот и все.
Total votes 8: ↑6 and ↓2 +4
Views 1.7K
Comments 5

Установка виртуальных машин KVM под ubuntu server

Virtualization *
Последнее время применение виртуализации при построении серверной инфраструктуры встречается все чаще. Гибкость, масштабируемость, экономия делают эту технологию очень перспективной. Сейчас на рынке существует достаточное количество решений, как проприетарных, так и open source, позволяющих развернуть виртуальные сервера. Один из таких вариантов я хочу рассмотреть в данной статье.
Читать дальше →
Total votes 10: ↑9 and ↓1 +8
Views 152K
Comments 23

Delphi XE5 + Android: первые впечатления

Delphi *SQLite *
Sandbox

Возвращение к истокам


Delphi XE5 я взял в руки по случаю конкурса «Осенняя Мобилизация». Идея (и возможность) писать под Андроид не на си-шарпе или яве, а на знакомом вдоль и поперёк паскале мне определённо понравилась. Расскажу тут о своих впечатления, проблемах, которые встретились, а также развенчаю некоторые «городские легенды».
Читать дальше →
Total votes 44: ↑34 and ↓10 +24
Views 69K
Comments 74

Своя реализация монитора загрузки CPU и RAM из найденного в шухляде

Delphi *
Sandbox
Одним из самых любимых хабов на хабре всегда был для меня DIY, я и сам не прочь что-то сделать своими руками. Но так, как я в большей степени программист, а в меньшей — электронщик, сделанные мной «прототипы» всегда непрезентабельны. Данный девайс не исключение. Код тоже не причесан, т.к. это больше proof-of-concept чем коммерческое решение. Тем не менее, думаю данных пост будет полезен, и даже найдутся те, кто повторит эту поделку.
Вдохновившись постом о стрелочных Vu-метрах, показывающих загрузку CPU и использование RAM, решил сделать свой вариант. Не имея миниатюрных вольтметров, но имея покоривший своей ценой и простотой протокола 16х2 экран на базе контроллера hd44780 решил организовать визуализацию на нем. Как МК был выбран ланчпад MSP430G2, коих я купил жменьку, когда они были по $4.30. Ничего не мешает реализовать это все на любой arduino, нужно лишь поменять названия пинов.
Схема очень проста(взята из интернета):
image
Читать дальше
Total votes 14: ↑10 and ↓4 +6
Views 20K
Comments 14

Information

Rating
Does not participate
Location
Умань, Черкасская обл., Украина
Date of birth
Registered
Activity