Shaos wrote:
А оно уже есть - простой интерпретатор написан мной на PocketC для Пальмы в 2001 году - переписывается на чистый Си в полприсеста
Ну тогда осталось привести все к виду, компилируемому avr-gcc. И, главное, определиться с минимумом функций ввода-вывода.
Считаю, что на AVR менее, чем с 4К ОЗУ заклабываться смысла не имеет. Потому как программа в байт-коде ОЗУ требует.
Ну и поддержка - оба UARTа, NI-15, SPI. Короче все интерфейсы, для которых уже в AVROS поддержка есть. Желательно ввод-вывод сделать в виде какихто предопределенных функций.
Кстати, если нормально поддержать средства межпроцессорной коммуникации, то можно и реальных роботов взаимодействовать заставить.
Shaos wrote:
А оно уже есть - простой интерпретатор написан мной на PocketC для Пальмы в 2001 году - переписывается на чистый Си в полприсеста
Ну тогда осталось привести все к виду, компилируемому avr-gcc. И, главное, определиться с минимумом функций ввода-вывода.
Считаю, что на AVR менее, чем с 4К ОЗУ заклабываться смысла не имеет. Потому как программа в байт-коде ОЗУ требует.
Ну и поддержка - оба UARTа, NI-15, SPI. Короче все интерфейсы, для которых уже в AVROS поддержка есть. Желательно ввод-вывод сделать в виде какихто предопределенных функций.
Кстати, если нормально поддержать средства межпроцессорной коммуникации, то можно и реальных роботов взаимодействовать заставить.
Можно и межпроцессорный обмен сделать. Вобщем надо определиться с набором дополнительных команд.
По поводу памяти - первый вариант можно сделать и в бортовом ОЗУ, а вот реально надо бы иметь внешний перепрошиваемый ПЗУ, в котором будет сидеть байт-код, а ОЗУ проца будет юзаться только на переменные. Для загрузки кода программы я хотел воспользоваться COM-портом (помнишь я у тебя спрашивал как простейшее терминальное эхо сделать? - вот как раз для этого) - программа будет получать коды и перепрошивать ПЗУ (какой-нить serial flash можно заюзать?) - а далее запускаться по байт-коду.
Я тут за главного - если что шлите мыло на me собака shaos точка net
Shaos wrote:
Можно и межпроцессорный обмен сделать. Вобщем надо определиться с набором дополнительных команд.
Даже нужно. Надо только множество всех дополнительных команд обмозговать. Или вообще сделать его непостоянным.
Shaos wrote:- программа будет получать коды и перепрошивать ПЗУ (какой-нить serial flash можно заюзать?) - а далее запускаться по байт-коду.
SerialFLASH - довольно тормозная вещь. Если из неё байткод выполнять, загружая по кусочкам, то проблем не оберешься.
Лучше тогда кроме флешки еще прицепить ОЗУ в котором лежит выполняемый байт-код, и флеш - для его загрузки в ОЗУ. Мне кажется - ОЗУ на 32К хватит за глаза. А в меговой флеши можно хранить груду программ. Только тогда придется использовать AVR, которая поддерживает внешнее ОЗУ.
Заюзаю без проблем и модуль поддержки встрою - но надо ее живьем.
Интересно - где ее в России взять и сколько стоит ?
Я купил уцененную за 5 баксов. Могу попытаться купить еще экземпляр и перекинуть в Россию - Питер или Москву - оттуда проще будет тебе эту штуку отправить
Я тут за главного - если что шлите мыло на me собака shaos точка net
Shaos wrote:
Я купил уцененную за 5 баксов. Могу попытаться купить еще экземпляр и перекинуть в Россию - Питер или Москву - оттуда проще будет тебе эту штуку отправить
Два вопроса :
1. Не проще ли просто ее почтой отправить из НьюЙорка в Томск ? Никогда так далеко ничего не отправлял - поэтому спрашиваю.
2. Как тебе за нее деньгу отослать из Томска в НьюЙорк ? Опять же - не сталкивался ни разу с международными переводами.
SfS wrote:
1. Не проще ли просто ее почтой отправить из НьюЙорка в Томск ? Никогда так далеко ничего не отправлял - поэтому спрашиваю.
Велика вероятность что оно на таможне застрянет - либо на американской, либо на российской - так что первым делом надо с человеком через границу перевести.
SfS wrote:
2. Как тебе за нее деньгу отослать из Томска в НьюЙорк ? Опять же - не сталкивался ни разу с международными переводами.
Ну я тебе ее "безвозмездно" передам, т.е. даром - в надежде что ты поддержишь девайс в своей оське
Я тут за главного - если что шлите мыло на me собака shaos точка net
Кстати - уже можно потихоньку накидать общий портрет устройства:
1. Контроллер - AVRка, обязательно с поддержкой внешнего ОЗУ (для хранения выполненяемого байт-кода). Очевидно буду делать первую модель на Mege128 - она под рукой есть.
2. Интерфейс NI-15 с дешифратором адресов. На него же прицепим индикатор WP1602. Это в первом приближении - поскольку уже сделано. Потом можно попробовать какойнибудь графический.
Шину NI-15 нужно вывести наружу - чтобы устройство можно было использовать как процессорный модуль с другими NI-15-устройствами.
3. Флешка - 1Mбайт. Тоже уже вся поддержка есть. С нее при старте грузится байткод - и дальше все работает бод его управлением.
4. Клавиатура - та, что ты предложил. Подцепим ее по RS232.
5. Второй порт RS232 используем для связи с PC. Если использовать микросхему-преобразователь USB-RS232, то можно цепляться и по USB. Нынче это актуально.
Вроде ничего не забыл ?
Из всего перечисленного не сделаны - поддержка языка RW и клавиатуры. Остальное - либо готово, либо требует некоторой обработки напильником.
SfS wrote:
4. Клавиатура - та, что ты предложил. Подцепим ее по RS232.
Дык оно 3.3В - какой RS232 с его +15...-15?
Я думаю надо запитать через преобразователь напряжения, а сигнал напрямую подавать на последовательный вход (UART) микроконтроллера - 3.3В должно распознаться как "1". А можно и через буфер, чтобы чего не сжечь.
Я тут за главного - если что шлите мыло на me собака shaos точка net