Turbo Arduino на 32 МГц
- Войдите на сайт для отправки комментариев
Ср, 24/02/2016 - 23:01
Попробовал разогнать ардуину на 32 Мгц, вроде всё работает. Новый бут скомпилил -тоже работает без проблем. Правда предупреждаю -сильно не гонял, так что если что просьба не винить :) Использовал не кварц, а кварцевый генератор на 32Мгц. Но сути не меняет, работало устойчиво даже с фузами для кварца. Бутлоадер на новую частоту компилится простейшей строчкой: omake.bat AVR_FREQ=32000000L atmega328 думаю каждый сможет под свой кварц скомпилить. Но в последних версиях ARDUINO IDE нет полного комплекта нужных файлов, нужно взять старую, я компилил в 1.05
Блок для boards.txt
my.name=Arduino 32MHz my.upload.tool=avrdude my.upload.protocol=arduino my.upload.maximum_size=32256 my.upload.maximum_data_size=2048 my.upload.speed=115200 my.bootloader.tool=avrdude my.bootloader.low_fuses=0xFF my.bootloader.high_fuses=0xDE my.bootloader.extended_fuses=0x05 my.bootloader.unlock_bits=0x3F my.bootloader.lock_bits=0x0F my.bootloader.file=optiboot/arduino_32MHz.hex my.build.mcu=atmega328p my.build.f_cpu=32000000L my.build.board=AVR_UNO my.build.core=arduino my.build.variant=standard
Я думаю любителям собирать показометры должно быть интересно :)
не греется?
Возможно delayMicroseconds нужно проверить и при необходимости поправить. Плюс если это какая нибудь Леонардо (с USB), могут быть глюки, а так вроде бы должно пахать без проблем (с т.з. софта). Короче, легче пробежаться по исходникам и поискать F_CPU, там всё сразу видно. Разумеется я про то, что если использовать стандартную Arduino IDE с её wiring.
Не греется, но... Поспешил я обрадоваться. Глючит на 32МГц, просто на всякой ерунде не проявляется. Достаточно загрузить серьёзным вычислением -и вуаля -висит или всякий бред выдаёт. Конкретно подвисает на таком тесте через несколько секунд после старта:
Вобщем ну его, эти разгоны, и так скорости хватает.. :-)
раз кочегарили, можно было элементом пельтье попробовать охлаждать :), 2мя друг над дружкой для большего мороза . и питание поднять. Кто разгонял до 65Мгц , пишет "Для сравнения, 5В стабильная максимальная частота 32.5Mhz в 8V только 37Mhz."
Вот такая arduino изначально на 32MHZ идёт, вот бы попробовать в варианте мини(пинов больше) а не уно
http://www.aliexpress.com/item/Iteaduino-Lite-LGT8F88A-Development-Board-Compatible-Arduino-Free-shipping/32418220543.html
LGT8F88A
Overview:
Iteaduino Lite is a new mainboard based on LGT8F88A compatible with interfaces. With 14 digital input and output pins (of which 6 pins can be used for PWM output), 6 analog inputs and SWD debug interface, the operating frequency can reach up to 32MHz. Compared to other mainboards, it runs faster with more powerful functions. It is compatible with most of Arduino libraries
Features:
1. Adopting LGT8F88A chip
2. GPIO interface breaks out electronic brick interface
3. Adopting high-efficiency DCDC supply with wider input range
4. Selectable operating level: 3.3V/5V
Specification:
Microcontroller:LGT8F88A
Max Frequency:32MHz
RAM Capacity:1K
FLASH Capacity:8K
Power Supply:7~24V DC
I/O Operation Level:3.3V/5V
Нашёл кварц на 25Мгц, скомпилил под него булоадер, залил. Работает. Загрузил тот-же тест, на котором ардуина на 32МГц висла -полчаса полёт нормальный :)
Можете подробнее пояснить? какие действия надо произвести и в каких файлах чтоб зашить бутлоадер скажем под 30 мгц. Спасибо
Dimax, как понимаю Вы экспериментировали с 328 камнем, так? Интересно, способна ли ATmega128A и Atmega2560 на разгон частоты? Удобства для интересен разгон до 20Мгц .. потянут? Кто-то пробовал? На этой частоте длительность такта 50нс, что позволяет реализовать millis() без "проскоков" и вычислений fract частей в обработчике прерывания.
Arhat109-2, думаю 4МГц не тот разгон, что б переживать. Так что смело ставьте кварц на 20 :)
До сих пор не сталкивался с ситуациями где-бы не хватило тактовой частоты в 16Мгц, так что в целом, я не вижу необходимости в разгоне, кроме как в упрощении перехода от тактовой частоты к системе учета времени - так любимый всеми кривой и косячный millis(). 20Мгц позволяет устранить эту "идиосинкразию", только и всего. :)
Шукал по сетям, и как понял, что атмелы гонятся тем хуже, чем больше у них флеша. Видимо на дешифрацию адреса требуется время... так что вопрос про 20Мгц для ATmega2560 - отнюдь не праздный: можно или нет? У кого-то - получилось поднять частоту 2560?
Многие новые уже работают на 20MHz без всякого разгона http://www.atmel.com/ru/ru/devices/ATMEGA328P.aspx
Гугл расскажет :) "overclock atmega2560"
Х-мм. Искал-с. Проверил ишо раз .. ничего акромя переходов на 328 камень да таких же вопрошаек типа меня - не обнаружено. Может ваш "персонифицированный" поиск гугля выдает что-то вразумительное? Бросьте в меня ссылкой. :)
https://www.youtube.com/watch?v=1_uQRA17JxI
https://www.youtube.com/watch?v=KVRvWmcxnA0 :)))
Вторая ссыль - ниачем. Разгон в жидком азоте - интересен только для продвижения рекламы на ютубах: посмотреть занятно но и только. Заодно можно рекламу впендюрить. Кстати он тоже про 328 камень..
Первый ролик практически тоже ни очем, но в нем есть ссыль на текстовую часть. Интересный подход по колодке для кварца .. но это всё что смог автор продемонстрировать. Сам же пишет "возможны глюки" и "надежность работы 90-95%" .. где тесты, проверки - глючит конкретно его экземпляр на конкретно этой частоте или таки нет? Нипанятна: "что было то вставил" .. так глючит или нет? :)
подскажите наконец как бутлоадер то скомпилить?))
AleksLux, в топике читать со слов "Бутлоадер на новую частоту компилится..."
AleksLux, в топике читать со слов "Бутлоадер на новую частоту компилится..."
просил подробнее если можно. для меня это темный лес, что где брать и куда вставлять. я только начал вникать во все процессы и пока тяжело. Да и в данном аспекте похоже не только мне, раз конструкторы мастерят, но там нет поддержки нестандартных частот кварца. и не нагулил ни одной вменяемой инструкции по этому поводу. так что есть шанс написать хорошую инструкцию
В общем, из того что мне удалось нагуглить по этому вопросу: чем больше у камня флеш - тем хуже он гонится. 128-ю мегу, вроде как удается разогнать до 24Мгц тем более что оказывается в старой версии они и так выпускалась до 20Мгц, 2560 - похоже что "фигвам", возможно только 20мгц и то примеров где полноценно тестирован разгон - так и не нашел ... 1280, 1284 вроде как тоже ещё можно. 328-ю народ устойчиво гонит до 32Мгц.
Для пользования в ИДЕ надо делать свое описание в boards.txt и скомпилять свой загрузчик под частоту разгона. Компилять: вроде как надо указать стандартному make новую частоту проца и только, но не уверен... можно посмотреть на гитхабе у MegaCore как они делают..
AleksLux, потому что никто не пишет инструкции на очевидные вещи. Изучите winavr, что это , с чем едят, как устанавливают, что такое makefile, как компилируют программы. Скомпилируйте какие-нибудь примеры. Потом найдёте исходник оптибута в пакете Arduino IDE, или лучше скачаете полный пакет, в нём есть своя докуемнтация, по ней скомпилируете то что нужно.
AleksLux, потому что никто не пишет инструкции на очевидные вещи. Изучите winavr, что это , с чем едят, как устанавливают, что такое makefile, как компилируют программы. Скомпилируйте какие-нибудь примеры. Потом найдёте исходник оптибута в пакете Arduino IDE, или лучше скачаете полный пакет, в нём есть своя докуемнтация, по ней скомпилируете то что нужно.
не хотите помочь, лучше промолчите и не раздражайте. вопрос был про конкретную вещь, а не не в общем как жить и закончить школу, институт и сдать на права, чтоб потом наконец в машине повернуть руль. Хотя руль это тоже вещь очевидная. А жизни учить меня не нужно. Вроде нормально спросил, если проблема, не надо без вас разберусь. спасибо еще раз. тогда вопрос именно к вам снят с повестки
AleksLux, потому что никто не пишет инструкции на очевидные вещи.
да они настолько очевидные , что все бьются и мастырят инструкции в том числе и в роликах с помощью костылей) например без переделки лоадера, и перед каждой прошивкой перепаивая кварц)) сказал же, люди не волокут в этом, даже в этой теме выше уже возникают вопросы, если вам лень надуться показать. то не надо надуваться учить жизни. обойдемся)
AleksLux, вы напрасно обижаетесь. Я не советовал вам ничего такого, чего бы не делал сам в своё время, когда начинал изучать МК. Всё нужно пройти от самого начала, иначе любая трудность вас будет ставить в тупик. А трудности обязательно будут.
Трудности будут всегда и во всем, но это не значит что надо кидаться учить все подряд и решать самому, вас попросту не хватит на все. Попросил знающего человека как конкретно сделать конкретную вещь, мне может это вообще надо первый и последний раз сейчас и сегодня, а вы меня заканчивать институт отправляете. Человек не может знать и уметь все сам, а вот решать конкретные задачи спросив чьей то помощи, очень даже может. ну раз трудно пояснить в двух словах где берем куда вставляем, что нажимаем. Лучше повторю жизни учить не нужно. сам знаю, да и позновато уже)) Вы тоже уверен не можете знать и уметь все, и многие очевидиные вещи для вас тоже темный лес, так что всем отправлять вас учить каждодневные задачи от и до? да у вас просто жизни на это не хватит, и тем более для решения конкретных задач, в реальном, текущем времяни..
в общем все проехали
AleksLux, в топике читать со слов "Бутлоадер на новую частоту компилится..."
Потратил немного времяни и раскрыл тайну за 7ю печатями))
на сегодня это самый вменяемый мануал, который удалось найти)) хоть и не на Русском. https://www.youtube.com/watch?v=93dSfEczqgk&t
Кому интересно, и все же не доходит, могу написать инструкцию.)) Всем добра
AleksLux, в топике читать со слов "Бутлоадер на новую частоту компилится..."
Потратил немного времяни и раскрыл тайну за 7ю печатями))
на сегодня это самый вменяемый мануал, который удалось найти)) хоть и не на Русском. https://www.youtube.com/watch?v=93dSfEczqgk&t
Кому интересно, и все же не доходит, могу написать инструкцию.)) Всем добра
два года прошло, инструкции так и нет...