Увеличение RAM memory Ардуины
- Войдите на сайт для отправки комментариев
Втр, 23/12/2014 - 01:52
Легкое гугление показало, что и такое возможно. Для тех кто не очень разбирается в Ардуинках, речь только про RAM. В Ардуине память может быть следующих видов
Flash - память, куда записывается сам скетч, часть этой памяти занята бутлоадером. Память энергонезависимая
EEPROM - память, куда можно записать немного переменных, энергонезависимая.
RAM - память, где хранятся и обрабатываются переменные во время работы скетча, энергозависимая
SD - внешнее хранение памяти на флешке sd или microsd, энергонезависимая.
так вооот...
http://forum.arduino.cc/index.php?topic=231883.0
RAM - память, где хранятся и обрабатываются переменные во время работы скетча, энергозависимая
Ну и как вы объявите переменную в этой расширенной RAM?
SD - внешнее хранение памяти на флешке sd или microsd, энергонезависимая.
Вот это ближе - "внешнее хранение памяти на" микросхеме памяти с произвольным очень быстрым доступом, т.е. "SD-память, энерогозависимая"
так и думал что начнет новую тему
а толку от ардуины с доп. памятью если все пины заняты
это как мотор с большим баком бензина, но крутит только себя и ничего к нему не подцепишь. хорошо но толку от него
А DUE - не решение вопроса, если нужно много памяти?
так ему и меги2560 хватило бы. и размер можно уменьшить. 86 байт всего не влезает. тут видно дело принципа
отсюда все пошло
http://arduino.ru/forum/proekty/mini-ostsillograf-arduino-na-lcd-5110?pa...
почему вы так однобоко рассуждаете ))
там скетч осциллографа, где реализован только самый базовый функционал. ну, поубивал я все обращения к уарту, ну почти влезло. но один хрен потом хотелось бы сделать вместо уарта задание параметров кнопками прибора и многие из этих переменных вернутся назад. никакое не дело принципа а обычная математика. портов и флеш-памяти для большинства задач мне хватает на мини про, особенно удобно что она есть в 3.3 вольтовом исполнении, что есть зело пользительно для многой перефирии (датчики, дисплеи та же доп.память SRAM и та хочет 3 вольта). считаем тупо затраты
мега + левел шифтер 4050 или что-то аналогичное = 15 + 0.5 = 15.5 долларов на ебее
мини_про + 23К256 = 3+ 0.5 = 3.5 долларов.
Разница более чем в 4 раза.
мини_про + 23К256 = 3+ 0.5 = 3.5 долларов.
Разница более чем в 4 раза.
Разница в 12 долларов звучит не так глобально...
но опять возвращаемся к первому вопросу: ты уверен в своих силах что сможешь создавать, хранить, изменять и считывать переменные во внешней памяти?
дело ведь не только в деньгах
eeprom память еще дешевле, почему тогда не использовать ее?
но опять возвращаемся к первому вопросу: ты уверен в своих силах что сможешь создавать, хранить, изменять и считывать переменные во внешней памяти?
зачем вы ментроским тоном спрашиваете, если не разбираетесь ? я вроде уже на него отвечал, там ничего сложного нет, есть даже готовые библиотеки, которые на себя берут работу с памятью, всё доступно в тырнете, я ссылки уже давал.
да нет. все проще. здесь столько людей брались делать свою задумку, предполагая что это просто, но когда у них не получалось они бросали. не хотелось бы чтобы их количество увеличилось
да нет. все проще. здесь столько людей брались делать свою задумку, предполагая что это просто, но когда у них не получалось они бросали. не хотелось бы чтобы их количество увеличилось
так тут не нужно изобретать лисопет, ежики уже полазили, покололись где можно, нашли тропу и сделали библиотеку с учетом своих ошибок и мануал вполне понятный накатали хоть и на английском.
а кто на этом форуме обсуждал проблему подключения внешней ОЗУ ? покажите пальцем.
так вроде никто не заморачивался. делали проще. меняли камень
было обсуждение, но толку особо и экспериментов не было вроде
http://arduino.ru/forum/proekty/rasshirenie-operativnoi-pamyati-arduino
если ты купишь и сделаешь, да еще поделишься как это все далается будет прекрасно
часто памяти у людей не хватает, в основном изза буферов, а процессора достаточно
бред какой. по ссылке задача обсчитывать карту GPS-навигации. на это нужно хотябы 0.5 мегабайта и гораздо более мощный процессор. и обсуждение больше чем 3х годовой давности.
я вам третий раз объясняю, вопрос по подключению доп. ОЗУ с тех времен уже давно решен. http://ucexperiment.wordpress.com/2013/02/23/interfacing-microchip-23k256-32kb-sram-spi-memory-to-the-arduino/ 34 kb для ардуины просто за глаза хватит.
а если нужны мегабайты памяти, значит неправильно выбрана платформа, нужен какой нибудь rusberry pi.
хорошо. жду результатов
у меня лежит около двух десятков ардуинок мини, уже зарезервированные под всякие интересные приблуды. и уже получается, если всё это делать на мегах, разница в 13 тыс.рублей по нынешнему курсу. и уже вроде как чуть по другому звучит, правда ?
Ладно, не злитесь. Делайте, как знаете. Только для меня вся прелесть использования Ардуино втом, что это готовое решение. Самодостаточное. А если так извращаться - то може всю концепуию поменять нужно?
да мне то пофиг, интересно просто другие мнения послушать. так то на любой вкус у каждого свои фломастеры.
решений самодостаточных в природе не существует, всегда нужно что-то допиливать. в адруине в том числе. каждый шилд для ардуины так и появился - что-то допилили. если микросхему 23k256 поставить через переходник на dip-ножки, а в ардуину залить скетч с нужной библиотекой- получится точно такой же шилд как и любой другой. так что это вопрос больше религиозный.
так что это вопрос больше религиозный.
не утрируйте.
тогда другой вопрос: что будет хранится во внешней памяти? если буфер дисплея это одно. байты и все относительно просто
а если float? уже сложнее. но решаемо
http://arduino.ru/forum/programmirovanie/kak-zapisat-peremennuyu-tipa-float-v-eeprom#comment-29582
также int придется разбивать. желательно все это оформить для удобной работы
библиотека о которой ты говорил может только писать байты по адресу. ну или мне такая попалась
jeka_tm, если можно, не комментируйте мои сообщения, это какой-то странный троллинг.
я вам уже четвертый раз говорю, что нормально всё работает, а вы мне опять тулите какую-то х.ню про работу с EEPROM.
это совершенно ДРУГОЙ вид памяти. учите матчасть.
и с EEPROM никаких проблем не было и нет, для самых ленивых давно написаны библиотеки типа EEPROM2, EEPROMex где размер переменных тоже автоматически определеяется.
да почитай хоть. я не еепром тебе предлагаю, а как хранить флоат в памяти
и насчет работает как заработает тогда и будешь утверждать. пока у кого то работает просто запись байтов по адресу
да делай что хочешь. писать не буду
да почитай хоть. я не еепром тебе предлагаю, а как хранить флоат в памяти
так же как и любые другие 4 байта данных.
это значит, что в любом случае значение переменной можно хранить в виде указателя - записать переменную в адрес и сделать ссылку на этот адрес.
да делай что хочешь. писать не буду
спасибо тебе, добрый человек.
На всякий случай оставлю это здесь, про SPI RAM и Ардуину (вдруг кто еще не видел):
https://learn.adafruit.com/adafruit-spi-fram-breakout
https://ucexperiment.wordpress.com/2013/02/23/interfacing-microchip-23k256-32kb-sram-spi-memory-to-the-arduino/
https://ucexperiment.wordpress.com/2013/02/26/more-memory-arduino-and-23lc1024/
Строго говоря оперативной памятью можно назвать только память к которой МК имеет доступ напрямую на уровне своих машинных инструкций, а не через вызов подпрограмм. То что по ссылке автора не оперативная память, а внешнее запоминающее устройство
настоящийи RAM можно подключить только к некоторым МК атмел. Например мега2560 которая стоит в ардуина мега или атмега128
там чип статической памяти цепляется к специальным пинам и работа с этой памятью дольше чем со встроенной всего на один машинный такт, а работа с ней ничем не отличается от встроенной
другое дело, если нужно много памяти иногда проше и дешевле взять МК с большей памятью
Местный энтузиаст по фамилии Arhat109-2, еще с пол-года назад грозился сконструировать мегу с невообразимым объемом ОЗУ. Только дело, как-то потихоньку заглохло и никакой супер-меги так и не появилось.
Очередное изобретение велосипеда... У нас в углах столько компов древних валяется... Дербаним помаленьку и выбрасываем... А ведь там такие возможности...
Очередное изобретение велосипеда... У нас в углах столько компов древних валяется... Дербаним помаленьку и выбрасываем... А ведь там такие возможности...
гринпис вас не одобрит) старые компы жрут много. Да и динамическая память для МК не самый хороший выбор, лучше статика
Ну почему "не получилось"? Тут где-то есть "проект" в котором выложены фотки макетки на 64кб, макетка запаяна и ждет своего часа для проверки. Просто сейчас - задачи несколько иные, только и всего.
Ну и, чтобы развивать тему, хочу таки найти 74HC740 или похожие регистры для хранения расширенной части адреса и уже погоняв макетку делать нормальный узел для своей "Ардуины как Лего" .. там у меня есть один "затык", а именно: практически все 70 ног Меги уже расписаны под прием/управление периферией блока .. похоже чтобы вернуться к памяти надо таки допаивать недостающие 16 ног, а это пока ишо "стра-ашно". Пока морально готовлюсь. :)
Просто сейчас - задачи несколько иные, только и всего.
да ладно - просто оказалось, что тебе самому нахнен не нужно.
ради любопытсива конечно можно прикрутить внешнюю RAM к тем чипам которые имеют интерфейс к внешней памяти (atmega328 не имеет)
но с практической точки зрения это конечно лишено какого либо смысла
если не хватает RAM в UNO, надо брать MEGA. Если не хватает MEGA надо брать STM32
Пока - да, невостребовано. То что делается - вполне укладывается в то что есть "с запасом". Но это "пока". Ибо ещё нет толком работы с дисплеем, гироскопами, газоанализаторами .. есть мысля собрать "ретрокомп" а-ля спектрум с интерпретатором, есть мысля сделать "граф программирование" с дисплея .. да многое пока ещё лежит и ждет сволего часу. Хотелки возникают куда быстрей реализаций. Как обычно, впрочем. :)
зачем этот ретрокомп? чисто из любви к искусству?
В общем то микроконтроллеры специально отделили от микропроцессоров, чтобы решать автономные задачи, они придуманы не для компьютеров. Хотя конечно делать можно все что душе угодно
я свой ретро комп собирал в прошлом веке на Z80, с 16к ПЗУ, 640к RAM, двумя флоппи и полноценной системой CPM ) предшественнийей MSDOS
делать что то подобное на современном МК конечно прикольно, но не особо сложно
вон я понимаю на форуме easyelectronics звучала идея сделать комп на простой логике. Вот это головоломка )
Надо фотку платы факса древнего выложить. Там МК с 4К флеш и до 100 байт ОЗУ рулил. Стоит кучка микросхем РОМ и кучка РАМ памяти. Так что все зависит от задачи.
https://forum.arduino.cc/index.php?topic=193216.0
Надо фотку платы факса древнего выложить. Там МК с 4К флеш и до 100 байт ОЗУ рулил. Стоит кучка микросхем РОМ и кучка РАМ памяти. Так что все зависит от задачи.
надо копать глубже, до МИР-2 например, там большие такие платки были на несколько десятков байт оперативной памяти на феритовых кольцах )
Это вы еще Проминь не видели, большой калькулятор размером с хороший стол с наборным полем и с перемычками, на которых написаны цифры, действия, думаю там памяти совсем не было, но программа набиралась на наборном поле перемычками. Я уж молчу про аналоговый вычислитель, на лабах крутили/считали, тогда было грустно, а щас, забавно вспоминать :)
А МИР-какой-то нам вообще в общагу отдали, но так никто восстанавливать не захотел.
На ДВКшку делали внешние банки памяти, тоже было.
На СМ-3 или 4, не помню, было памяти 28К слов, на которой ОС крутилась и задачи.
Ок, пора забыть, пожалуй. :)
вроде по Spi есть память?
если не хватает RAM в UNO, надо брать MEGA. Если не хватает MEGA надо брать STM32
Если не хватает MEGA, для начала посмотрите в сторону ATMega1284P-PU, там уже 16Кб RAM и удобный DIP-40 корпус. Правда флэш памяти 128Кб, но это и не мало.
вроде по Spi есть память?
Всякая есть
По spi это уже не RAM, это внешняя память доступ к которой будет раз в 100 медленнее
Если не хватает MEGA, для начала посмотрите в сторону ATMega1284P-PU, там уже 16Кб RAM и удобный DIP-40 корпус. Правда флэш памяти 128Кб, но это и не мало.
Как бы да, но такая экзотика как мега1284 стоит намного дороже stm32 в которой в cortex m3 уже 20кб минимум и до 128к
Как бы да, но такая экзотика как мега1284 стоит намного дороже stm32 в которой в cortex m3 уже 20кб минимум и до 128к
1284 сейчас можно взять примерно за 510-530 руб. Согласен, не дешево. Но зато теперь уже родной AVR, а мне например STR32 нужно с 0 осваивать.
да, стм это уже другое программирование, кто умеет переходит и не хватает пинов-частоты-прерываний-цапов,а кому нужна очень быстрая разработка, пока хватает ресурсов остаются на арме.
Кстати, посмотрел и озадачился. Почему народ редко юзает такие МК как AT90USB1286(1287) или ATxMega? В 90-й серии есть в частности USB и интерфейс к внешней ОЗУ и теже 8кб своей .. у Х-мег ваще до 32 килов ОЗУ и тоже есть со встроенным USB .. может кто пояснить, почему все так "запали" на 328 кристалл мег и при этом возмущаются что "маловато"? :)
может кто пояснить, почему все так "запали" на 328 кристалл мег и при этом возмущаются что "маловато"? :)
потому, что нисчеброды - посмотри цены на корпуса.
Смотрел уже. 90-я серия в районе 300-500руб была, Мега2560 - в том же пределе, и даже дешевле видел, Х-меги - чуть подороже, но не существенно.
Ну не 5руб/шт с инструкцией, готовым скетчем и подарочной упаковке с бантиком .. но и не такие уж большие бабки, чтобы годами извращаться.
500 рублей за чип? Это что компьютер, за что такие деньги?
Это даже лучше и дешевле не только лишь "компьютера", а даже хорошего, настояшего пива. :)
Сравним?
http://ru.aliexpress.com/item/ATXMEGA256A3-AU-MCU-AVR-256K-FLASH-1-8V-64... - 1000р
http://ru.aliexpress.com/item/Orange-Pi-One-ubuntu-linux-and-android-min... - тоже 1000р, но уже готовый к использованию
круто, а во втором на лине надо программировать? и сколько жрет энергии?
Можно просто пользовать, можно программировать. Есть разные сборки линукса на него.
http://www.aliexpress.com/item/5pcs-lot-ATXMEGA128A1-AU-in-stock-can-pay/32614298870.html вот тоже не плохо ATxmega128A1 - 32кб ОЗУ .. 250руб/шт.
или вот http://www.aliexpress.com/item/Free-shipping-10pcs-lot-Free-shipping-ATXMEGA256A3-AU-ATXMEGA256A3-new-original/32510072492.html ваша хМега2560 около 450руб/шт.
или вот обычная Мега250 http://www.aliexpress.com/item/Free-shipping-10pcs-lots-ATMEGA2560-16AU-... 235руб/шт.
Кстати, посмотрел и озадачился. Почему народ редко юзает такие МК как AT90USB1286(1287) или ATxMega? В 90-й серии есть в частности USB и интерфейс к внешней ОЗУ и теже 8кб своей .. у Х-мег ваще до 32 килов ОЗУ и тоже есть со встроенным USB .. может кто пояснить, почему все так "запали" на 328 кристалл мег и при этом возмущаются что "маловато"? :)
Почему не используют? 128-я мега как раз и самая ходовая. Я в одном устройстве использовал 90-ю, но тогда я руководил разработкий и по какой причине именно её выбрал конструктор взамен первоначально выбранной 128-й точно не знаю. :)
А вообще, я вчера купил себе вот такую плату: http://ru.aliexpress.com/item/STM32-development-board-STM32-core-Board-STM32F103ZET6-Board-cortex-M3/32386612549.html для попробовать. Пока не знаю с какой стороны подойти, но я и атмел взял в руки пару недель назад. :) У СТ выбрать процессор намного проще - в названии параметры разрядности, производительности, памяти, не то что е меги как бык поссал. :)