Май 18 2010

Семинар NXP/ARM

Вчера в Екатеринбурге состоялся семинар, посвящённый продукции фирмы NXP — микроконтроллерам с ядром Cortex M3.

Семинар проводила фирма SIMECS из Санкт-Петербурга (www.microcontroller.ru) и фирма «Радиоэлектроника», г. Екатеринбург (www.radioel.ru).

Был прочитан доклад по архитектуре Cortex M3, по среде разработки Keil, а также проведён тренинг на базе отладочного набора Keil с микроконтроллером LPC1768.

Май 16 2010

Протокол Modbus в устройствах на базе микроконтроллеров. Часть 1.4

Продолжение. Начало здесь: http://32bit.me/?p=355 — введение; http://32bit.me/?p=373 — часть 1.0; http://32bit.me/?p=377 — часть 1.1; http://32bit.me/?p=395 — часть 1.2; http://32bit.me/?p=406 — часть 1.3.

Перед тем, как перейти к программной реализации поддержки протокола Modbus, необходимо прояснить ещё один вопрос.

Регистры протокола (3х и 4х) имеют разрядность 16 бит, а значения переменных, которые требуется передавать, часто имеют разрядность 32 бита. Каким образом 32-битные переменные передаются в 16-битных регистрах?

Read more »

Май 16 2010

Протокол Modbus в устройствах на базе микроконтроллеров. Часть 1.3

Продолжение. Начало здесь: http://32bit.me/?p=355 — введение; http://32bit.me/?p=373 — часть 1.0; http://32bit.me/?p=377 — часть 1.1; http://32bit.me/?p=395 — часть 1.2.

Кратко рассмотрим обмен данными между ведущим и ведомым устройством для других типов регистров.

Read more »

Май 13 2010

Протокол Modbus в устройствах на базе микроконтроллеров. Часть 1.2

Продолжение. Начало здесь: http://32bit.me/?p=355 — введение; http://32bit.me/?p=373 — часть 1.0; http://32bit.me/?p=377 — часть 1.1.

Перед тем, как приступить к дальнейшим экспериментам с протоколом Modbus, разберёмся с ещё одной темой, относящейся к этому протоколу: с регистрами Modbus.

Read more »

Май 12 2010

Протокол Modbus в устройствах на базе микроконтроллеров. Часть 1.1

Продолжение. Начало здесь: http://32bit.me/?p=355 — введение; http://32bit.me/?p=373 — часть 1.0.

Продолжим эксперименты по исследованию протокола Modbus. Для этого воспользуемся контроллером ICP-DAS i7188EGD:

Он может служить ведомым устройством с поддержкой протокола Modbus RTU.

Read more »

Май 12 2010

Протокол Modbus в устройствах на базе микроконтроллеров. Часть 1.0

Продолжение. Начало здесь: http://32bit.me/?p=355

Оставим пока в стороне скучную теорию и примемся за эксперименты.

Возьмём панель оператора Weintek MT6070TV и зальём в неё проект, состоящий из нескольких числовых полей (Numeric Display) и кнопки, устанавливающей значение переменной (Set Word). Вид экрана изображён на рис 1.

Рис. 1. Вид экрана панели

Read more »

Май 11 2010

Web-сервер

На самом деле это плата Ethernet-контроллера Wiznet W5100 (вверху), соединённая с отладочной платой c микроконтроллером ARM (LPC). Плата между ними служит для соединения. Также на верхней плате есть флеш-память в виде SD-карты.

Под катом ещё фото.

Read more »

Май 11 2010

Книга CodeVision AVR. Пособие для начинающих

Книга Лебедев М. В.  CodeVision AVR. Пособие для начинающих.

Книга просто поражает своей подробностью. Автор пошагово описал процесс установки программы, перевёл все пункты меню и все надписи на кнопочках! Этому посвящены главы 1-3.

В главе 4 даётся описание языка С (краткое). Там же описывается те вещи, которые вы не найдёте в справочниках по языку С, а именно, встроенные макросы и директивы #pragma. Эта информация, безусловно, очень полезна. Остальную часть главы можно смело пролистывать (если вы знаете С, конечно). Приводятся схемы простейших программаторов (на LPT-порт).

Глава 5 посвящена библиотечным функциям. Тоже полезно. В этой же главе рассматривается подключение к AVR различных микросхем: часов реального времени, датчиков температуры, LCD-модуля и т.п. Всё рассмотрено очень подробно, с примерами кода.

Глава 6 посвящена автоматическому генератору программ Code Wizard. 

В главе 7 рассматриваются примеры проектов, также очень подробно, с исходниками.

Книга содержит 592 стр. и оборудована компакт-диском.

Май 11 2010

Протокол Modbus в устройствах на базе микроконтроллеров. Введение.

Протокол Modbus находит широкое применение в устройствах промышленной автоматики, давая возможность организовывать удалённый сбор данных и управление с помощью операторских панелей и SCADA-систем, а также подключать к вашему устройству различные модули расширения. В статье рассматривается применение устройств с протоколом Modbus, а также простейшая реализация протокола в микроконтроллерном устройстве.

Рис. 1. Операторская панель Weintek MT6070TV и промышленный контроллер ICP-DAS i-7188EGD. Передача данных происходит по протоколу Modbus.

Статья не является переводом официального стандарта Modbus, в ней рассматриваются практические вопросы применения протокола.

Read more »

Май 08 2010

IAR и C++

IAR Embedded Workbench является хорошим компилятором с превосходной оптимизацией кода, когда речь идёт о языке C.
Как только к C добавляются два плюса, начинаются полные чудеса. Не работают операторы typeid и dynamic_cast. Это означает, что RTTI попросту не поддерживается. Самое интересное то, что редактор выделяет эти операторы, как нормальные ключевые слова языка!
Отладчик тоже не радует. Очень часто невозможно посмотреть текущие значения переменных-членов в режиме останова программы. Отладчик их просто не показывает.
Да и редактор кода недоделан под С++. Кнопочка внизу экрана, которая выводит список функций в открытом файле, не показывает имена классов. Т.е. если у вас 5 классов имеют функцию Func(), то в списке будет 5 раз повторяться Func() (а не Class1::Func(), Class2::Func() и т.п.). Понять, какая функция к какому классу относится, можно только телепатически.