Приём-отправка данных между МК и программой на ПК (RS-232)

После того, как вдоволь намигался светодиодом stm32 и посмотрев температуру с LM75, решил погонять данные между компом и демоплатой.
Что именно за данные?
1) Отправка — по тыканью на кнопку в программе зажигаем светодиоды;
2) Прием — в программу сливаем данные с АЦП.
Демоплата — STM32VL-Discovery + CooCox IDE
Для ПК пишу с использованием Qt, который можно выкачать отсюда http://qt.nokia.com/downloads

Disclaimer: я не профессиональный программист, и впервые познакомился с ООП. Да и вообще это моя первая статья. Так что баги/фичи/наставления приветствуются пирожком и конфеткой :)


Читать дальше

Форматный вывод на Си для микроконтроллеров.

Форматированный ввод-вывод применяется очень широко, в первую очередь это, конечно, взаимодействие с пользователем, а так-же отладочный вывод, логи, работа с различными текстовыми протоколами и многое другое. В этой статье рассматриваются особенности применения форматированного вывода (ввод оставим на потом) для микроконтроллеров.
Первая программа написанная для ПК традиционно называется «Hello, world» и естественно пишет в стандартный вывод эту знаменитую фразу:
#include <stdio.h>
int main(){
printf("%s", "Hello, world");
return 0;
}

Первая программа для микроконтроллера обычно зовётся «Blinky» и она просто мигает светодиодом. Дело в том, что заставить работать традиционный «Hello, world» на микроконтроллере не так уж и просто для начинающего. Во первых, нет стандартного устройства вывода и его функциональность ещё нужно реализовать. Во вторых, не всегда бывает очевидно как подружить стандартные функции вывода с целевым устройством. Ситуация усугубляется тем, что в каждом компиляторе (тулчейне) это делается каким-то своим способом.


Читать дальше
  • +7
  • 14 октября 2011, 09:21
  • neiver
  • 1

+3,3В ЖК-индикатор из обычного +5В

При подключении ЖК-индикатора к 3,3В схеме может возникнуть проблема — не хватает контрастности, но есть выход. На индикаторах WINSTAR предусмотрены посадочные места под распайку инвертора напряжения. Полученные -3.3В подключаем через делитель на вход контастности.



Читать дальше

Микроконтроллеры Kinetis вступление.

Здравствуйте, сегодня хочу рассказать вам про новые мк от Freescale на базе ядра Cortex M4 — семейство Kinetis.

Обзор ядра
Я думаю вы уже знакомы с Cortex M3, поэтому долго рассказывать не имеет смысла.
Ядро M4 это то же M3+dsp инструкции(4 параллельных сложения-вычитания 8бит, 2 параллельных сложения-вычитания 16 бит, 2 параллельных МАС(умножение с накоплением) операции),
а также опционально: блок работы с плавающей точкой.




Читать дальше
  • 0
  • 12 сентября 2011, 10:40
  • usasha

Простой способ вывести негативный рисунок ПП из любого редактора

Скажу сразу — придумал не я, нашел на просторах интернета, уж и не вспомнить где…

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



Читать дальше

Proteus VSM. Пошаговая отладка

Photobucket

Введение

Proteus VSM это пакет сквозного проектирования электрических схем, в котором можно построить принципиальную — электрическую схему, просимулировать ее работу (ProSpice), если она содержит микроконтроллер — тут-же написать программу для него, отладить программу (козырь Протеуса), после всех этапов отладки схемы/программы (при помощи модуля ISIS), можно переходить (не отходя от кассы) к созданию печатной платы, при помощи модуля ARES.

Кстати Proteus, в греческой мифологии, царь обладающий даром предсказания и перевоплощения.


Читать дальше

Препроцессор C

Си препроцессор представляет собой макро язык, который используется для преобразования программы до того как она будет скомпилирована. Причем сама программа может быть не обязательно на Си, она может быть на С++, Objective-C или даже на ассемблере. В общем препроцессор представляет собой примитивный как-бы функциональный язык, с помощью которого можно делать вполне интересные вещи.


Читать дальше

Радио модуль RFM70

RFM70
Радиомодули RFM70 фирмы HopeRF представляют из себя маломощные приёмопередатчики нелицензируемого диапазона 2.4 ГГц с неплохими параметрами и очень привлекательной ценой. Конструктивно, модули представляют из себя печатную плату 13х17 мм с микросхемой-«каплей» и печатной антенной.

Модуль работает в диапазоне 2400-2483 МГц, который разбит на 83 канала, при максимальной выходной мощности около 3.2 милливатт (5 dBm). Максимальная скорость передачи данных составляет 2 Мбит/с., что очень даже не плохо — можно передавать несжатый звук в обе стороны, причем с запасом. Практическая дальность связи при прямой видимости составляет около 40-50 метров, в условиях многоквартирного жилого дома — около 15-20 метров — через 4 кирпичных стены.


Читать дальше

Выбор RTOS в домашних условиях для AVR, STM8 и немного STM32 :)

Нити, потоки...Задумался о выборе RTOS. Первая цель — обучение, следующая — использование в своих проектах. В процессе поиска и чтения понял, что запомнить всё не могу, пришлось делать табличку сравнения. Когда таблица была готова, решил выложить её сюда. Во-первых, потому, что кому-то ещё она может быть полезна, во-вторых, я мог что-то пропустить, в комментариях подскажут :)



Читать дальше

Типобезопасные флаги на базе enum

При работе с микроконтроллерами на низком уровне очень часто приходится работать с отдельными битами в конфигурационных регистрах, с различными флагами состояний и т.д. Традиционно в языке «С» для этого используются целочисленные переменные и битовые операции с ними. Всё вроде-бы просто и понятно, что еще нужно? Типобезопасность. Целочисленной переменной, используемой для флагов, можно присвоить любое неосмысленное число, и компилятор совершенно не будет против.



Читать дальше