Назад Вперед

Программатор AVR910: перезагрузка! Ускорение работы + «превращение» в STK500

Разместил Datagor 22 ноября 2011. Просмотров: 69270

27
Программатор AVR910: перезагрузка! Ускорение работы + «превращение» в STK500

Сегодня я не лег спать. Включил фоном какую-то киношку с Джеки Чаном и быстренько спаял второй USB-программатор AVR-ок из датагорского кита Project-5 D-AVR910.

Теперь у меня на столе лежит два одинаковых программатора. А всё для того, чтобы попробовать новую прошивку. Эти близняшки буду шить друг друга. Все опыты проводятся под MS Windows XP SP3.
Цель - увеличение скорости работы и расширение совместимости программатора.
  • Лайков:
    43
 

Обновление прошивки датагорского кита Project 004 «Gatekeeper» v.11.0

Разместил jgl 15 января 2017. Просмотров: 570

Привет, друзья!
Подоспела обнова к Новому году: очередное обновление прошивки для нашего сервисного блока УМЗЧ, который обеспечивает защиту АС, включение одной кнопкой, управление вентиляторами и пр.
Обновление прошивки датагорского кита Project 004 «Gatekeeper» v.11.0
  • Лайков:
    21
 

Фото-реле на микроконтроллере ATTiny13

Разместил maddiego 5 декабря 2016. Просмотров: 1652

7 Привет датагорцам!
Я затеял ремонтные работы дома, и мне понадобилась система автоматического управления освещением, которое должно выключаться днём и, соответственно, включаться ночью. Я фанат AVR-контроллеров и решил я поискать на просторах Интернета готовые наработки, но, к сожалению, не нашёл ничего подходящего.

Мне нужна была простая система, которая замеряла бы уровень освещённости, переключала освещение в режиме «день/ночь» и имела бы таймер задержки переключения реле.
Фото-реле на микроконтроллере ATTiny13


Так родился этот проект — фото-реле на мелком восьминогом 8-битном МК ATTiny13. Зачем «городить огород» на МК, когда всё можно собрать на транзисторах и куче рассыпухи? Давайте считать мой проект учебным, направленным на освноение контроллерного сегмента электроники.
  • Лайков:
    57
 

Визуализация для микроконтроллера. Часть 3. TFT дисплей 2.8" (240х320) на ILI9341

Разместил erbol 15 ноября 2016. Просмотров: 2811

8 Битва за урожай закончена, можно продолжить повествование.
Визуализация для микроконтроллера. Часть 3.  TFT дисплей 2.8" (240х320) на ILI9341



Модуль, который мы рассмотрим сегодня, сочетает в себе свойства двух линеек подобных устройств. С одной стороны, размеры его дисплея всё ещё позволяют использовать протокол SPI без существенного ущерба для картинки на экране. В этом он похож на модули с небольшим дисплеем (к примеру, на базе контроллера ILI9163 или рассмотренного в предыдущей части статьи ST7735). Кстати, из предлагаемых на AliExpress и eBay модулей на базе ILI9341 с протоколом SPI – значительное большинство.

С другой стороны, не редки реализации этого модуля на протоколе 8080, как 8-ми так и 16-битном, что роднит его со второй группой, в которую входит и модуль на базе контроллера ILI9481, о котором мы поговорим в следующей части статьи.
Помимо этого, принцип работы и система команд ILI9341 и контроллеров из вышеуказанных групп настолько схожи (иногда – вплоть до совпадения кодов команд), что, разобравшись, как работает этот модуль, вы без особых усилий сможете запустить и многие другие.
  • Лайков:
    36
 

Программная реализация протокола SPI на AVR в CodeVisionAVR

Разместил Electronik83 15 сентября 2016. Просмотров: 2031

3 Всем коллегам и согражданам привет!
Увлёкся я изучением протоколов. Про реализацию протокола I2C у меня уже была статья на Датагоре. Сегодня поговорим о протоколе SPI. Сразу к делу. Заглянем в Wiki за ёмким определением.
SPI (англ. Serial Peripheral Interface, SPI bus — последовательный периферийный интерфейс, шина SPI) — последовательный синхронный стандарт передачи данных в режиме полного дуплекса, предназначенный для обеспечения простого и недорогого высокоскоростного сопряжения микроконтроллеров и периферии. SPI также иногда называют четырёхпроводным (англ. four-wire) интерфейсом.

В отличие от стандартного последовательного порта (англ. standard serial port), SPI является синхронным интерфейсом, в котором любая передача синхронизирована с общим тактовым сигналом, генерируемым ведущим устройством (процессором). Принимающая (ведомая) периферия синхронизирует получение битовой последовательности с тактовым сигналом. К одному последовательному периферийному интерфейсу ведущего устройства-микросхемы может присоединяться несколько микросхем. Ведущее устройство выбирает ведомое для передачи, активируя сигнал «выбор кристалла» (англ. chip select) на ведомой микросхеме. Периферия, не выбранная процессором, не принимает участия в передаче по SPI.
В реализации протокола SPI используют четыре цифровых линии для передачи сигналов (в скобках даны вариации обозначений):
Программная реализация протокола SPI на AVR в CodeVisionAVR

CLK (CLOCK, SCLK) — по этой линии передаются тактовые импульсы для ведомых устройств.
DO (MISO, SDO, DO, DOUT, SO) — вход данных МК, эта линия нужна для приема данных от периферии.
DI (MOSI, SDI, DI, DIN, SI) — выход данных МК, передаём данные к ведомому устройству.
CS (SS, nCS, CS, CSB, CSN) — выбор микросхемы, выбор ведомого, в народе «чипселект».
  • Лайков:
    24
 

Визуализация для микроконтроллера. Часть 2. TFT дисплей 1.8" (128х160) на ST7735

Разместил erbol 14 сентября 2016. Просмотров: 3259

6 Следующий из рассматриваемых нами модулей обладает полноцветным дисплеем под управлением контроллера ST7735.

• Размеры модуля: 35 мм х 57 мм х 7 мм.
• Разрешение: 128×160 пикселей.
• Цветность: 65 тысяч цветов в формате RGB 5-6-5.
• Напряжение питания: 3.3В – 5В.
• Протокол обмена данными: SPI.
• Встроенный разъём для SD-карты.

Рассмотрим модуль на ST7735 поближе и разберемся с программированием под него.
  • Лайков:
    39
 

Контроллер управления кухонной электроплитой. Регулятор мощности и таймер отключения

Разместил if33 9 сентября 2016. Просмотров: 3506

Благодаря идее и участию Юрия Зинченко (ZenitSoft) было разработано и построено устройство, регулирующее мощность кухонной электроплиты методом пропуска периодов. За основу была взята статья «Регулятор мощности для паяльника на PIC16F628A» (см. также блок ссылок в подвале). Разработанный вариант и в настоящее время работает у него, и он вполне доволен его работой.
Контроллер управления кухонной электроплитой. Регулятор мощности и таймер отключения

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

В новом варианте схема и программа были переделаны так, чтобы было можно получить точное детектирования нуля с наивысшим приоритетом по прерыванию. Также был добавлен режим фазового управления мощностью.
  • Лайков:
    69
 

«Red Dragon» - часы на газоразрядных индикаторах ИН-14 + PIC16F628A

Разместил Wishmaster 7 сентября 2016. Просмотров: 3674

12 Здравствуйте, уважаемые читатели журнала Datagor.ru! Предлагаю вам историю создания часов на газоразрядных индикаторах ИН-14. Простой по началу проект превратился в итоге в целую художественную композицию, заставившую меня изрядно попотеть.
«Red Dragon» - часы на газоразрядных индикаторах ИН-14 + PIC16F628A

Часы имеют коррекцию точности хода и бэкап при пропадании питания.
  • Лайков:
    89
 

Программная реализация протокола I2C на AVR в CodeVisionAVR

Разместил Electronik83 27 августа 2016. Просмотров: 2220

9 Программная реализация протокола I2C на AVR в CodeVisionAVR Пару лет назад, изучая Atmega8, я захотел программно реализовать работу с устройствами на шине i2c, но как-то не задалось. С аппаратным i2c, напротив, не было никаких проблем и затея как-то забылась.

Но недавно я прочитал статью на Датагоре «Несколько функций для програмной реализации протокола I2C на AVR», в которой автор выложил свой пример программной реализации протокола под IAR. Я в тот же миг переписал всё в CodeVision, но, к сожалению, у меня опять не заработало как надо.
Решил набраться терпения и разобраться сам.
  • Лайков:
    32
 

Визуализация для микроконтроллера. Часть 1. OLED дисплей 0.96" (128х64) на SSD1306

Разместил erbol 24 августа 2016. Просмотров: 5984

14 Добрый день, друзья!
Эта статья открывает цикл, посвящённый средствам визуального отображения информации.
Нами будут рассмотрены модули, в состав которых входят следующие дисплеи и управляющие контроллеры:
1. OLED дисплей на 0.96 дюйма (128×64 пикселей), контроллер SSD1306.
2. TFT дисплей на 1.8 дюйма (128×160 пикселей), контроллер ST7735.
3. TFT дисплей на 2.8 дюйма (240×320 пикселей), контроллер ILI9341.
4. TFT дисплей на 3.5 дюйма (320×480 пикселей), контроллер ILI9481.

Весь материал разбит на пять частей, в четырёх из которых изложена информация по модулям (технические параметры, подключение и инициализация, вывод на дисплей базового графического элемента — точки), а пятая содержит единую графическую библиотеку для описанных дисплеев.

Сама идея единой библиотеки и большинство приёмов её реализации позаимствованы из библиотеки Adafruit_GFX, а также отдельных работ её авторов — Лимор Фрид (Limor Fried) и Кевина Таунсенда (Kevin Townsend).
Моя скромная заслуга заключается в переносе кода с С++ на С, написании отдельных функций и выборочном переводе даташитов с целью более детального освещения особенностей работы модулей.

OLED дисплей на 0.96 дюйма (128×64 пикселей), контроллер SSD1306

Тема сегодняшней нашей беседы – вот такой модуль:
  • Лайков:
    51

14 сентября 2016 изменил Datagor. Добавлен архив с переводом таблиц команд.

 
Назад Вперед