Forth http://fforum.winglion.ru/ |
|
трехкомандный Форт для embedded http://fforum.winglion.ru/viewtopic.php?f=39&t=1206 |
Страница 1 из 1 |
Автор: | forth@km.ru [ Пн мар 17, 2008 02:52 ] |
Заголовок сообщения: | трехкомандный Форт для embedded |
Почитал http://pygmy.utoh.org/3ins4th.html про простейший конечный автомат, управляемый командами с последовательного порта. Судя по тексту, этот прием работает только на микроконтроллерах с фон-неймановской архитектурой, и не подходит для современных распространенных контроллеров, так как в общем случае нет возможности переписывать память программ, и использовать команду call (хотя старшие AVRы вроде умеют переписывать память программ кусками). Кто применял что-то подобное для AVR или MSP430 ? Сколько и какие команды должны поддерживаться контроллерной прошивкой, чтобы можно было работать со связкой контроллер + хост в интерактивном режиме ? Насколько использование чтения/записи памяти программ в старших AVR ATmegaXXX позволяет реализовать интерактивную модификацию кода контроллера ? Естественно можно реализовать полную поддержку нескольких десятков команд типичной форт-машины, но при этом придется отказаться от возможности работы с маш.кодом микропроцессора, получим переносимость, похерим скорость и потеряем несколько Кб на код интерпретатора. |
Автор: | Hishnik [ Пн мар 17, 2008 03:10 ] |
Заголовок сообщения: | |
Статья-то 1991 года. Какой смысл сегодня экономить ту пару сотен байт, в которых можно разместить минимально вменяемый интерпретатор? |
Автор: | Forthware [ Пн мар 17, 2008 13:39 ] |
Заголовок сообщения: | |
А ведь было время, были вполне популярны и последовательные (1-битные) "квази форт" машины... Никто не догадывается о чем я? Cоветские ПМК (программируемые микрокалькуляторы). Они были реализованы на последовательной, 1-битной безадрессной машине. Smile |
Автор: | in4 [ Вт мар 18, 2008 04:18 ] |
Заголовок сообщения: | |
forth@km.ru писал(а): Кто применял что-то подобное для AVR или MSP430 ?
На PIC16F877 применял. Изменение программы контроллера не делал, управление на программы контроллера не передавал. Но с компа был доступ ко всем устройствам микроконтроллера и что-то типа watchdog для некоторых команд. Т.е. если с компа не поступила опред. команда, она выполняется после заданного времени. Метод позволил реализовать управление глючащим оборудованием, постоянная перепрошивка (при отладке) убила бы м/к намного раньше. Код: cRda EQU 1 ; команда Чтение
cWra EQU 2 ; команда Запись cWr0 EQU 4 ; команда Запись в устройство0 cWr1 EQU 5 ; команда Запись в устройство1 cWr2 EQU 6 ; команда Запись в устройство2 cWr3 EQU 7 ; команда Запись в устройство3 cRAll EQU 8 ; дать блок: все входы & АЦП |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |