Автор |
Сообщение |
|
|
Заголовок сообщения: |
Re: Announcing Mecrisp-Stellaris for ARM Cortex M |
|
|
Цитата: Из неофициальной документации описание Понятно. Не для всех камней. Да и в мелкие не влезет. Файл на 6663 строки.
[quote]Из неофициальной документации описание[/quote]Понятно. Не для всех камней. Да и в мелкие не влезет. Файл на 6663 строки.
|
|
|
|
Добавлено: Вт май 18, 2021 00:47 |
|
|
|
|
|
Заголовок сообщения: |
Re: Announcing Mecrisp-Stellaris for ARM Cortex M |
|
|
Sotnik писал(а): mecrisp-stellaris содержит svd2forth-v2 - что это такое? Чёт читаю, но никак не соображу с чем едят. Из неофициальной документации описание
[quote="Sotnik"]mecrisp-stellaris содержит [b]svd2forth-v2[/b] - что это такое? Чёт читаю, но никак не соображу с чем едят.[/quote]
[url=https://translate.google.com/translate?sl=auto&tl=ru&u=https://mecrisp-stellaris-folkdoc.sourceforge.io/svd2forth-v3.html]Из неофициальной документации описание[/url]
|
|
|
|
Добавлено: Пн май 17, 2021 23:37 |
|
|
|
|
|
Заголовок сообщения: |
Re: Announcing Mecrisp-Stellaris for ARM Cortex M |
|
|
mecrisp-stellaris содержит svd2forth-v2 - что это такое? Чёт читаю, но никак не соображу с чем едят.
mecrisp-stellaris содержит [b]svd2forth-v2[/b] - что это такое? Чёт читаю, но никак не соображу с чем едят.
|
|
|
|
Добавлено: Пн май 17, 2021 22:58 |
|
|
|
|
|
Заголовок сообщения: |
Re: Announcing Mecrisp-Stellaris for ARM Cortex M |
|
|
Sotnik писал(а): Спасибо! Порылся в ссылках, и нашёл много полезного! Запускал и собирал этот проект x49gp симулятора HP49 на базе QEMU под Ubuntu (на Github форки этого проекта тоже находятся) и устанавливал и выполнял программы в нём скомпилированные на HP-GCC из топиков этого форума(Была и мысль запустить его на железном ARM процессоре Pocket PC - Samsung S3C2410) Для этих калькуляторов есть и экспериментальные прошивки NewRPL https://sourceforge.net/projects/newrpl/files/P.S. Под Андроид (x49gp), вроде, на 4pda.to тоже есть. Под Андроид можно установить и симулятор Palm девайса.
[quote="Sotnik"]Спасибо! Порылся в ссылках, и нашёл много полезного![/quote] Запускал и собирал этот проект x49gp [url=https://sourceforge.net/p/x49gp/code/HEAD/tree/]симулятора HP49 на базе QEMU под Ubuntu[/url] (на Github форки этого проекта тоже находятся) и устанавливал и выполнял программы в нём скомпилированные на HP-GCC [url=http://leningrad.su/calc/cshowtopics.php?forumid=5]из топиков этого форума[/url] (Была и мысль запустить его на железном ARM процессоре Pocket PC - Samsung S3C2410) Для этих калькуляторов есть и экспериментальные прошивки NewRPL https://sourceforge.net/projects/newrpl/files/
P.S. Под Андроид (x49gp), вроде, на 4pda.to тоже есть. Под Андроид можно установить и симулятор Palm девайса. :)
|
|
|
|
Добавлено: Сб май 15, 2021 23:59 |
|
|
|
|
|
Заголовок сообщения: |
Re: Announcing Mecrisp-Stellaris for ARM Cortex M |
|
|
KPG писал(а): Научный калькулятор Swissmicros DM42 (основа STM32L476) P.S. Free42 есть для Android. Спасибо! Порылся в ссылках, и нашёл много полезного! Установил на смарт и комп - всё работает. Звонка из банка не дождался! Особенно понравилась библиотека готовых программ. https://thomasokken.com/free42/42progs/С такой документацией, основанной на примерах, разбираться одно удовольствие! Ещё: https://marketplace.visualstudio.com/items?itemName=JHeilingbrunner.vscode-hp42s-free42Free42 HP-42S Calculator Simulator 3.0.2 https://free42-hp-42s-calculator-simulator.ru.uptodown.com/windows
[quote="KPG"]Научный калькулятор Swissmicros DM42 (основа STM32L476) P.S. Free42 есть для Android.[/quote]Спасибо! Порылся в ссылках, и нашёл много полезного! Установил на смарт и комп - всё работает. Звонка из банка не дождался! ;) Особенно понравилась библиотека готовых программ. [url]https://thomasokken.com/free42/42progs/[/url] С такой документацией, основанной на примерах, разбираться одно удовольствие!
Ещё: [url]https://marketplace.visualstudio.com/items?itemName=JHeilingbrunner.vscode-hp42s-free42[/url]
Free42 HP-42S Calculator Simulator 3.0.2 [url]https://free42-hp-42s-calculator-simulator.ru.uptodown.com/windows[/url]
|
|
|
|
Добавлено: Сб май 15, 2021 22:18 |
|
|
|
|
|
Заголовок сообщения: |
Re: Announcing Mecrisp-Stellaris for ARM Cortex M |
|
|
Sotnik писал(а): Цитата: Научный калькулятор Swissmicros DM42 (основа STM32L476) Труда вложено много. Как считалка - очень даже эффектная штучка! С терминалки Форт позволит всё посчитать - слова да-а-авно определены! Кто скажет: Эмуляция на смартфоне возможна???И железяка помощнее, и не надо таскать доп железо. Похоже что это внятное решение. Там основная "часть" калькулятора доработанная Swissmicros версия Free42 (HP-42S Calculator Simulator) Проект Фортa уже в частном порядке кто то сделал на базе возможностей предоставляемых SDK P.S. Free42 есть для Android.
[quote="Sotnik"][quote]Научный калькулятор Swissmicros DM42 (основа STM32L476)[/quote] Труда вложено много. Как считалка - очень даже эффектная штучка! С терминалки Форт позволит всё посчитать - слова да-а-авно определены!
Кто скажет: [b]Эмуляция на смартфоне возможна???[/b] И железяка помощнее, и не надо таскать доп железо. Похоже что это внятное решение. :)[/quote] Там основная "часть" калькулятора доработанная Swissmicros версия Free42 (HP-42S Calculator Simulator) Проект Фортa уже в частном порядке кто то сделал на базе возможностей предоставляемых SDK
P.S. Free42 есть для Android.
|
|
|
|
Добавлено: Сб май 15, 2021 06:19 |
|
|
|
|
|
Заголовок сообщения: |
Re: Announcing Mecrisp-Stellaris for ARM Cortex M |
|
|
Цитата: Научный калькулятор Swissmicros DM42 (основа STM32L476) Труда вложено много. Как считалка - очень даже эффектная штучка! С терминалки Форт позволит всё посчитать - слова да-а-авно определены! Кто скажет: Эмуляция на смартфоне возможна???И железяка помощнее, и не надо таскать доп железо. Похоже что это внятное решение.
[quote]Научный калькулятор Swissmicros DM42 (основа STM32L476)[/quote] Труда вложено много. Как считалка - очень даже эффектная штучка! С терминалки Форт позволит всё посчитать - слова да-а-авно определены!
Кто скажет: [b]Эмуляция на смартфоне возможна???[/b] И железяка помощнее, и не надо таскать доп железо. Похоже что это внятное решение. :)
|
|
|
|
Добавлено: Сб май 15, 2021 01:26 |
|
|
|
|
|
Заголовок сообщения: |
Re: Announcing Mecrisp-Stellaris for ARM Cortex M |
|
|
KPG писал(а): 15Kb неплохой показатель для полнофункционального ядра системы. : Test_201234567896543 ; 32 байт : Te ; 16 байт : T ; 12 байт Да я же жалуюсь не на Форт, а на дохленький камень. Это F030 и F042 "плохие", а в остальных память уже фиг заполнишь. Это если без фанатизма, а только алгоритм. Цитата: При хранении имён слов в формате Radix-50 можно их существенно уменьшить. Можно. Но лучше выкидывать бы это при записи в камень. Похоже, придётся смириться. Цитата: Какие то примеры для STM32F746 Discovery Kit. на mecrisp-stellaris forth-stm32f746-discoСпасибо. Пороюсь. Цитата: Как Си коллега относится к использованию Forth в разрбатываемом ПО для MK? Я указал на преимущества. Он ужасно переживает, что зря прожил жизнь... Цитата: Для научного калькулятора Swissmicros DM42 (основа STM32L476) Труда вложено много. Как считалка - очень даже эффектная штучка! С терминалки Форт позволит всё посчитать - слова да-а-авно определены!
[quote="KPG"] 15Kb неплохой показатель для полнофункционального ядра системы. :)[/quote]: [b]Test_201234567896543[/b] ; 32 байт : [b]Te[/b] ; 16 байт : [b]T[/b] ; 12 байт Да я же жалуюсь не на Форт, а на дохленький камень. :)
Это F030 и F042 "плохие", а в остальных память уже фиг заполнишь. Это если без фанатизма, а только алгоритм. [quote] При хранении имён слов в формате Radix-50 можно их существенно уменьшить.[/quote] Можно. Но лучше выкидывать бы это при записи в камень. Похоже, придётся смириться. [quote] Какие то примеры для STM32F746 Discovery Kit. на mecrisp-stellaris [url=https://github.com/dsmcfarl/forth-stm32f746-disco]forth-stm32f746-disco[/url][/quote]Спасибо. Пороюсь. [quote] Как Си коллега относится к использованию Forth в разрбатываемом ПО для MK?[/quote] Я указал на преимущества. Он ужасно переживает, что зря прожил жизнь... :) [quote] Для научного калькулятора Swissmicros DM42 (основа STM32L476) [/quote] Труда вложено много. Как считалка - очень даже эффектная штучка! С терминалки Форт позволит всё посчитать - слова да-а-авно определены!
|
|
|
|
Добавлено: Вт май 11, 2021 20:51 |
|
|
|
|
|
Заголовок сообщения: |
Re: Announcing Mecrisp-Stellaris for ARM Cortex M |
|
|
Sotnik писал(а): Специфика этого Форта: основной размер проги - имена слов. 15Kb неплохой показатель для полнофункционального ядра системы. (Для Atmega 162, к примеру, что то убирал и приходил к цифре ~8Кб в amForth) При хранении имён слов в формате Radix-50 можно их существенно уменьшить. P.S. Если в целевом образе словаря сократить до минимума количество букв в словах, а при загрузке кода проводить преобразование имён Форт слов, то тоже некоторый выход в целях экономии флэш памяти для ядра системы. Наверное ещё, должен быть, как вариант, и режим кросс компиляции Форт кода с убиранием всего лишнего по итогу в сделанной программе. Какие то примеры для STM32F746 Discovery Kit. на mecrisp-stellaris forth-stm32f746-discoКак Си коллега относится к использованию Forth в разрбатываемом ПО для MK? Для научного калькулятора Swissmicros DM42 (основа STM32L476) тоже сделали вариант ForthПример Hello World для данного калькулятора для Firmware DMCP SDK
[quote="Sotnik"]Специфика этого Форта: основной размер проги - имена слов.[/quote] 15Kb неплохой показатель для полнофункционального ядра системы. :) (Для Atmega 162, к примеру, что то убирал и приходил к цифре ~8Кб в amForth) При хранении имён слов в формате Radix-50 можно их существенно уменьшить.
P.S. Если в целевом образе словаря сократить до минимума количество букв в словах, а при загрузке кода проводить преобразование имён Форт слов, то тоже некоторый выход в целях экономии флэш памяти для ядра системы. Наверное ещё, должен быть, как вариант, и режим кросс компиляции Форт кода с убиранием всего лишнего по итогу в сделанной программе.
Какие то примеры для STM32F746 Discovery Kit. на mecrisp-stellaris [url=https://github.com/dsmcfarl/forth-stm32f746-disco]forth-stm32f746-disco[/url]
Как Си коллега относится к использованию Forth в разрбатываемом ПО для MK?
Для научного калькулятора Swissmicros DM42 (основа STM32L476) [url=https://github.com/rverpillot/dmforth]тоже сделали вариант Forth[/url] [url=https://github.com/swissmicros/DMCP_SDK]Пример Hello World для данного калькулятора для Firmware DMCP SDK[/url]
|
|
|
|
Добавлено: Вт май 11, 2021 08:26 |
|
|
|
|
|
Заголовок сообщения: |
Re: Announcing Mecrisp-Stellaris for ARM Cortex M |
|
|
Сбацал девайс на STM32F030. 32К флеш и 4К SRAM. Словарь/ядро Mecrisp занимает 15К. Поизвращался, ужался, оптимизировал код - впритык моя прога влезла. Специфика этого Форта: основной размер проги - имена слов.
Mecrisp-Stellaris хорош поддержкой большой линейки ARM. У меня в проектах: F411, F429 Discovery, F407 Discovery, F103, F030, F042. Уже пришёл КИТ, но ещё ждёт трепанации: STM32H750VBT6 128K/1M 480 MHz 1MB SRAM/Flax SPI + TFT 0.96" 640x480 + OV2640 OV7725
Хочется с компа писать в ARM только код. Что делать?
Сбацал девайс на STM32F030. 32К флеш и 4К SRAM. Словарь/ядро Mecrisp занимает 15К. Поизвращался, ужался, оптимизировал код - впритык моя прога влезла. Специфика этого Форта: основной размер проги - имена слов.
Mecrisp-Stellaris хорош поддержкой большой линейки ARM. У меня в проектах: F411, F429 Discovery, F407 Discovery, F103, F030, F042. Уже пришёл КИТ, но ещё ждёт трепанации: [b]STM32H750VBT6[/b] 128K/1M [b]480 MHz[/b] 1MB SRAM/Flax SPI + TFT 0.96" 640x480 + OV2640 OV7725
Хочется с компа писать в ARM только код. Что делать?
|
|
|
|
Добавлено: Вт май 11, 2021 01:07 |
|
|
|
|
|
Заголовок сообщения: |
Re: Announcing Mecrisp-Stellaris for ARM Cortex M |
|
|
Total Vacuum писал(а): Поздравляю... Правильнее, естественно, фразу ['] hndlr irq-systick ! писать внутри какого-нибудь определения (например, внутри init-delay), т.к. ['] в режиме интерпретации работать не обязано, впрочем, в mecrisp'e и так работает... Так ведь "вылетов" и не было: запускался обработчик по умолчанию, адрес которого был записан в переменную irq-systick, этот обработчик и выводил "unhandled ..." Понятно. Обработчик берёт адрес из переменной irq-systick и передаёт по этому адр управление. Я затормозил... Смотрел на примеры из Си. Осталось разобраться как его усыпить по Sleep, чтоб не тарахтел впустую. У меня все слова вызываются через диспетчер по 1 ms прерыванию. Всё под контролем. Никакая самостоятельность не допускается!
[quote="Total Vacuum"]Поздравляю... :) Правильнее, естественно, фразу ['] hndlr irq-systick ! писать внутри какого-нибудь определения (например, внутри init-delay), т.к. ['] в режиме интерпретации работать не обязано, впрочем, в mecrisp'e и так работает... :) Так ведь "вылетов" и не было: запускался обработчик по умолчанию, адрес которого был записан в переменную irq-systick, этот обработчик и выводил "unhandled ..."[/quote] Понятно. Обработчик берёт адрес из переменной [b]irq-systick[/b] и передаёт по этому адр управление. Я затормозил... Смотрел на примеры из Си.
Осталось разобраться как его усыпить по [b]Sleep[/b], чтоб не тарахтел впустую. У меня все слова вызываются через диспетчер по 1 ms прерыванию. Всё под контролем. Никакая самостоятельность не допускается! :dmad;
|
|
|
|
Добавлено: Пн апр 05, 2021 16:32 |
|
|
|
|
|
Заголовок сообщения: |
Re: Announcing Mecrisp-Stellaris for ARM Cortex M |
|
|
Поздравляю... Правильнее, естественно, фразу ['] hndlr irq-systick ! писать внутри какого-нибудь определения (например, внутри init-delay), т.к. ['] в режиме интерпретации работать не обязано, впрочем, в mecrisp'e и так работает... Так ведь "вылетов" и не было: запускался обработчик по умолчанию, адрес которого был записан в переменную irq-systick, этот обработчик и выводил "unhandled ..."
Поздравляю... :) Правильнее, естественно, фразу ['] hndlr irq-systick ! писать внутри какого-нибудь определения (например, внутри init-delay), т.к. ['] в режиме интерпретации работать не обязано, впрочем, в mecrisp'e и так работает... :) Так ведь "вылетов" и не было: запускался обработчик по умолчанию, адрес которого был записан в переменную irq-systick, этот обработчик и выводил "unhandled ..."
|
|
|
|
Добавлено: Пн апр 05, 2021 15:40 |
|
|
|
|
|
Заголовок сообщения: |
Re: Announcing Mecrisp-Stellaris for ARM Cortex M |
|
|
Total Vacuum писал(а): Этот обработчик прерывания каких-то особенных действий при завершении не требует. Мне остаётся по завершении слова только Sleep до прерывания. Цитата: Попробуйте так: : hndlr 123 . ; \ новый обработчик ['] hndlr irq-systick ! $FFFFFF STKLOAD ! 7 STKCTRL ! Вместо "Unhandled" будет выводиться 123... Ура!!! Никаких "вылетов"!
[quote="Total Vacuum"]Этот обработчик прерывания каких-то особенных действий при завершении не требует.[/quote] Мне остаётся по завершении слова только Sleep до прерывания. [quote] Попробуйте так: : hndlr 123 . ; \ новый обработчик ['] hndlr irq-systick ! $FFFFFF STKLOAD ! 7 STKCTRL ! Вместо "Unhandled" будет выводиться 123...[/quote] Ура!!! Никаких "вылетов"! :pilot2;
|
|
|
|
Добавлено: Пн апр 05, 2021 15:30 |
|
|
|
|
|
Заголовок сообщения: |
Re: Announcing Mecrisp-Stellaris for ARM Cortex M |
|
|
Этот обработчик прерывания каких-то особенных действий при завершении не требует. Попробуйте так: : hndlr 123 . ; \ новый обработчик ['] hndlr irq-systick ! $FFFFFF STKLOAD ! 7 STKCTRL ! Вместо "Unhandled" будет выводиться 123...
Этот обработчик прерывания каких-то особенных действий при завершении не требует. Попробуйте так: : hndlr 123 . ; \ новый обработчик ['] hndlr irq-systick ! $FFFFFF STKLOAD ! 7 STKCTRL ! Вместо "Unhandled" будет выводиться 123...
|
|
|
|
Добавлено: Пн апр 05, 2021 14:51 |
|
|
|
|
|
Заголовок сообщения: |
Re: Announcing Mecrisp-Stellaris for ARM Cortex M |
|
|
$E000E010 constant NVIC_ST_CTRL_R $E000E014 constant NVIC_ST_RELOAD_R $E000E018 constant NVIC_ST_CURRENT_R \ слово irq-systick ( - adr ) оставляет адрес $20004FD0 \ есть в базовом наборе : Irq-systick ( - ) ; \ тут ваш код Код: : Init-Delay ( -- ) \ Start free running Systick Timer without Interrupts Начать запуск таймера Systick без прерываний 0 NVIC_ST_CTRL_R ! \ Disable SysTick during setup Отключить SysTick во время установки $00FFFFFF NVIC_ST_RELOAD_R ! \ Maximum reload value for 24 bit timer Максимальное значение перезагрузки для 24-битного таймера 0 NVIC_ST_CURRENT_R ! \ Any write to current clears it Любая запись в текущий очищает его %111 NVIC_ST_CTRL_R ! ; \ Enable SysTick with core clock Включить SysTick с частотой ядра \ Enable the systick interrupt. \ Включить прерывание от systick.
Вот что получилось. выскакивает раз в секунду: init-delay \ запустить таймер Unhandled Interrupt 0000000F ! Unhandled Interrupt 0000000F ! Unhandled Interrupt 0000000F ! Unhandled Interrupt 0000000F ! Unhandled Interrupt 0000000F ! И только через Reset... \ как должно завершаться прерывание ?
$E000E010 constant NVIC_ST_CTRL_R $E000E014 constant NVIC_ST_RELOAD_R $E000E018 constant NVIC_ST_CURRENT_R
\ слово [b]irq-systick[/b] ( - adr ) оставляет адрес $20004FD0 \ есть в базовом наборе : Irq-systick ( - ) ; \ тут ваш код
[code]: Init-Delay ( -- ) \ Start free running Systick Timer without Interrupts Начать запуск таймера Systick без прерываний 0 NVIC_ST_CTRL_R ! \ Disable SysTick during setup Отключить SysTick во время установки $00FFFFFF NVIC_ST_RELOAD_R ! \ Maximum reload value for 24 bit timer Максимальное значение перезагрузки для 24-битного таймера 0 NVIC_ST_CURRENT_R ! \ Any write to current clears it Любая запись в текущий очищает его %111 NVIC_ST_CTRL_R ! ; \ Enable SysTick with core clock Включить SysTick с частотой ядра \ Enable the systick interrupt. \ Включить прерывание от systick. [/code] Вот что получилось. выскакивает раз в секунду: [b]init-delay[/b] \ запустить таймер Unhandled Interrupt 0000000F ! Unhandled Interrupt 0000000F ! Unhandled Interrupt 0000000F ! Unhandled Interrupt 0000000F ! Unhandled Interrupt 0000000F ! И только через Reset... \ [b]как должно завершаться прерывание ?[/b]
|
|
|
|
Добавлено: Вс апр 04, 2021 18:44 |
|
|
|
|