Помогите новичку
- Войдите на сайт для отправки комментариев
Всем привет. Не так давно я решил заняться программированием на ардуино с целью реализовать один проект. Проблема в том, что не хватает памяти на прошивку, нужно управлять большой (от 650 до 1400 диодов) адресной матрицей. Проект планирую делать на arduino Uno. В интернете нашел только как создавать и читать файлы с sd, но ни слова о прошивке. Как сделать так, чтобы ардуино запустила программу с SD/micro SD карты? Я думал разбить программу на программы поменьше, т.е. верх "пирамиды" - это программа которая приветствует пользователя и открывает "программу-меню", из "программы-меню" доступно еще несколько программ-режимов, при закрытии которых снова открывается основная, а если закрыть основную, устройство выключится, при включении начав круг заново. Насколько эффективен такой подход?
P.S. вопрос может показаться максимально тупым, но это первы
Не получится. Купи плату с больше памяти.
Не так давно я решил заняться программированием на ардуино
и прям сразу
нужно управлять большой (от 650 до 1400 диодов) адресной матрицей.
Может, на чём попроще поучиться?
Проект планирую делать на arduino Uno.
Из каких соображений сделан такой выбор? Вроде ж Вам памяти не хватает, так почему не взять Arduino Mega - у ней памяти в разы больше.
Как сделать так, чтобы ардуино запустила программу с SD/micro SD карты?
Если Вы не хотите писать интерпретатор и запускать программу на интерпретируемом языке, то никак. Совсем никак-никак.
Насколько эффективен такой подход?
Без интерпретации он невозможен, а с интерпретацией - крайне неэффективен.
вопрос может показаться максимально тупым
Не без этого.
[quote=ЕвгенийП]
ардуино мега слишком большая, нужен компактный корпус, да и слишком много неиспользуемого будет
может тогда взять не ардуино а что-нибудь другое?
ардуино мега слишком большая, нужен компактный корпус, да и слишком много неиспользуемого будет
Давайте посчитаем: на работу с адресными диодами нужно 3 байта на каждый LED, соответвенно на 650 диодов нужно 2Кб памяти, а на 1400 - 4.2К
На работу с Sd карточкой потребуется еще примерно 1 К
Ну и на все остальное по вашей задумке - всякие там меню и приветсвия - еще пусть 1К
Итого требуется от 4 до 6.2 Кб ОЗУ
у Ардуино Уно этой памяти всего 2К. Выводы сами сделаете или вам пояснить? :)
может тогда взять не ардуино а что-нибудь другое?
возьмите СТМ32.
А скажите мне как художник художнику, вы рисовать... то бишь программировать умеете?
Я говорил про запуск программы с карты памяти
может тогда взять не ардуино а что-нибудь другое?
возьмите СТМ32.
А скажите мне как художник художнику, вы рисовать... то бишь программировать умеете?
знаю C на среднем уровне
Я говорил про запуск программы с карты памяти
Тебе сразу же два человека ответили - это невозможно (посты #1 и #2). У тебя ещё остались вопросы?
Я говорил про запуск программы с карты памяти
все ясно, про программирование уже можете не отвечать :)
Пояснение для новичка:
- запуск программ с карты памяти в ардуино стандартным образом не поддерживается. Для простоты можете считать что это невозможно.
- подключение карты памяти не увеличивает оперативную память...
знаю C на среднем уровне
очень среднем? :) судя по вопросам
не, не читал
Я говорил про запуск программы с карты памяти
все ясно, про программирование уже можете не отвечать :)
Пояснение для новичка:
- запуск программ с карты памяти в ардуино стандартным образом не поддерживается. Для простоты можете считать что это невозможно.
- подключение карты памяти не увеличивает оперативную память...
при открытии одной программы подразумевалось закрытие другой, но окей, я понял что легче взять другую плату
знаю C на среднем уровне
очень среднем? :) судя по вопросам
это первый опыт в электронике в целом, опыт в программировании был с игровыми движками
при открытии одной программы подразумевалось закрытие другой
Даже если бы это (оверлей с СД) было бы возможно - оно бы вам не помогло. У Уно не хватит памяти даже на одно только управление вашей матрицей...
ардуино мега слишком большая, нужен компактный корпус, да и слишком много неиспользуемого будет
Вот тут и памяти достаточно и кард ридер уже есть и меньше уно - https://www.adafruit.com/product/2885
ардуино мега слишком большая, нужен компактный корпус, да и слишком много неиспользуемого будет
https://aliexpress.ru/item/32802310906.html
По размерам сопоставимо с arduino uno
Вообще на счет расхода ОЗУ - не все так однозначно и зависит от того, что нужно выводить на светодиоды. Ежели все в один цвет - и пару байт хватит, если рисунок повторяющийся - см. размер повторяющегося фрагмента. Для буквоцифр тоже реально влезть. И т.д.
ТС, прочитай пока за "гарвардскую архитектуру" микроконтроллеров. Потом расскажешь, сможешь ли ты со своим "средним Си", осилить оверлеи.