Форум ForNext.ru
23 Октября 2018, 17:54:01 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Войти
Новости: Авторегистрация выключена. Automatic Registration is disabled. Используйте форму обратной связи http://forum.fornext.ru/index.php?topic=35.0
 
   Начало   Помощь Поиск Войти Регистрация  
Страниц: [1]
  Печать  
Автор Тема: Ардуино-совместимое устройство X-duino  (Прочитано 5908 раз)
0 Пользователей и 1 Гость смотрят эту тему.
mentat-vvo
Администратор
Пользователь
*****

Карма: +32/-0
Офлайн Офлайн

Сообщений: 886


the grid


WWW
« : 17 Декабря 2010, 09:37:34 »

Для совместимости со средой программирования устройств на микроконтроллерах Arduino требуется только совместимый загрузчик и совпадение разъемов для плат расширения, shield'ов. В моем устройстве расположение контактов несовместимо с Arduino, т.к. поддержку родных плат расширений не планирую (сделаю свои).

Про загрузчик: занимает около килобайта верхних адресов микроконтроллера для 8кб-версий и около 1700к для Мега168 (16кб флэш).
Прошивку заливает программа avrdude, который вызывается Arduino. Можно записывать свои проекты и без Arduino, напрямую через avrdude.

Тестовый проект, называемый скетчем, который моргает светодиодом, занимает около 700 байт памяти программ.
« Последнее редактирование: 05 Января 2011, 05:42:07 от mentat-vvo » Записан
mentat-vvo
Администратор
Пользователь
*****

Карма: +32/-0
Офлайн Офлайн

Сообщений: 886


the grid


WWW
« Ответ #1 : 23 Декабря 2010, 14:31:02 »

Протестировал работу проекта с ATMega88@12 МГц (3.3В).
Эта микросхема более новая, чем ATMega8L, и разгон составляет 2 МГц против 4 для Mega8L.

Выкладываю makefile, исходник и код бутлодыря.
Напоминаю, что прошивка заточена под скорость загрузки скетчей 38400 бод на 12 МГц.

Для того, чтобы в среде Arduino появилась возможность создавать проекты под Mega88, нужно добавить следующие строчки в файл boards.txt:

atmega88.name=Arduino NG or older w/ ATmega88

atmega88.upload.protocol=stk500
atmega88.upload.maximum_size=7168
atmega88.upload.speed=38400

atmega88.bootloader.low_fuses=0xdf
atmega88.bootloader.high_fuses=0xca
atmega88.bootloader.extended_fuses=0x00
atmega88.bootloader.path=atmega88
atmega88.bootloader.file=ATmegaBOOT.hex
atmega88.bootloader.unlock_bits=0x3F
atmega88.bootloader.lock_bits=0x0F

atmega88.build.mcu=atmega88
atmega88.build.f_cpu=12000000L
atmega88.build.core=arduino

##############################################################


файлики с прошивкой, исходником и мэйкфайлом должны лежать в папке hardware\bootloaders\atmega88
для того, чтобы скачать файлы, необходимо зарегистрироваться

* ATmegaBOOT.c (15.86 Кб - загружено 405 раз.)
* Makefile (2.19 Кб - загружено 322 раз.)
* ATmegaBOOT.hex (2.85 Кб - загружено 327 раз.)
« Последнее редактирование: 30 Декабря 2010, 15:31:21 от mentat-vvo » Записан
mentat-vvo
Администратор
Пользователь
*****

Карма: +32/-0
Офлайн Офлайн

Сообщений: 886


the grid


WWW
« Ответ #2 : 30 Декабря 2010, 14:58:16 »

В файле atmegaboot.c обнаружил ошибку (EEWE вместо EEPE). Пофиксил запись EEPROM. Чтение не влезло...
Прошивка протестирована на AtMega88@12Mhz@3.3v, 38400 kbps - полет нормальный!

Строка для записи своего .hex файла без использования среды Arduino (через avr-dude из пакета WINAVR):
C:\WinAVR-20100110\bin\avrdude -c arduino -p m88 -P com11 -b 38400 -D -U flash:w:!\!.!:i -u -q
(использую в Far, при нажатии на клавишу ENTER в МК заливается прошивка)

Выкладываю схемку последней версии платы (с Ares'а). Добавил пьезо-пищалку на один из каналов PWM (только для мега 88/168), хотя Ардуино ей пищит и на Mega8/L (нога 3 по номенклатуре Arduino).

* ATmegaBOOT.c (16.06 Кб - загружено 474 раз.)

* x-duino-0.3.gif (51.59 Кб, 943x633 - просмотрено 1062 раз.)
« Последнее редактирование: 25 Февраля 2011, 08:00:59 от mentat-vvo » Записан
mentat-vvo
Администратор
Пользователь
*****

Карма: +32/-0
Офлайн Офлайн

Сообщений: 886


the grid


WWW
« Ответ #3 : 04 Января 2011, 11:34:45 »

Добавляю 5-вольтовую версию платы и прошивку под ATmega88@5В@16МГц@38400 bps


* x_duino_5v.gif (46.23 Кб, 907x618 - просмотрено 1334 раз.)
* x-duino-5v.ps (87.41 Кб - загружено 507 раз.)
* ATmegaBOOT.c (16.06 Кб - загружено 658 раз.)
* Makefile (2.16 Кб - загружено 319 раз.)
« Последнее редактирование: 08 Января 2011, 16:41:21 от mentat-vvo » Записан
Страниц: [1]
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.15 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!