Увеличение Flash AT90s2313
Здравствуйте меня зовут Moyo@81. Я решил увеличить объем Flash памяти контроллера AT90S2313 так как другой контроллер для моей задачи брать нецелнсообразно, но не знаю как это сделать, пожалуйсто подскажите!!!!!!
- Реклама
[флуд]
Все очень просто! Надо изобрести наномолекулярный интеллектуальный трансмиттер и переделать структуру подложки кристалла. Или тайно пробраться в штаб квартиру атмела и изменить спецификацию, подождать пару лет. Или изобрести машину времени, вернуться в прошлое, стать главным конструктором атмела и повелеть сделать микроконтроллер с нужными характеристиками.
[\флуд]
А теперь серьезно. Флеш увеличить НЕЛЬЗЯ ибо он встроен на уровне ПОДЛОЖКИ кристалла. Для решения данной проблеммы могу только посоветовать плюнуть на не использование некоторого количества ножек\функций и взять другой МК.
Так-же можно
1. Использовать какой-нить дешевый ПЛИС(кто-то скажет - по воробьям из орбитальной плазменной пушки, но в россии не продают действительно маленьких плисок, по крайней мере в рознице)
2. Взять МК с другой архитектурой и внешней памятью (ну здесь все понятно. я надеюсь) (З.Ы. есть с последовательной внешней памятью программ - сам видел, но это было давно и на плис
)
3. Сделать сеть из МК и распределить излишний код по разным кристаллам. Проблемма - сетево-распределенный код - от 1к кода
------
З.Ы. Надеюсь, что уважаемый постер не станет делать машину времени на 2313
Про машину времени в "МЯЯЯУ" мы сошлись на том, что её лучше всего делать на транзисторах П4 и лампах 6П3С. На американских деталя даже доктор Эммет фон Браун свою не делал
мышонок
Все очень просто! Надо изобрести наномолекулярный интеллектуальный трансмиттер и переделать структуру подложки кристалла. Или тайно пробраться в штаб квартиру атмела и изменить спецификацию, подождать пару лет. Или изобрести машину времени, вернуться в прошлое, стать главным конструктором атмела и повелеть сделать микроконтроллер с нужными характеристиками.
[\флуд]
А теперь серьезно. Флеш увеличить НЕЛЬЗЯ ибо он встроен на уровне ПОДЛОЖКИ кристалла. Для решения данной проблеммы могу только посоветовать плюнуть на не использование некоторого количества ножек\функций и взять другой МК.
Так-же можно
1. Использовать какой-нить дешевый ПЛИС(кто-то скажет - по воробьям из орбитальной плазменной пушки, но в россии не продают действительно маленьких плисок, по крайней мере в рознице)
2. Взять МК с другой архитектурой и внешней памятью (ну здесь все понятно. я надеюсь) (З.Ы. есть с последовательной внешней памятью программ - сам видел, но это было давно и на плис
3. Сделать сеть из МК и распределить излишний код по разным кристаллам. Проблемма - сетево-распределенный код - от 1к кода
------
З.Ы. Надеюсь, что уважаемый постер не станет делать машину времени на 2313
- Сообщения: 12
- Зарегистрирован: Вс апр 02, 2006 13:41:27
Понял про Flash и просветился и теперь поставлю вопрос по другому. Я написал программу для звонка ПАТРИОТ. Программа, которую я написал, позволяет хранить в себе до 256 мелодий, но у AT90S2313 Flash всего 2 кило и в результате у меня поместилось всего 12 мелодий. Каждая мелодия представляет массив, в принципе можно поместить массив каждой мелодии в EEPROM, но места в 2313 всего 128 байт, влезет максимум 2 мелодии. Хотелось бы тогда узнать как увеличить EEPROM минимум до 30 кило поместить туда массивы мелодий, и каким образом можно будет туда обращаться и считывать нужный массив при помощи основной программы, которая будет сидеть во Flash.
О! Правильно поставленный аопрос есть уже половина ответа.
Для увеличения eeprom, тобиш постоянной памяти данных надо приделать внешнюю микросхемку.
Вариантов, в принципе, море - как по объемам, так и по интерфейсам.
Если мне не изменяет память, то в 90s2313 с внешними интерфейсам туго, по этому придется делать программную эмуляцию - примерно 300-512 байт на SPI\I2C (есть отполированный I2C мастер
).
В принциае я-бы посоветовал приделать I2C eeprom на сколько надо байт - работать с ним просто и приятно - около 300-500 байт кода на эмуляцию, смешной и простой протокол с возможностью автоинкремента адреса при чтении.
А вот со скоростью могут возникнуть трудности - скорость работы ненаглядного интерфейса 100\400kHz (для второй опции нужен квварц примерно на 4Мгц). Может и не хватить. Теоретически из этого можновывернуться буфферизацией.
Вторая заковырка - обмен занимает процессорное время, но его можно запихнуть в бэкграунд, чтобы не мешал основной программе и работал в свободные кванты времени (если таковые есть).
Опции предложены. Choose your destiny.
Для увеличения eeprom, тобиш постоянной памяти данных надо приделать внешнюю микросхемку.
Вариантов, в принципе, море - как по объемам, так и по интерфейсам.
Если мне не изменяет память, то в 90s2313 с внешними интерфейсам туго, по этому придется делать программную эмуляцию - примерно 300-512 байт на SPI\I2C (есть отполированный I2C мастер
В принциае я-бы посоветовал приделать I2C eeprom на сколько надо байт - работать с ним просто и приятно - около 300-500 байт кода на эмуляцию, смешной и простой протокол с возможностью автоинкремента адреса при чтении.
А вот со скоростью могут возникнуть трудности - скорость работы ненаглядного интерфейса 100\400kHz (для второй опции нужен квварц примерно на 4Мгц). Может и не хватить. Теоретически из этого можновывернуться буфферизацией.
Вторая заковырка - обмен занимает процессорное время, но его можно запихнуть в бэкграунд, чтобы не мешал основной программе и работал в свободные кванты времени (если таковые есть).
Опции предложены. Choose your destiny.
- Реклама
Софтварная эмуляция I2C мастера\ведущего устройства. Драйвера для икроконтроллера, высокоинтеллектуального (в пределах зашитой программы) устройства, а не какого-нибудь еепрома или порта расширения или датчика температуры 
Делал по примеру Атмеловского даташита, но с вырезкой жира и наращиванием мышц.
Делал по примеру Атмеловского даташита, но с вырезкой жира и наращиванием мышц.
- Сообщения: 336
- Зарегистрирован: Пн мар 20, 2006 13:05:08
...
Я просто верю в то, что рушить догмы - лучший способ не стареть.
Спасибо за совет с контроллером разбирусь, а чтобы долго не не лазить инфу не фильтровать я бы хотел узнать, какие EEPROM I2C поддерживают, надо от 30 кило и выше, маркировка какиенибудь ссылки на инфу по тому как их объединить в одно целое, в смысле 2313 и EEPROM, какиенибудь примеры, схемы включения, програмки на ассемблере и т.п.
Нашол EEPROM FM24C256 в ней аш 256 Kb и она имеет встроеный I2C и стоит у нас в www.promelec.ru всего 166 рублей правда мелкооптовая цена ,но даже в розницу я готов отдать 200р. С такой памятью можно немного доработать програмку моего звонка и можно будет хранить и воспроизводить до 65536 мелодий. Ну это только мечты, а в реальности надо разобратся с тем как увязать ATtiny2313 с FM24C256. Между собой я их спаяю, хотя будет интересно посмотреть предложенные варианты.
Остается один вопрос. Как организовать обмен данных, есть ли какиенибудь примеры на ассемблере или обучающие статьи???
Моя цель загнать в EEPROM масивы мелодий, а потом обращаться и считывать нужный масив и воспроизводить мелодию.
Остается один вопрос. Как организовать обмен данных, есть ли какиенибудь примеры на ассемблере или обучающие статьи???
Моя цель загнать в EEPROM масивы мелодий, а потом обращаться и считывать нужный масив и воспроизводить мелодию.
- Сообщения: 12
- Зарегистрирован: Вс апр 02, 2006 13:41:27
Назначаешь каждой мелодии два числа. Первое содержит адрес начала мелодии, а второе размер.Moyo писал(а):Остается один вопрос. Как организовать обмен данных, есть ли какиенибудь примеры на ассемблере или обучающие статьи???
Моя цель загнать в EEPROM масивы мелодий, а потом обращаться и считывать нужный масив и воспроизводить мелодию.
Считываешь первый байт, потом размер декрементируешь, а адрес инкрементируешь, потом считываешь второй байт и т.д. пока размер не станет равен нулю.
С SPI интерфейсом смотри в сторону AT45DB..
вот сцылка http://www.itt-ltd.com/reference/ref_i2c.html, а ещё форумский поиск выдаёт много интересного и полезного.
И ещё можешь скачать VMLAB, в нём есть экзампл с монитором i2c. Запись и чтение eeprom нарисовано в документации
И ещё можешь скачать VMLAB, в нём есть экзампл с монитором i2c. Запись и чтение eeprom нарисовано в документации
Юзал 24С512 могу скинуть нароботки на Си(ICC for AVR)
Настоящий кот всегда либо голоден,
либо невыспался ...
либо невыспался ...
Был бы очень рад посмотреть, вот мое мыло kibervitas@r96.ruЮзал 24С512 могу скинуть нароботки на Си(ICC for AVR)


