Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Ср янв 14, 2026 17:59

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 66 ]  На страницу Пред.  1, 2, 3, 4, 5
Автор Сообщение
 Заголовок сообщения: Re: Forth over Arduino
СообщениеДобавлено: Пн дек 25, 2023 00:54 
Не в сети

Зарегистрирован: Пн янв 28, 2019 03:10
Сообщения: 176
Благодарил (а): 23 раз.
Поблагодарили: 13 раз.
Возможно, кому-нибудь будет полезно:

Обнаружил, что на ESP8266 ардуиновская digitalWrite перед собственно установкой уровня пина ещё отключает на нём ШИМ и генерацию импульсов (которые могли быть запущены функциями analogWrite и tone соответственно). При большом числе вызовов эти вспомогательные действия могут занимать заметное время.

Cоорудил макросы, которые просто устанавливают указанный уровень на пине и работают значительно быстрее:
Код:
#define pinHigh(pin)  (*portOutputRegister(digitalPinToPort(pin)) |= digitalPinToBitMask(pin))
#define pinLow(pin)   (*portOutputRegister(digitalPinToPort(pin)) &= ~digitalPinToBitMask(pin))


Скорее всего, будет работать и под ESP32, но пока не проверял.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth over Arduino
СообщениеДобавлено: Пн дек 25, 2023 03:31 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 8067
Благодарил (а): 29 раз.
Поблагодарили: 148 раз.
Ну, в принципе, включение вывода как GPIO и должно отключать режимы специального назначения. Со скоростью еще определенный резерв в том, что вычисление digitalPinToPort(pin) каждый раз при выводе - это вынужденная дань подходу Arduino как таковому. Просто чтобы "вывод в pin 13" всегда был зажиганием светодиода. Соответственно, для разработчиков это определенная головная боль, чтобы по аргументу 13 понять, где на их плате соответствующий регистр IO в МК.

Я сейчас жду еще одну интересную платформу на ESP32: M5Stack Core2 ESP32 IoT Памяти тут побольше, поэтому и разместить всякого тоже можно. Кроме того, чем больше памяти задействовано, тем дольше грузится прошивка, что опять-таки происходит при каждой перекомпиляции исходных текстов, и избавиться от части этого можно как раз с интерпретатором, работающим внутри Arduino.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth over Arduino
СообщениеДобавлено: Чт окт 09, 2025 00:55 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 8067
Благодарил (а): 29 раз.
Поблагодарили: 148 раз.
Upd.

Мало того, что M5 Stack приехала, за ней доехала еще пачка плат на ESP32, причем платформа на удивление приятная в смысле использования в качестве "маленькой коробочки для простых вещей, при этом с беспроводной связью". А вот проекты Ардуино компилируются долго, даже при косметических изменениях программы. Поэтому есть идея оживить Форт для Ардуино, сделав его по архитектуре Ирбиса - сначала запустить основное приложение, а потом привязать основные функции к словам форт-системы, сделанной по switch/case.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth over Arduino
СообщениеДобавлено: Пн янв 12, 2026 00:35 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 8067
Благодарил (а): 29 раз.
Поблагодарили: 148 раз.
Вот думаю, сделать открытый репозиторий по Форту для ESP32 с ардуиновским компилятором, или активных пользователей не будет?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth over Arduino
СообщениеДобавлено: Пн янв 12, 2026 04:51 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2151
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
Hishnik писал(а):
Вот думаю, сделать открытый репозиторий по Форту для ESP32 с ардуиновским компилятором, или активных пользователей не будет?

Что предполагается в отличиях, к примеру, от https://esp32.arduino-forth.com/ ?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth over Arduino
СообщениеДобавлено: Пн янв 12, 2026 16:03 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 8067
Благодарил (а): 29 раз.
Поблагодарили: 148 раз.
KPG писал(а):
Что предполагается в отличиях, к примеру, от https://esp32.arduino-forth.com/ ?

А что там отличается от Arduino? Собственно, те же функции, только переписанные на Форте. Я выше уже описывал общую идею - не повторять сделанное в библиотеках Arduino, а написать модуль, добавляемый в готовый проект и обеспечивающий ему Command Line Interface. Целью является резкое уменьшение количества перекомпиляций проекта за счет того, что изменения будут вноситься в скрипты на Форте, а не в сам проект.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 66 ]  На страницу Пред.  1, 2, 3, 4, 5

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB