Kopa 0 6 июля, 2019 Опубликовано 6 июля, 2019 (изменено) · Жалоба И что, кто то уже написал чего нибудь на Forth (Форте)? :) ForthHub/discussion ( и народ интересуется инструментами перевода программ из С -> Forth) поиск по слову Forth на Github P.S. Странно, что местный поисковик сайта не знает слова Forth Поиск через сервис google по слову Forth на местном форуме Изменено 6 июля, 2019 пользователем Kopa Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kopa 0 15 ноября, 2020 Опубликовано 15 ноября, 2020 (изменено) · Жалоба И, снова здравствуйте. :) Локализация приложений на Форте? Это просто! (iva 23 октября 2020 г.) P.S. Немного сопутствующей тематики применения Форт с электронными интерфейсами USB-UART для ПК Автор: Андрей Шабронов Статья: Магнитометр на модуле USB-UART Дата публикации: журнал Современная Электроника 04 2020 Ссылка: https://www.soel.ru/magazines/PRINT/SoEl_2020-2pr/52/index.html#zoom=z Автор: Андрей Шабронов Статья: Тахометр для квадрокоптера Дата публикации: журнал Современная Электроника 08 2019 Ссылка: https://www.soel.ru/magazines/PRINT/SoEl_2019-8pr/56/index.html#zoom=z Автор: Андрей Шабронов Статья: Адаптер 1-Wire c использованием двух портов RS-485 и гальванической развязки Дата публикации: журнал Современная Электроника 07 2019 Ссылка: https://www.soel.ru/magazines/PRINT/SoEl_2019-7pr/68/index.html#zoom=z http://shabronov_s2.dyn-dns.ru/temp/uart_ik_tahometr_v1/test http://shabronov_s2.dyn-dns.ru/temp/uart_holl_analog_v1/test/ http://shabronov_s2.dyn-dns.ru/temp/uart_max6675_v1/test P.S. Андрей Шабронов: Применение интерфейса 1-Wire в радиоканале 433 МГц на модуле HC11 Дата публикации: журнал Современная Электроника 08 2020 Автор: Мищук Андрей. Статья: Заметки в блоге по применению Форт для программирования PIC контроллеров Дата публикации: 2016 - 2017 г. Ссылка: https://energy4all.ru/forth.html#211216 Содержание: Форт подобен Дао. Это Путь, и осознается он, когда ему следуешь. Построение систем. UART - MAX232 - COM/USB - Персональный компьютер. Форт. Анализ входного потока. Форт-Стек. Переменные. Алгоритм реализации variable. Вызовы форт-слов, стек возвратов. Определение новых слов. Условный оператор. Циклы. Как реализованы циклы. Сравнение скорости СИ/ФОРТ. Примеры. Выход из цикла. 1-Wire. Копилка. Изменено 15 ноября, 2020 пользователем Kopa Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
shabronov 0 18 апреля, 2021 Опубликовано 18 апреля, 2021 · Жалоба вариант1 вариант_2 сделали 11 штук штанг зимой проверяли. Все фигня т.к. аккумуляторы при -30 больше 5 дней "кирдык" Железо и программы без замечаний. Вариант_3 склад с зерном. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
shabronov 0 20 ноября, 2021 Опубликовано 20 ноября, 2021 · Жалоба К тематике программирование на forht. Вот еще мои некоторые публикации, где используетcя forth. Forth-ассемблер. Причина.Резко усилилась нагрузка на спец-микросхемы от "продажников" и "перепродажников": спец-микросхемы меняем на универсальные микроконтроллеры. Т.е. "снижение цены вопроса конечного изделия". 1. Замена DS2409 на 12F629 Тема опубликована в журнале «Соэл» 2021г N8-c22..26 (рисунки кликабельны,pdf) http://90.189.213.191:4422/doc_sh/toguchin_2020n/soel_2021_8_24_zamena/ 2. Четырёхканальный ретранслятор 1-Wire Тема опубликована в журнале «Соэл» 2021г N8-c28..31 (рисунки кликабельны,pdf) http://90.189.213.191:4422/doc_sh/toguchin_2020n/soel_2021_8_30_retrans/ Размышление по сложности понимания forth-assemlera. 1. На уровне 3-5 листов просто ассемблера как то терпимо. Но 6-10 листов уже появляются =тупые= ошибки повторения названий меток. или просто =смотришь в книгу - видишь фигу= Тут мотивация влияете, если это очень-очень денежный проект, то по простому .. каждую строчку проверяешь и проверяешь. Вообщем очень ..тупая работа... 2. Что дает forth-аssemler ? Он дает СВОБОДУ!. Метки - повторяй сколько хочешь. Конструкция программы создается "сверху-вниз" . Т.е. в принципе нельзя сделать синтаксических или орфографических ошибок. Все ошибки - в "целесоздании". Например, в цикл передачи 8 байт, циклом с косвенной адресацией. А потом смотрю, как совместить и режим с +5 вольт и режим с паразитным питанием? Начинаешь добавлять пред проверки, что бы уточнить выходные параметры. Т.е. убирается =тупизм=. Может конечно "слишком розово", но это так в программах, так и было. Основной цикл сделал за 1-2 часа и все работало. А потом где то неделю добавлял всякие "улучшательства" и "а может так еще проверить". и еще конечно алгоритм пакета. Пришлось перебрать несколько вариантов доступа к 2409, что бы было более менее "совпадимо" с исходным заменяемым элементом. Брал pdf 2409 и по нему делал аналог. Хотя можно было хоть какой свой вариант создать с нуля. 3. В "теле" программы есть исходники-архивы на Протеусе-7. Т.е. проверял модели и самое важное - Протеус-7 дает возможность создать hex-файл и прошить реальный PIC. Очень помогло при формировании hex-кода. В моей версии отказался от циклов =begin=until и =begin=while=repeat. Все циклы в командах аssemlera. А так же от условных переходов if=then Но конструкции создал. 4. Оформление подпрограмм выполнено обычным 2х проходным методом. Обычным словом : name <> < > ; Что это значит? Пп. при компиляции в код указываются с входным параметром 0 а при исполнении с параметром 1. 0 test_out_8n# ( 0 -- указывается что идет компиляция текста пп ) 1 test_out_8n# ( 1 -- указывается что используется подпрограмм и соответственно по ее назначению можно что то АКМ задать или в другие регистры ) Классический подход - это структура create does> Есть и минус. Надо соблюдать "вкладываемость" Если пп обращается к другой пп. а та еще к другой, то обязательно последовательность с низу в верх. Однако, Сделал контрольку проверки. Если не "соблюл", то выдается ошибка не правильное офоромление пп с указателем где. Так где 10-15 пп получается, и по "вкладываемости" 2-3 пп в пп. Всем успехов и здоровья! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
yes 7 22 ноября, 2021 Опубликовано 22 ноября, 2021 · Жалоба я когда хочу чего-то странного, то пишу на лиспе в emacs-е - лисп, по-моему, прочищает мозги получше форта а для практической применимости - всялся бы кто-нибудь и написал фортовый бэкенд для llvm (без оптимизации это вроде как не кажется супер сложным) фронтэнд вроде есть уже https://github.com/riywo/llforth Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
shabronov 0 22 ноября, 2021 Опубликовано 22 ноября, 2021 · Жалоба Уважаемый yes-Гуру (Если что по нику-неправильно - прошу извинить) Кратко по Вашему сообщению. 1. Информация и ссылки даны в этот форум, т.к. он поддерживает микроконтроллеры и может быть мое решение на форт-ассемблере кому-либо пригодиться. Может найду аналогичные решения. 2. Есть такое правило (наука синергетика) раз ты предложил, тебе это делать. По типу философии ЗССД вот адрес Вот объект где используется форт-ассеблер, адрес. Нет задачи "прочистить..." а в основном идет борьба за "цену вопроса ТЗ". Надеюсь донес глубину мысли. С уважением, Шабронов А.А. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
yes 7 22 ноября, 2021 Опубликовано 22 ноября, 2021 · Жалоба как-то очень непонятно вами было сформулировано - "чего хочется", если экономии - то форт выкинуть как можно быстрее и поставить какое-то стандартное железо - китайский ARM, например. а в ТЗ форта по-моему вообще не должно быть, даже если он в изделии будет. какое отношение имеет "объект" к электронике не понятно - там может и на реле с сельсинами быть управление и на обученном таджике - если там что-то не самодельное на ПЛИС или даже на рассыпухе - то что там за форт-процессор? тем более с таким "объектом" стоимость процессора за $1, на котором может исполняться С++ код, вообще не должна играть роль. за $10 (то есть без экономии) можно поставить какую-то железку на которой можно запустить интерпретатор форта (но по-моему это порочный путь) ------------------- если же есть какое-то готовое оборудование доставшиеся от прошлых цивилизаций - то что тут можно посоветовать ???? - используйте форт дальше, если работает, то зачем трогать ------------------ наука синергетика, наверно, штука хорошая, но пока я напишу тот бэкенд, объект на металлолом уже отправится - это 100% Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KPG 2 20 января, 2023 Опубликовано 20 января, 2023 (изменено) · Жалоба Может кому то будет интересен к прочтению такой топик. 🙂 Язык Forth - зачем нужен, что можно делать на нём? Есть и телеграм канал для интересующихся вопросами применения Форт: https://t.me/ruforth Quote [TF] Форт и общение фортеров 63 members, 23 online Обсуждение конкатенативных языков программирования и тематическое общение программистов. Форум: fforum.winglion.ru P.S. Для MSP430, STM32 есть и такой открытый Forth инструментарий VFX Forth Community editions Изменено 20 января, 2023 пользователем KPG Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KPG 2 25 ноября, 2023 Опубликовано 25 ноября, 2023 (изменено) · Жалоба On 11/22/2021 at 7:46 PM, yes said: я когда хочу чего-то странного, то пишу на лиспе в emacs-е - лисп, по-моему, прочищает мозги получше форта а для практической применимости - всялся бы кто-нибудь и написал фортовый бэкенд для llvm (без оптимизации это вроде как не кажется супер сложным) фронтэнд вроде есть уже https://github.com/riywo/llforth Armpit - проеект языка Sheme написанный на ARM ассемблере. Вот только Форт для Embedded народом вполне нормально воспринимается и используется в отличии от Лиспа с его "засилием" скобок. а кому интересны конкатенативные языки, то выбирает помимо Форта и другие варианты, как Factor ... или создаёт свой вариант Quackery (написан на Python) и решает задачи на нём с rosettacode.org P.S. А, по поводу связки Cи с Форт тоже экспериментировал с некоторыми вариантами (на базе LCC си компилятора), а помимо этого LLVM думаю, не очень заточен под оптимизацию Cи кода на 'абстрактный' Форт "процессор" и могут быть ньюансы как в созданной недавно теме Трансляторы Си в Форт Сам отдельно полученный вариант Форт кода можно оптимизировать с помощью разных методик и инструментов (к примеру есть проект по такому действу с использованием LibFirm FirmForth чем, конечно же, не исчерпывается круг возможных решений) Для Российского контроллера K1894 (приспособлен и для варианта поддержки Форт в системе команд) делали такое исследование-работу. Разработка компилятора для стековой процессорной архитектуры TF16 на основе LLVM (Труды ИСП РАН, том 33, вып. 5, 2021 г. // Trudy ISP RAN/Proc. ISP RAS, vol. 33, issue 5, 2021) Quote В первой версии компилятора архитектура TF16 рассматривалась как классическая регистровая архитектура, и сгенерированный код не использовал стековые возможности. Эта версия была относительно проста в разработке и служила точкой сравнения для второй версии компилятора. Во второй версии компилятора был разработан и реализован платформонезависимый алгоритм планирования команд c учётом особенностей стековых архитектур. При сравнении двух версий версия компилятора с поддержкой стековых возможностей генерирует код, который в среднем на 35.7% быстрее по времени выполнения и на 50.8% меньше по размеру, чем код, генерируемый версией компилятора без поддержки стековых возможностей. Разработанный алгоритм позволяет реализовать в компиляторе LLVM поддержку других стековых процессорных архитектур. Изменено 25 ноября, 2023 пользователем KPG Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться