Хочу собрать робоконтроллер на 16-разрядном отечественном микроконтроллере К1881ВЕ1Т. Но как известно с отечественным всегда сложно . Он содержит следующее: - процессорное ядро с 16 разрядными данными и 24 битами адреса - ОЗУ данных 128 * 16 бит. - ОЗУ данных/программ 128 * 16 бит - масочное ПЗУ памяти программ емкостью 4096 *16 бит (абсолютно бесполезно) - 4 16-разрядных таймера/счетчика, WDT таймер - арбитр многопроцессорного комплекса на шине интерфейса внешней адресации - последовательные интерфейсы 2 UART, 2 SSI/SPI, I2C - 16 векторная ранжированная система прерываний - 8 линий ввода/вывода, 27 линий вывода совмещенного порта - напряжение питания VCC = 3.3 ? 5.5 B; - максимальная частота следования тактовых импульсов fC = 25МГц (делит ее на 2) при VCC = 5.0B; fC 1= 14МГц при VCC = 3.3B; - пиковая производительность 12,5 млн. команд в секунду - диапазон рабочих температур от -45? С до +85? С; - 100-выводной корпус
Проблема состоит в подключении внешней памяти программ/данных. Контроллер позволяет подключать до 16Мега слов(16 бит) памяти программ/данных. Необходимо подобрать FLASH и SRAM совместимые с ним. Для начала можно ограничиться 65К слов. В ОЗУ может писаться старший и младший байт по отдельности, поэтому возможно понадобится две микросхемы 65К байт. Память подключается следующим образом: ? шина адреса 24 бита ? шина данных 16 бит ? шина управления 5 сигналов: ? SDI ? признак данные/команда ? SRW признак направления чтение запись ? WRH, WRL ? стробы записи на внешнюю память ? RDD ? строб чтения в МК
Одна из подходящих FLASH микросхем для памяти программ ? AT49F1024 (45 нс, 64Кх16, 5В), но может есть что получше? SRAM еще не нашел. Проблема еще в том, что я не работал с микросхемами памяти, не знаю как их программировать. Есть спецификация. Помогите разобраться с подключением памяти?
У меня было желание запустить отечественные микроПРОЦЕССОР, аналог 86-го, но как-то руки не дошли, купил mega8 на днях - ее буду запускать. А ПЗУ я так понимаю - это флэшка из компа, в которую биос пишется, так вот ее программить надо на компе, почитай на rom.by - что-то типа "прошивка на горячую", смысл такой, что мамка запускаеьтся с родным биосом, а потом на ходу его выдергивают и меняют микруху. ее и программят (чем угодно, не обязятельно программа БИОС).
поэтому возможно понадобится две микросхемы 65К байт
- точно, понадобится две микросхемы, только не обязательно 65К, просто две доступ к которым идет по 8 бит.
setar писал(а):читал доку, если честно мало что понял. нужно искать примеры схем.
Схемы вряд ли будут, если только ребята с Владимира поделятся... По моим данным только там его используют.
slava писал(а):А зачем ?
Если не юзать своего оно совсем погибнет! И тогда Нам очень просто навязать всякую ерунду?
slava писал(а):Что, мало АВР ? Есть ARM (7,9) от филипса напрмер или от Атмела, а приведенный сабж для чего ? Это для вояк разных делают, для потребительского использования - лучше в помойку. имхо
Та же архитектура AVRа не очень удачна, система команд раздута? А выше упомянутый контроллер действительно двойного применения. Кстати он еще поддерживается, будут разрабатываться и новые версии?
Mike_MA писал(а):Если очень попросите... - то могу помочь....
Помощь действительно нужна, в собирательстве железа у меня мало опыта, я специализируюсь больше на моделировании (SPICE, VHDL), да и времени у меня до конца лета, потом смогу этим заниматься только по праздникам.
Pegasus писал(а):У меня было желание запустить отечественные микроПРОЦЕССОР, аналог 86-го, но как-то руки не дошли, купил mega8 на днях - ее буду запускать. А ПЗУ я так понимаю - это флэшка из компа, в которую биос пишется, так вот ее программить надо на компе, почитай на rom.by - что-то типа "прошивка на горячую", смысл такой, что мамка запускаеьтся с родным биосом, а потом на ходу его выдергивают и меняют микруху. ее и программят (чем угодно, не обязятельно программа БИОС).
Я предполагаю программировать не доставая ничего из платы, т.к. все корпуса ?экзотические? и скорей всего будут запаяны, по причине отсутствия колодок.
Попробую сформулировать предварительное ТЗ на робоконтроллер: 1. Микроконтроллер ? K1881BE1T 2. Статическое ОЗУ, мин. объем 64Кх16, максимальный 16М слов, (правда не понятно куда столько использовать, только если видео обрабатывать? - !!! Это надо обсудить)*, время доступа 15-20 нс*. Объем обеспечивается одной или двумя микросхемами (предпочтительно одной). Рабочее напряжение 5В. 3. Память программ ? FLASH память объем 65К ? 16 М слов, время доступа ~40 нс*. Напряжение питания 5В. Объем обеспечивается 1 или 2 микросхемами (предпочтительно одна). Наличие низковольтного режима программирования 4. Возможность программирования FLASH-памяти ?на лету?, т.е. не извлекая микросхем из платы. Порт программирования*. 5. Внешние устройства можно подключить следующими способами: ? Порт ввода вывода (вроде 8 разрядов, надо смотреть по спецификации, я точно еще не знаю); ? Неиспользуемые разряды шины адреса, правда только выход (24 минус используемая разрядность) ? По шине адреса/данных как к внешним регистрам (зарезервировано ~ 128 байт). Для этих целей возможно надо сразу резервировать (ставить на плату) регистры с 3 состояниями и дешифратор* ? В микроконтроллере предусмотрен протокол для объединения в много микроконтроллерную систему, грубо говоря их можно соединять параллельно или последовательно 6.* * параметр (пункт) уточняется в ходе разработки
А теперь что у меня есть: 1. Контроллер есть в наличии (корпус 100 выводной прямоугольный, 20pin с одной стороны и 40 с другой). Есть к нему описание (выложено выше), ассемблер (с исходниками если кому интерестно), компилятор С, и отладочная среда. Так же вроде есть связь с разработчиками контроллера. 2. Нашел datasheet на AS7C1026 ? 64Kх16 CMOS SRAM (http://gaw.ru/doc/Alliance/as7c31026.pdf). По описанию подходит по всем параметрам: Объем 64Кх16, напр. пит. 5В, время доступа 10/12/15/20 нс, обеспечивает раздельную запись старшего и младшего байта.
! Главная проблема по микросхемам памяти (ОЗУ, ПЗУ) ? смогу ли я купить их в Минске ?!
4. Для программирования FLASHа(64Кх16) необходимо подать 16 разрядный адрес, 16 разрядные данные + 3 управляющих сигнала = 35 сигналов. Следовательно программатор должен следующее: ? Перед началом программирования установить сброс на контроллер, чтобы перевести его выходы в состояние Z (высокий импеданс или откл.), тоже самое с микросхемой ОЗУ. (т.к. и FLASH и ОЗУ подключены по одной шине адреса и данных) ? Принять необходимые данные с порта компьютера(* выбор порта можно обсуждать) ? Сформировать сигналы адреса, данных и управляющих сигналов на соответствующих шинах. ? и так далее? Простой подсчет дает что программатор к плате робоконтроллера подключается через 35 выводной шнурок минимум, если не ставить еще микросхему связи с компьютером на саму плату(*). Как вариант зашить какую либо маленькую ПЛИС для этих целей или контроллер (куча контроллеров получится ).
Необходимо еще немного логики для формирования всех управляющих сигналов для микросхем памяти в соответствии со спецификацией из управляющих сигналов контроллера, если на прямую не получится.
-= Александр =- писал(а):Хм... Однако! Не знал что наши такое выпускают! =)
Это уже не наши. Это только для nikolashи оно отечественное ;( Наши всю микроэлектронику давно пустили на "жъОлтый". Но это так - крик души.
Серия 1881 вообще вся оч. интересная. Производит её предприятие "Интеграл" входящее в НПО "Белмикросхемы". Кстати серия вполне "гражданская", в неё входят и модули управления ЖКИ и пр. По-моему, если не ошибаюсь, это серия используется в производстве бытовых электросчетчиков с возможностью передачи данных. Поправьте?? Так что теоретически схемы должны быть.
Я сам всем этим пытался интересоваться, но много не нашел. Да и купить тут особо негде. Так что вопрос к nikolashе: у вас там ближе можно найти пример схем включения. Может найдешь чего-нибудь полезное. В даташите http://www.bms.by/products/russian_2002/specs/K1881BE1Tr.pdf производителя (написано, что имеется (? где имеется не указано) софт - Ассемблер, компилятор С, отладчик. Если есть - поделись со всеми. Может в жизни пригодится.
Pablos писал(а):Я сам всем этим пытался интересоваться, но много не нашел. Да и купить тут особо негде. Так что вопрос к nikolashе: у вас там ближе можно найти пример схем включения. Может найдешь чего-нибудь полезное. В даташите http://www.bms.by/products/russian_2002/specs/K1881BE1Tr.pdf производителя (написано, что имеется (? где имеется не указано) софт - Ассемблер, компилятор С, отладчик. Если есть - поделись со всеми. Может в жизни пригодится.
Ассемблер, компилятор С, отладчик - все это есть, даже некоторые программы с исходниками (если нужны). Я в ближайшее время выложу, если вы заинтерисовались... А схем включения у меня нет, по сикрету скажу, что разрабодчики сами не знают как и с какой памятью его включать... Я уже писал, что схемы искать нужно в университете во Владимире.
На счет количества выводов I/O. Порты делать прийдется самому. Найдите литературу типа "микрокомпьютер своими руками" 80-х годов выпуска. Мне попадалась такая книга (комп на к580 ), там все детально описано. Выводишь адрес устройства и данные, а порт с таким адресом эти данные принимает (или отслает свои). Всех делов - для варианта с книги это одна непомню какая советская микросхема на 8 бит порта.
По большому счету незачем..., но если так рассуждать, то ко всему что обсуждается на этом форуме можно отнести эту фразу ? ?Читаю и фегею.... ну зачем ? ...? Мне очень понравился следующий ответ на тему ?А зачем??:
chief писал(а):читай выше ..... самый тупой ответ из всех..... я присоединяюсь... ну и добавлю... Сейчас развитие техники достигло таких вершин что проще купить что бы то ни было... но я спрошу, что делать нам?.... Превращаться в безмозглых потребителей чужих идей? Сидеть дома и втыкать трехмерное порно с DVD последней модели с акустикой 7.1? Я думаю пока выпускают микросхемы в DIP корпусах, мы - простые смертные любители можем и должны заниматься тем что приносит удовольствие... Пусть другие говорят: чудак!!! Некуда денег деть!!! Нам всем это нравится.... Удачи!!!!
AVR ? Это Круто!, все уже раскручено, софт, примеры, и ..., а для К1881ВЕ1Т нет ничего, надо изобретать все с нуля ? наверно это и привлекает меня, Мы же не ищем легких путей, в противном случае, я думаю, этого сайта вообще бы не было...
Пока главная проблема ? не могу купить подходящие микросхемы памяти, но я думаю смогу эту проблему решить (может, кто может с этим помочь буду очень признателен), а после этого процесс создания платы пойдет активней.
Кстати, перспективы у контроллера есть: Тут обсуждали обработку видео на МК, что минимальная картинка 64К, с этим у этого контроллера все отлично 16Мега слов вполне достаточно, чтобы хранить несколько кадров, правда хватит ли быстродействия обработать картинку ? это ???.
Народ!, Кто может зайти по ссылке http://www.vkbrs.vladimir.ru/ , - это сайт Владимирского КБ радиосвязи, там по слухам используют К1881ВЕ1Т. А то у меня не получается...
Задумка конечно интересная, но я бы взял лучше ARM - перспективнее и примеров много.... По поводу памяти: быструю SRAM можно снять с материнок от 486-пентиумов. например я достал UM61M256K-15 - 15 нс SRAM 32кБ. Только не могу найти даташит...