Управление GSM модулем с AVR (часть 2)

AVR
В предыдущей части мы отправляли команды на модуль.



Теперь о получении команд с модуля.


Читать дальше
  • +2
  • 23 сентября 2013, 17:00
  • ilus
  • 4

Управление GSM модулем с AVR (часть 1)

AVR
Идея проекта: спроектировать устройство на базе микроконтроллера AVR для управления готовым GSM модулем (я выбрал модуль TC35 от SIEMENS, но можно использовать любой другой, если используется связь через последовательный порт RS232). Устройство должно быть компактным, минимально простым и надёжным.

Отправка заранее записанного в память сообщения на указанный номер должна выполняться после нажатия кнопки. Всего нужно было 6 кнопок для отправки на 6 различных номеров. Для индикации процессов были выбраны 3 светодиода (Ready, Send, Error), но в последствии был добавлен алфавитно цифровой LCD 16x2 (скорее, для отладки устройства, чем для обычного использования).

Проектировалось всё дело на плате Pinboard II (Rev 2) со стандартным процессорным модулем на ATmega16. На готовом устройстве схема была немного другой (и микроконтроллер использовался ATmega8). Программа писалась в AVR Studio 4.19. В проекте были использованы различные заголовочные файлы (#include) для переключения между Pinboard и готовым устройством.

Общая схема системы:



Читать дальше
  • +6
  • 23 сентября 2013, 15:10
  • ilus
  • 1

Отладчик-программатор для Pinboard2

AVR
После покупки отладочной платы Pinboard2 мне не понравился модуль для отладки и программирования контроллеров AVR, и я решил сделать свой.
Велосипед я изобретать не стал, использовал готовые решения, так что если кому-то интересно что у меня вышло, добро пожаловать под кат.


Читать дальше
  • +3
  • 19 сентября 2013, 22:45
  • MCDFV
  • 1

одноразовый usb pic программатор из ft232, ft245, ft2232

Пытаясь прокачать свой tl866cs до более дорогого с исп выходом, я залил в него загрузчик, который был выковырен одним участником форума vrtp.ru. А у программатора этого есть серийник и номер устройства, которые наверное теперь отслеживаются китайцами и в новых обновлениях могут быть заблокированы.
Прошить загрузчик я прошил, а второй программатор уже продал, решив оставить себе прокачанный.
Т.к. пиками я не занимаюсь, то отдельного у меня не было, а платить 5 евров было жалко и ехать далеко до магазина.

И тут внезапно оказывается есть программатор под лпт, причем он работает с картами pci, надо тамт олько указать адрес карты.
И там же есть PICPgm USB Programmer, который сделан на ft232.
У меня нет нет 232, зато есть пинборд2 с тф2232. А это по сути 2хфт232.

Подключаем.


В настройках софта выбираем усб программатор, а напротив номеров выводов снимает все галки инвертирования. Потом замыкаем data in с data out. Теперь софт определяет наш программатор.
Более того, софт может автоматом определять контроллер.
У меня он определил все и прошил.

И вот тут кроется его одноразовость. По каким-то причинам фтшка работает очень медленно. Скорей всего потому, что автор использует bit bang вместо настоящего спи, который можно гнать аж до 24мгц вроде бы или выше.
Поэтому такой вариант хватит разве что прошить загрузчик. 128к программатор читает около 3х минут.

Не забудьте, что некоторые пики 18й серии работают только от 3.3в и на пинборде надо переключить джампер питания i\o на 3.3в.

Если вы хотите прокачать свой tl866cs, то вам нужен апдейтер bit.ly/YaJYDq
Вроде бы он не требует стороннего программатора или же генерит прошивку с нужным конфигом и ее надо самому заливать.

Интересный баг с AVRDUDE+FTDI+PB2

Делал недавно одну штуку на ATTiny2313 и нарвался на занятный баг
Вкратце, дело выглядит так:
При прошивке AVR через PINBOARD2+AVRDUDE (программатор 2ftbb) в буфер FT2232 может попасть лишний байт, который вызовет сдвиг всего остального массива и неправильное чтение данных — короче, работать нихера не будет. Такое несчастье случается, если за 7 миллисекунд (плюс-минус километр) до фактического начала прошивки (сброса МК) линия MOSI (которая соединена с пином RX на FT2232) находится в низком уровне. При переключении из BitBang режима в UART FT2232 заглатывает байт 0x00.

По ссылке мой серый уютный бложек с более подробным описанием и фоткой творческого беспорядка на рабочем месте :)

P.S. Да, мне лень перепостить текст сюда
P.P.S. Топик-ссылка — преунылейшая вещь. Как им вообще пользоваться можно? DIHALT включи хоть теги и нормальное форматирование там…
  • -1
  • 09 февраля 2013, 15:18
  • dcoder

Модуль часов реального времени на базе DS1338Z-33 (DS1307) PB2-RTC-xxx

Продолжаю серию заметок «проекты-малыши»

Разглядывал тут схему отладочной платы PinBoard 2. Разглядывал вдумчиво и внимательно. Однако, так и не нашел на данной плате часов реального времени (ЧРВ). Разработчику, конечно, виднее – нужен будильник на плате или нет (может быть, для ЧРВ просто тупо не хватило места). Но с другой стороны – если глянуть в гугл, то можно убедиться, что народом данная тема весьма и весьма востребована. Поэтому было решено исправить такое положение дел и смастерить отдельный модуль с часами реального времени, который можно было бы воткнуть в краевой разъем:





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

MicroVGA conio/text user interface library на Pinboard II (AVR). Демо пример. Часть 1

AVR
MicroVGA на Pinboard II (AVR)

Аннотация


Показан демонстрационный пример работы с библиотекой MicroVGA conio/text user interface library на Pinboard II + AVR в стандартной комплектации (ATmega16 @ 16 МГц). Выполнен небольшой его обзор. Библиотека предназначена для работы в связке с периферийным модулем, с помощью которого можно напрямую выводить информацию на монитор из контроллера (через SVGA). В данном примере библиотека в качестве терминала использует программу на ПК и работа осуществляется по последовательному порту. Т.о. с её помощью, к примеру, можно реализовать удобный (дружелюбный) отладочный пользовательский интерфейс, либо организовать на её основе конфигурирование устройства (по аналогии с BIOS).


Читать дальше
  • +6
  • 14 ноября 2012, 04:07
  • uni

Запуск USB AudioDevice на STM32F103C8

Уважаемое сообщество!
Уже больше недели бьюсь над запуском USB на STM32 в составе PinBoard2 — безрезультатно. В связи с чем и обращаюсь к вам за помощью.
Использую CooCox, а также в процессе неудачных попыток поставил TrueStudio, но как-то оно совсем не тру…
В CooCox создал новый проект, и подбросил туда файлы исходников, затем, путем правки многочисленных дефайнов, поскольку у меня не оригинальная отладочная плата, постепенно все это стало собираться и линковаться и даже отлаживаться, но устройство не определяется.
Последней правкой, на которую я расчитывал, было
#define HSE_VALUE 12000000

но это тоже не помогло.
В архиве кладу проект для CooCox.
Что я делаю не так? :-)
UPD:USB заработало, подробности в комментариях. Буду наращивать функционал.

Хинт: регулировка громкости пищалки на PINBOARD 2

Маленький хинт для тех, кто решит поиграться с пищалкой поздно ночью — когда все спят :) Орет она дико, особенно на фоне тишины.
Регулировку громкости можно замутить в полевых условиях без лишних деталей — на переменном резисторе, который установлен на борде.
Для этого один из крайних выводов резистора соединяем с землей (лучше нижний — там для этого предусмотрен джампер).
Противоположный вывод подключаем к пину МК, с которого идет сигнал на пищалку.
А средний — к штырьку (на процессорном модуле), который идет на саму виновницу торжества.

Более-менее тихий звук получается, когда вал резистора смотрит своей плоской стороной «вверх» (в сторону индикатора).