|
А вот бы на FORTH написать..., ;-) |
|
|
|
 |
Ответов
|
May 13 2009, 05:40
|

Беспросветный оптимист
     
Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646

|
Почитал немного, ознакомился, скачал тинибут. Всё вроде бы хорошо, однако непонятно, как быть с прерываниями. Что-то в явном виде не нашёл нигде А без них ведь никак... Или может не с того начал? АВР вообще-то не моя тема, мне ближе МСП Вот кой-чего по МСП нашёл, но товарищи хотят 180 стерлингов фунтов за комплект
--------------------
Программирование делится на системное и бессистемное. ©Моё :) — а для кого-то БГ — это Bill Gilbert =)
|
|
|
|
|
May 13 2009, 06:48
|
Знающий
   
Группа: Участник
Сообщений: 598
Регистрация: 22-08-05
Пользователь №: 7 861

|
Цитата(MrYuran @ May 13 2009, 09:40)  Почитал немного, ознакомился, скачал тинибут. Всё вроде бы хорошо, однако непонятно, как быть с прерываниями. Что-то в явном виде не нашёл нигде Прерывания описываются через директиву ORG ( сами ветора для разных контроллеров описаны в конфигурационном файле начинающееся с INT ) Например в demoavr: Код here \ оставим на стеке текущий указатель в строящемся целевом образе Flash \ resolve interrupt vectors ----------------------------------------- 000 org assemble rjmp b_cold c; \ пропишем по 0 адресу вектор холодного старта INT_T0OV org assemble rjmp T0isr c; \ ... org \ востановим указатель по запомненному HERE со стека Цитата(MrYuran @ May 13 2009, 09:40)  Или может не с того начал? АВР вообще-то не моя тема, мне ближе МСП MSP430 в tinyboot не поддержан, но это не так сложно т.к. он близок к PDP-11. а под него уже есть адаптация  P.S. А что скачали - оригинальный дистрибутив или с сайта радиолюбителей версию только для Mega128? Есть некоторый "вольный" перевод документации из неё. Цитата(MrYuran @ May 13 2009, 09:40)  Вот кой-чего по МСП нашёл, но товарищи хотят 180 стерлингов фунтов за комплект Для MSP430 есть и свободные Форт разработки. P.S. Требуемую функциональнось Форта для MSP можно сделать своими силами.
|
|
|
|
|
May 13 2009, 07:16
|

Беспросветный оптимист
     
Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646

|
Цитата(Kopa @ May 13 2009, 10:48)  P.S. А что скачали - оригинальный дистрибутив или с сайта радиолюбителей версию только для Mega128? Есть некоторый "вольный" перевод документации из неё. Всё скачал, что только было. И оригинал, и мод мегу, и дополнения одного товарища, который форт ниасилил, зато приспособил под структурный ассемблер Цитата P.S. Требуемую функциональнось Форта для MSP можно сделать своими силами.  Это я уже понял, как глянул на исходник инлайн -ассемблера Однако, как всегда, хочется готовое что-то найти, чтобы не изобретать велосипед. Да и времени не так уж много. По работе образовался прогал, вот и развлекаюсь для общего развития. А в прерываниях как я понимаю, надо вручную сохранять весь контекст, ведь если прервали на полуслове, в регистрах может содержаться какая-то промежуточная информация.
--------------------
Программирование делится на системное и бессистемное. ©Моё :) — а для кого-то БГ — это Bill Gilbert =)
|
|
|
|
|
May 13 2009, 07:45
|
Знающий
   
Группа: Участник
Сообщений: 598
Регистрация: 22-08-05
Пользователь №: 7 861

|
Цитата(MrYuran @ May 13 2009, 10:16)  Однако, как всегда, хочется готовое что-то найти, чтобы не изобретать велосипед. Да и времени не так уж много. По работе образовался прогал, вот и развлекаюсь для общего развития. В Форте, часто, разработчики создают "свои велосипеды" из своего понимания необходимости  Есть ещё коммерческие VFX и SwiftForth, но для них не под все контроллеры имеются ключики, да и держать свою Форт систему под полным контролем надёжнее. Для MSP можно взять разные варианты кросс-компиляции ( есть с использованием SPF4 создания hex кодов для проекта в IAR ссылка на Форт для разных контроллеров была выше) Цитата(MrYuran @ May 13 2009, 10:16)  А в прерываниях как я понимаю, надо вручную сохранять весь контекст, ведь если прервали на полуслове, в регистрах может содержаться какая-то промежуточная информация. Скорее всего, только общие регистры временного использования ( см распределение регистров ), а с другими обращаться "внимательней". Примитивы Форта, в основном, используют 2-3,4 регистра для своей операции. Под верхушку стека резервируют один регистр - остальная часть стека в памяти.
|
|
|
|
|
May 13 2009, 09:32
|
Знающий
   
Группа: Участник
Сообщений: 598
Регистрация: 22-08-05
Пользователь №: 7 861

|
Цитата(IgorKossak @ May 13 2009, 13:06)  Это если не подключать тяжёлых словарей типа плавающей точки и вычислений с длинными числами. Но это опять же зависит от функции, выполняемой в прерывании. Плавающая точка может быть реализована и через примитивы Форта ( эффективно это или нет не знаю, но в FF оно есть ) + глобальные переменные если не использовать локальных. а использование прерываний можно организовать по разному. P.S. Какое продвижение в использовании Форта было у Вас и можно ли увидеть эти наработки?
|
|
|
|
|
May 13 2009, 09:50
|

Беспросветный оптимист
     
Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646

|
Цитата(Kopa @ May 13 2009, 13:32)  Плавающая точка может быть реализована и через примитивы Форта ( эффективно это или нет не знаю, но в FF оно есть ) + глобальные переменные если не использовать локальных. Вчера полдня читал книжку, в которой плавающая точка гневно осуждается, а вместо неё рекомендуется применять операцию масштабирования */ и фиксированную двоичную точку. А мы как-то не задумываясь лепим плавающую математику где ни попадя... Притом что недавно попались результаты тетсбенчей - плавающее деление на МСП выполняется что-то около 900 мкс (!) Целочисленное - на порядок быстрее
--------------------
Программирование делится на системное и бессистемное. ©Моё :) — а для кого-то БГ — это Bill Gilbert =)
|
|
|
|
|
May 14 2009, 17:11
|
Частый гость
 
Группа: Участник
Сообщений: 153
Регистрация: 16-06-07
Из: Армения
Пользователь №: 28 476

|
Цитата(MrYuran @ May 13 2009, 14:50)  Вчера полдня читал книжку, в которой плавающая точка гневно осуждается, а вместо неё рекомендуется применять операцию масштабирования */ и фиксированную двоичную точку. А что это за книжка?
|
|
|
|
|
May 15 2009, 03:27
|
Знающий
   
Группа: Участник
Сообщений: 598
Регистрация: 22-08-05
Пользователь №: 7 861

|
Цитата(Арташес @ May 14 2009, 20:11)  А что это за книжка? Про использование фиксированной точки? Скорее всего Броуди " Введение в Форт" ( там ещё приведена небольшая таблица некоторых математических констант для использования с операцией масштабирования */ ) Цитата(MrYuran @ May 14 2009, 19:34)  И как это осуществить? Очень интересное решение, особенно на макете. вместо того чтобы таскать туда-сюда для перепрошивки, взял, воткнул флешку и посмотрел результат. Похожая методика "Последовательное проектирование и отладка микропроцессорных систем управления " Один из вариантов использовать сервис байт-кодов с исполнением из ОЗУ ( возможно придётся немного подправить систему) В tinyboot есть возможности по исполнению кода через терминальный канал, и загрузка предкомпилированного байт-кода к основному коду во flash. ( возможность стирания кода во flash тоже должна существовать ) т.к. при создании ядра есть возможность указать создания кода с возможностью векторизации ( хранение в таблице ОЗУ адресов примитивов и инициализация её при старте) директивы static и dynamic то можно по мере необходимиости в Runtime подменять адреса переходов или наполнять заданное слово необходимым содержанием  Интересная статья по похожему применеию Д.В.Рагозин "ЭКОНОМИЧНЫЙ ИНТЕРПРЕТАТОР ДЛЯ УЗЛОВ СЕНСОРНОЙ СЕТИ" Цитата(IgorKossak @ May 14 2009, 22:21)  Я имел в виду внешнюю параллельную память на шине МК, а не USB flash. Если в контроллере есть USB, то по его каналу тоже можно организовать сервис "удалённого" исполнения и загрузки команд
Сообщение отредактировал Kopa - May 15 2009, 03:51
|
|
|
|
Сообщений в этой теме
RodionGork А вот бы на FORTH написать... Apr 16 2009, 04:55 IgorKossak Работал в своё время с Forth и это к сожалению (ил... Apr 16 2009, 07:32 Kopa Цитата(RodionGork @ Apr 16 2009, 07:55) К... May 4 2009, 05:52 =AK= Цитата(Kopa @ May 4 2009, 15:22) Если в а... May 5 2009, 01:49  Kopa Цитата(=AK= @ May 5 2009, 04:49) Посмотри... May 5 2009, 03:19 ukpyr а в чем преимущество конструкции 1 1 + перед 1+1 ... May 4 2009, 07:01 Kopa Цитата(ukpyr @ May 4 2009, 11:01) а в чем... May 4 2009, 07:26 ukpyr Цитатаосновное понятие в Форт языке СЛОВОугу, а в... May 4 2009, 08:05 Kopa Цитата(ukpyr @ May 4 2009, 12:05) угу, а ... May 4 2009, 08:53 Microwatt Ребята, давно я отошел от программирования, но есл... May 4 2009, 12:46 Kopa Цитата(Microwatt @ May 4 2009, 15:46) Реб... May 5 2009, 04:27  Microwatt Цитата(Kopa @ May 5 2009, 07:27) Интересн... May 5 2009, 10:46   Kopa Цитата(Microwatt @ May 5 2009, 13:46) Хм.... May 5 2009, 11:27    Kopa Цитата(Kopa @ May 5 2009, 15:27) В SeaFor... May 12 2009, 11:10 ukpyr ЦитатаНигде больше вся программа не сводится к одн... May 4 2009, 13:23 Microwatt Цитата(ukpyr @ May 4 2009, 16:23) ?
Кодin... May 4 2009, 20:11 ukpyr ЦитатаВо всяком случае, там плавающей запятой нет.... May 5 2009, 11:38 Kopa Цитата(ukpyr @ May 5 2009, 15:38) пока чт... May 5 2009, 12:00 Kopa Цитата(ukpyr @ May 5 2009, 14:38) пока чт... May 21 2009, 04:23  MrYuran Цитата(Kopa @ May 21 2009, 08:23) Програм... May 21 2009, 04:36   Арташес Цитата(MrYuran @ May 21 2009, 09:36) Спас... May 21 2009, 19:50    Kopa Цитата(Арташес @ May 21 2009, 22:50) Вот ... May 22 2009, 05:02     Арташес Цитата(Kopa @ May 22 2009, 10:02) Это сог... May 22 2009, 21:39      Kopa Цитата(Арташес @ May 23 2009, 01:39) Не п... May 25 2009, 03:06       Арташес Цитата(Kopa @ May 25 2009, 08:06) Источни... May 25 2009, 14:06        Kopa Цитата(Арташес @ May 25 2009, 17:06) По э... May 27 2009, 09:40 ukpyr в книге Семенова http://umup.narod.ru/1054.zip в п... May 5 2009, 14:35 Kopa Цитата(ukpyr @ May 5 2009, 17:35) в книге... May 6 2009, 03:15  Kopa Цитата(Kopa @ May 6 2009, 06:15) ? Может,... May 7 2009, 03:37 IgorKossak Пользовался в своё время TinyBoot, впечатления сло... May 7 2009, 08:03 Kopa Цитата(IgorKossak @ May 7 2009, 11:03) По... May 7 2009, 10:29  MrYuran Цитата(Kopa @ May 7 2009, 14:29) P.S. При... May 7 2009, 10:54   Kopa Цитата(MrYuran @ May 7 2009, 13:54) Ну а ... May 7 2009, 11:46    Microwatt Цитата(Kopa @ May 7 2009, 14:46) Ну и шут... May 7 2009, 12:15   =AK= Цитата(MrYuran @ May 7 2009, 20:24) Паска... May 7 2009, 14:22 ukpyr а как организуется стек данных любого типа ? может... May 7 2009, 12:27 Kopa Цитата(ukpyr @ May 7 2009, 15:27) а как о... May 8 2009, 04:35  =AK= Цитата(Kopa @ May 8 2009, 14:05) Часто со... May 8 2009, 05:54   Kopa Цитата(=AK= @ May 8 2009, 08:54) Это когд... May 8 2009, 08:12 MrYuran Прям заинтриговали...
Сразу вспомнился монитор ZX ... May 8 2009, 04:56 Kopa Цитата(MrYuran @ May 8 2009, 07:56) Прям ... May 8 2009, 05:38 MrYuran А как там с объектноориентированностью и прочими а... May 8 2009, 06:05 Kopa Цитата(MrYuran @ May 8 2009, 09:05) А как... May 8 2009, 07:50 IgorKossak Цитата(MrYuran @ May 8 2009, 09:05) А как... May 8 2009, 08:09         Арташес Цитата(Kopa @ May 15 2009, 08:27) Про исп... May 15 2009, 20:00      IgorKossak Цитата(Kopa @ May 13 2009, 12:32) P.S. Ка... May 13 2009, 10:22       Kopa Цитата(IgorKossak @ May 13 2009, 14:22) Я... May 13 2009, 11:11        IgorKossak Цитата(Kopa @ May 13 2009, 14:11) В TinyB... May 14 2009, 14:27         mOleg на всякий случай кину ссылочку на статьи, посвящен... May 14 2009, 16:06         MrYuran Цитата(IgorKossak @ May 14 2009, 18:27) P... May 14 2009, 16:34          IgorKossak Цитата(MrYuran @ May 14 2009, 19:34) И ка... May 14 2009, 19:21           MrYuran Цитата(IgorKossak @ May 14 2009, 23:21) Я... May 15 2009, 04:41   mak4444 Цитата(MrYuran @ May 13 2009, 11:16) Цита... May 14 2009, 19:12 Rst7 ЦитатаЦелочисленное - на порядок быстрее
К сожале... May 13 2009, 10:09 MrYuran А файлы описания камней тоже все перепахивать прид... May 13 2009, 11:29 Kopa Цитата(MrYuran @ May 13 2009, 15:29) А фа... May 13 2009, 11:39 MrYuran Блин, вот же зараза...
Я теперь по ночам спать спо... May 14 2009, 09:57 Kopa Цитата(MrYuran @ May 14 2009, 12:57) Блин... May 14 2009, 10:07  MrYuran Цитата(Kopa @ May 14 2009, 14:07) Приятно... May 14 2009, 13:12   Microwatt Цитата(MrYuran @ May 14 2009, 16:12) Вот ... May 16 2009, 00:08   Kopa Цитата(MrYuran @ May 14 2009, 17:12) Чему... May 18 2009, 04:34    Русланчик Цитата(Kopa @ May 18 2009, 10:34) Учебн... May 18 2009, 17:28 chu ЦитатаВот кой-чего по МСП нашёл, но товарищи хотят... May 14 2009, 10:16 MrYuran Цитата(Microwatt @ May 16 2009, 04:08) Кр... May 18 2009, 05:25 Kopa Цитата(MrYuran @ May 18 2009, 09:25) ... ... May 18 2009, 05:37 MrYuran Ну ладно, это всё лирические отступления...
У мен... May 18 2009, 05:55 Kopa Цитата(MrYuran @ May 18 2009, 09:55) А ес... May 18 2009, 06:08  MrYuran Цитата(Kopa @ May 18 2009, 10:08) Ничего ... May 18 2009, 06:33   Kopa Цитата(MrYuran @ May 18 2009, 09:33) Я бе... May 18 2009, 07:29    MrYuran Цитата(Kopa @ May 18 2009, 11:29) ( напри... May 18 2009, 08:06     Kopa Цитата(MrYuran @ May 18 2009, 11:06) FORG... May 18 2009, 08:27     Kopa Цитата(MrYuran @ May 18 2009, 12:06) Ну, ... May 18 2009, 09:59     Microwatt Цитата(MrYuran @ May 18 2009, 11:06) FORG... May 18 2009, 20:22      Kopa Цитата(Microwatt @ May 19 2009, 00:22) Че... May 19 2009, 04:31 MrYuran Thinking Forth есть в нормальном виде? (что-нибудь... May 22 2009, 07:01 Kopa Цитата(MrYuran @ May 22 2009, 11:01) Thin... May 22 2009, 07:32  MrYuran Цитата(Kopa @ May 22 2009, 11:32) P.S. От... May 22 2009, 07:48   Kopa Цитата(MrYuran @ May 22 2009, 11:48) Но и... May 22 2009, 08:00 chu ВИРТУАЛЬНАЯ ФОРТ МАШИНА ДЛЯ AVR32
http://fforum.w... May 25 2009, 05:17 IgorKossak Интерес и предложения возникают из необходимости и... May 27 2009, 10:42 Kopa Цитата(IgorKossak @ May 27 2009, 13:42) И... May 27 2009, 11:35 ukpyr по моему, возможности и крутость Форта сильно преу... May 27 2009, 11:06 Kopa Цитата(ukpyr @ May 27 2009, 14:06) по мое... May 27 2009, 12:29  MrYuran Цитата(Kopa @ May 27 2009, 16:29) Интерак... May 27 2009, 12:37 IgorKossak Я имел виду следующее.
Нет тем (или их очень мало)... May 27 2009, 11:57 ukpyr ЦитатаСкорее нет ограничения по контролю программи... May 27 2009, 12:38 Kopa Цитата(ukpyr @ May 27 2009, 15:38) ну нап... May 27 2009, 13:09  MrYuran Цитата(Kopa @ May 27 2009, 16:59) Какой в... May 27 2009, 13:14   Kopa Цитата(MrYuran @ May 27 2009, 16:14) Да в... May 27 2009, 13:30 forever failure Уважаемые участники, а приведите плз., кто владеет... May 28 2009, 07:36
3 страниц
1 2 3 >
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|