До сих пор я только что нашел эту статью, которая дает руководство для достижения этого: ДВИЖЕНИЕ ВПЕРЕД. Часть 1: Проектные решения в четвертом ядре
Есть более свежий гайд?
Какой Форт лучше для этой цели?
Я планирую использовать его с PIC16F877A, и я знаю, что PicForth существует, но это всего лишь компилятор, а не система для связи с окном терминала через последовательное соединение (поэтому я собираюсь использовать Forth).
Взгляните на Mecrisp Forth . Я использовал его на микроконтроллерах STM32.
Он компилируется примерно до 25 КБ и, вероятно, требует много работы (язык ассемблера), чтобы заставить его работать на PIC32. Но если вы это сделаете, у вас будет быстрая небольшая реализация Forth. Если вы это сделаете, дайте мне знать.
Это стоит посмотреть, так как это самая передовая реализация Forth, которую я видел.
Возможно, вы захотите попробовать pForth , переносимую реализацию на C. PIC16F877A имеет 14 КБ флэш-памяти и всего 368 байт ОЗУ, поэтому pForth никак не подойдет. PIC16F877A также имеет 16-уровневый аппаратный стек, используемый только для адресов возврата, и не имеет стека параметров. Эти ограничения, вероятно, в любом случае исключили бы использование PIC16 для pForth, даже если бы вы могли получить его с достаточным количеством флэш-памяти и оперативной памяти.
Основываясь на ответе gbarry, похоже, вам понадобится микроконтроллер гораздо большего размера для pForth. Вы также можете пропустить PIC18 (максимальный размер программы которого составляет 128 КБ), а также PIC24 (который также имеет максимальный размер 128 КБ) и использовать PIC32. PIC32MX170F256B имеет 256 КБ флэш-памяти и 64 КБ ОЗУ и стоит менее 4 долларов . Однако он поставляется в 28-контактном DIP-разъеме вместо 40-контактного.
Вы также можете ознакомиться со следующими книгами:
Программирование проблемно-ориентированного языка: Форт - как работает внутреннее устройство Чарльза Х. Мура (первоначального создателя Форта)
Эта книга доступна только в виде книги Kindle, но вы можете получить бесплатную программу для чтения для ПК и большинства портативных устройств, таких как эквиваленты iPhone, iPad и Android.
Методы применения Forth: тетрадь курса , 5-е издание Элизабет Д. Разер (которая была соучредителем Forth, Inc.)
По совету @tcrosley я скачал pForth, скомпилированный под OS X, а самостоятельный образ весит 180 Кб. Это один из нескольких камней преткновения, которые не позволили мне реализовать цель, аналогичную цели автора. Только я уже 15 лет пытаюсь :) Большинство слишком большие, у некоторых нет интерпретатора, некоторые не на C, некоторые не собирались, некоторые ожидали среды Windows и так далее.
Информация, предоставленная Брэдом Родригесом, по-прежнему применима для создания ряда систем FORTH. Я ничего не знаю о каких-либо обновлениях, а так как это его сайт, то там и будут все обновления. Я недавно ссылался на эти документы и все еще пытаюсь создать свой собственный небольшой FORTH, написанный на C. У меня был небольшой успех, но я могу вам сказать, что в деталях очень много. Это не то, что вы можете сделать, одновременно пытаясь добиться прогресса во встроенном проекте.
Обратите внимание, что изначально предполагалось, что FORTH будет иметь блок оперативной памяти, в котором будут компилироваться новые словарные слова. Либо приходится иметь дело с не очень большим объемом оперативной памяти, либо придумывать способ записи программы на flash.
Я также попробовал что-то под названием FlashForth (написано на ассемблере), и оно сработало, но я поставил его на довольно большой PIC18F6620. Я отвлекся, пытаясь понять, как устроен словарь и где хранятся данные, поэтому я так и не добрался до того места, где я мог бы заняться его разработкой. Я предлагаю попробовать, если у вас есть что-то в семействе PIC18F... даже просто попробовать. В этой заметке есть некоторые детали 18F, которые совместимы по выводам с их аналогами 16F, поэтому, если вас беспокоит стоимость, просто используйте более крупные детали для разработки, если FORTH на самом деле не входит в конечный продукт.
ткросли