-
- Резюме. Всем откликнувшимся спасибо. Новые инструменты буду юзать.
Но пока и они не решили проблему. Приведу фрагмент программы. В
нужной строке векторов прерывания второй и третий таймеры -
нормально. Ацп- нулевая реакция (то есть число 200). Я бы привёл и
фрагмент порождаемого кода, но среды (обе) не позволяют копировать
фрагмент. А если сохранить ptogramm memory в txt файл, он занимает
300 Мега Байт! Kpoк(743 знак., 17.11.2020 13:07)
- Вообще то нужно быть внимательнее... ))) Нет такой метки вектора в
скрипте линкера __ADC1Interrupt. Есть __AD1Interrupt. :)))) - my504(17.11.2020 17:17)
- БЛЯ!!! - Kpoк(17.11.2020 17:53)
- Кстати, скопировать можно было из текстового дизасма. )))) Обращайтесь, есличо... - my504(17.11.2020 17:57)
- +1. Я уже эти имена вчера озвучивал --> - MBedder(17.11.2020 17:18, ссылка)
- Кому пришло в голову их переименовывать? - Kpoк(18.11.2020 00:57)
- Извините, но это феерично. Вы обнаруживаете, что вектора нет, и не
догадываетесь проверить скрипт линкера, который вставляет этот
вектор. Как в старом анекдоте про прапорщика и обезьяну. "Чё тут
думать? Трясти надо!"(с) Может не стоит обвинять кого нибудь, кроме
себя? Глядишь, дело на лад пойдет... - my504(18.11.2020 05:15)
- Эээ. Один из законов Мэрфи гласит, что людям свойственно не видеть
именно свои ошибки, поэтому здесь я в своём праве :-). Тем более я
уже дал оценку своей невнимательности в предыдущем тексте. Но Вы-то
видимо с лёгкостью объясните зачем индийским писателям понадобилось
изменять имя функции в одном знаке (из пятнадцати!). Не
_новая_функция_прерывания, не _другая_функция_прерывания, а просто
_фунция_прерывания. С первого раза заметили ошибку? Усложняем
задачу. Потрахайтесь Kpoк(235 знак., 18.11.2020 10:50)
- Любые манипуляции с проектом имеют некоторую природу. Если
понимаешь эту природу, поиск причин будет быстрым и простым. Зачем
трахаться с симулятором? Не работает корректно - хер с ним. У меня
инструкция mul.uu не вызывала проблем. Объясните характер ошибки.
Что не так в симуляторе с этой инструкцией? - my504(18.11.2020 13:52)
- Так. Про прерывания закрыли тему. Теперь про mul.uu На её результат
в симуляторе оказывает влияние состояние бита CORCON,#0. А в жизни
- не влияет. Про симулятор - ну нравица мне с ним трахаца. Многие
вещи проще понять на бумаге, чем в железе. Если это линия партии
такая - не трахайтесь с симулятором - напишите это где-то на
заборе, чтоб мы не заморачивались. А то ведь в "справочнике
эмигранта с 33fj на 33ep" ни одна обсуждаемая мной подъёбка указана
не была. - Kpoк(18.11.2020 14:33)
- По поводу симулятора и умножения можно заслать тикет в поддержку. - my504(18.11.2020 16:23)
- Как Генерал в Параллелс? - Kpoк(18.11.2020 16:25)
- По поводу симулятора и умножения можно заслать тикет в поддержку. - my504(18.11.2020 16:23)
- Так. Про прерывания закрыли тему. Теперь про mul.uu На её результат
в симуляторе оказывает влияние состояние бита CORCON,#0. А в жизни
- не влияет. Про симулятор - ну нравица мне с ним трахаца. Многие
вещи проще понять на бумаге, чем в железе. Если это линия партии
такая - не трахайтесь с симулятором - напишите это где-то на
заборе, чтоб мы не заморачивались. А то ведь в "справочнике
эмигранта с 33fj на 33ep" ни одна обсуждаемая мной подъёбка указана
не была. - Kpoк(18.11.2020 14:33)
- Симулятор - та еще глюкарня, не надо на него рассчитывать. У тебя
есть SNAP - его и пользуй - MBedder(18.11.2020 11:04)
- Вот понадобилось мне синтезировать синус, его Снапом пошагово
проверять всю таблицу? - Kpoк(18.11.2020 15:46)
- А в чем смысл проверки таблицы? Разве таблица не рассчитана
дотогокак? Кстати, вы в курсе, что psv доступ в 33E и 33C далеко не
1 машинный цикл как в 33F? Это очень существенный нюанс, требующий
частенько создания копий таблиц в ОЗУ. - my504(18.11.2020 16:26)
- 1) Это я её рассчитал, и хочу проверить, как оно воспринимается процессором. 1а) Разумеется, не чистая таблица, а таблица с аппроксимацией 1б) Синус - это для красного словца. Его я рассчитываю с помощью ДСП, пока всё норм. Но надо было проиллюстрировать неприемлемость встроенных отладчиков для некоторых фрагментов программ. 2) Да, в курсе, спасибо. Так же как и возврат из подпрограммы замедлился, и работа с портами. - Kpoк(18.11.2020 16:40)
- Выведи на 1 вывод UART Tx. Я для отладки лил в камень и получал обратно до полутора мегабит UART-данных, чтобы проверять работу фильтров и алгоритма, в частности, расходомеров. Nikolay_Po(40 знак., 18.11.2020 16:01 - 16:04)
- А в чем смысл проверки таблицы? Разве таблица не рассчитана
дотогокак? Кстати, вы в курсе, что psv доступ в 33E и 33C далеко не
1 машинный цикл как в 33F? Это очень существенный нюанс, требующий
частенько создания копий таблиц в ОЗУ. - my504(18.11.2020 16:26)
- Вот понадобилось мне синтезировать синус, его Снапом пошагово
проверять всю таблицу? - Kpoк(18.11.2020 15:46)
- Любые манипуляции с проектом имеют некоторую природу. Если
понимаешь эту природу, поиск причин будет быстрым и простым. Зачем
трахаться с симулятором? Не работает корректно - хер с ним. У меня
инструкция mul.uu не вызывала проблем. Объясните характер ошибки.
Что не так в симуляторе с этой инструкцией? - my504(18.11.2020 13:52)
- Эээ. Один из законов Мэрфи гласит, что людям свойственно не видеть
именно свои ошибки, поэтому здесь я в своём праве :-). Тем более я
уже дал оценку своей невнимательности в предыдущем тексте. Но Вы-то
видимо с лёгкостью объясните зачем индийским писателям понадобилось
изменять имя функции в одном знаке (из пятнадцати!). Не
_новая_функция_прерывания, не _другая_функция_прерывания, а просто
_фунция_прерывания. С первого раза заметили ошибку? Усложняем
задачу. Потрахайтесь Kpoк(235 знак., 18.11.2020 10:50)
- Извините, но это феерично. Вы обнаруживаете, что вектора нет, и не
догадываетесь проверить скрипт линкера, который вставляет этот
вектор. Как в старом анекдоте про прапорщика и обезьяну. "Чё тут
думать? Трясти надо!"(с) Может не стоит обвинять кого нибудь, кроме
себя? Глядишь, дело на лад пойдет... - my504(18.11.2020 05:15)
- Кому пришло в голову их переименовывать? - Kpoк(18.11.2020 00:57)
- БЛЯ!!! - Kpoк(17.11.2020 17:53)
- Вообще то нужно быть внимательнее... ))) Нет такой метки вектора в
скрипте линкера __ADC1Interrupt. Есть __AD1Interrupt. :)))) - my504(17.11.2020 17:17)
- Ничего особенного, если речь идет об АЦП со счетверенным УВХ.
Рекомендую распечатать структурную схему АЦП модуля из даташита и
цветными фломастерами обозначить на ней необходимую коммутацию.
Сложность зависит от задачи и необходимости включить ОУ. - my504(16.11.2020 17:27)
- Не-не. Без экзотики. Переношу проект с пик33ф708. Проблема с прерываниями - Kpoк(16.11.2020 17:47)
- Я. Спрашивай. - MBedder(16.11.2020 16:37)
- 1) Вектор прерывания. МПЛАБ 8.92 не знает его. При симуляции просто
не попадает куда надо, при реальной работе проц вылетает на хрен.
Дописывал вектор вручную. Вылетать перестало, но действий никаких
не делает. 2) Ну в общем оно не так уж и надо. Результаты в
ADC1BUF0 есть. Но будет ли работать с ДМА при таких раскладах? - Kpoк(16.11.2020 17:44)
- Я на dsPIC-ах симулятором в дебаге реального времени не пользуюсь.
В железе все работает как надо, с ДМА, в том числе. Ну и 8.92 пора
уже похоронить. А компилятор какой версии? - my504(16.11.2020 17:59)
- Компилятор - бесовское порождение (вариант - индийских
программистов). Чистый ассемблер. Что до МПЛАБа, то с ростом
индекса у него растёт количество косяков. - Kpoк(16.11.2020 18:06)
- MBedder уже все сказал, но я добавлю. Работа на 8-ке - старческий
маразм. Это я как пенсионер (работающий, правда) говорю. Тупо
маразм. Даже просто редактор в Х на порядок удобнее. Даже если не
брать в расчет, что я перешел на 4-ый пиккит, которого 8-ка
отродясь не щупала. Кстати, я тоже на 16-битниках Микрочипа пишу
только на АСМе. - my504(16.11.2020 21:34)
- согласен, в 8-ке редактор дерьмовый но и в Х-ах не намного лучше. я пользую внешний Npp добавив в него синтаксис ассемблера pic24 m16(1 знак., 17.11.2020 19:32, картинка)
- Первые версии МПЛАБ-ХЭ отбили охоту, а сейчас, как обычно - прибор
вчера сдавать надо. Может быть Х-ка после дрессировки
продемонстрирует высокие качества эргономики, но тупо некогда её
уговаривать. Выглядит чудовищно, прямо запах ИАРа в комнате
появляется, когда я её запускаю. - Kpoк(16.11.2020 22:12)
- Ничего там чудовищного нет. Достаточно один раз создать проект, а
далее все пойдет как по маслу. Цветной код и коллапсайдеры - это
очень удобно, особенно в большом проекте. Запускается действительно
несколько дольше восьмерки, но, черт возьми, я лучше немного
подожду, но на унылый редактор 8-ки не вернусь. Ну разве только в
самых старых проектах, если потребуется их поддержка и лень будет
перетаскивать в Х. - my504(16.11.2020 22:18)
- Унылый редактор был на машине МИР-2, на ЕС-1022 тоже. - Kpoк(16.11.2020 22:26)
- MPLAB-X всасывает проекты от 8ки. Просто создает рядом
поддирректорию с кучкой файлов проекта. Исходники не трогает.
Ощущение что всегда сможешь вернуться на 8ку - оно греет, придает
уверенности. =:] - RxTx(16.11.2020 23:08)
- А как сделать, чтоб русские комментарии выглядели как русские, а не
как корейские? - Kpoк(16.11.2020 23:38)
- В догон. Что бы и впредь по дефолту была нужная кодировка, следует
прогуляться по Tools-Options-Embedded-Default Charset. Примерно там
же, но в другом переулке про цвета, фонты и разные прочие шняги
СРЕДЫ, а не проекта... - my504(17.11.2020 04:58)
- Да, я обратил внимание, для путешествия по вкладышам МПЛАБа новичку
нужен свой Вергилий. - Kpoк(17.11.2020 13:11)
- На самом деле есть две основных настройки - проект и среда. Остальное опционально. - my504(17.11.2020 17:09)
- Да, я обратил внимание, для путешествия по вкладышам МПЛАБа новичку
нужен свой Вергилий. - Kpoк(17.11.2020 13:11)
- Только не вздумай сохранять файлы кода из Mplab-X, я надеюсь ты забэкапился. Иначе русским комментариям в коде конец, как это у меня было. RxTx(255 знак., 17.11.2020 00:38, картинка)
- Писать их по-английски :)) - MBedder(16.11.2020 23:49)
- Похоже. В редакторе фонтов всякой херни полно кроме русских шрифтов. - Kpoк(17.11.2020 00:14)
- // Spasibo mse homjak(3 знак., 17.11.2020 00:14)
- /* Nah */ :)) - MBedder(17.11.2020 00:36)
- В догон. Что бы и впредь по дефолту была нужная кодировка, следует
прогуляться по Tools-Options-Embedded-Default Charset. Примерно там
же, но в другом переулке про цвета, фонты и разные прочие шняги
СРЕДЫ, а не проекта... - my504(17.11.2020 04:58)
- Щас проверю - Kpoк(16.11.2020 23:11)
- А как сделать, чтоб русские комментарии выглядели как русские, а не
как корейские? - Kpoк(16.11.2020 23:38)
- MPLAB-X всасывает проекты от 8ки. Просто создает рядом
поддирректорию с кучкой файлов проекта. Исходники не трогает.
Ощущение что всегда сможешь вернуться на 8ку - оно греет, придает
уверенности. =:] - RxTx(16.11.2020 23:08)
- Унылый редактор был на машине МИР-2, на ЕС-1022 тоже. - Kpoк(16.11.2020 22:26)
- Ничего там чудовищного нет. Достаточно один раз создать проект, а
далее все пойдет как по маслу. Цветной код и коллапсайдеры - это
очень удобно, особенно в большом проекте. Запускается действительно
несколько дольше восьмерки, но, черт возьми, я лучше немного
подожду, но на унылый редактор 8-ки не вернусь. Ну разве только в
самых старых проектах, если потребуется их поддержка и лень будет
перетаскивать в Х. - my504(16.11.2020 22:18)
- Ассемблер же у тебя взят от компилятора - значит, есть и доки,
найди файл своего dsPIC'а в %XC16dir%\docs\vector_docs\ - там все
имена векторов, конкретно для АЦП - это _AD1Interrupt и
_AD2Interrupt (для АСМ - с двойным подчеркиванием) - MBedder(16.11.2020 18:22)
- Эти имена приведены в файле *.gld Похожий глюк уже бывал, когда они
с одним процем поставляли кривой файл. Пришлось его переписать (две
строчки). А здесь реально тупит. Приходится перед каждым
программированием, смотреть, куда легло прерывание и дописывать его
вручную. - Kpoк(16.11.2020 18:33)
- Полное название МК можно узнать? - my504(16.11.2020 21:37)
- конечно. dspic33ep256mu806 - Kpoк(16.11.2020 22:06)
- Лол. Это мой камень. - RxTx(16.11.2020 22:10)
- Это всеобщий камень. Разумное сочетание опций. Вся моя критика -
что он не похож на fj камни там, где этого совсем не ожидаешь. - Kpoк(16.11.2020 22:14)
- А я год назад апгрейднул один прибор (ты у меня в лаборатории его
вроде видел - с OLED-дисплеем, в бело-бирюзовом корпусе) с 256MU806
на 512MU810, в результате чего удалось добавить функционала и
каналов. На 256MU806 сижу уже лет 10 - MBedder(16.11.2020 23:00)
- Ну с 64-ногой на 100-ногую перебраться - это не совсем проблема.
Хуже, когда внезапно (после получения из Резонита) выясняется, что
переназначаемые ноги не все работают туда-сюда. - Kpoк(16.11.2020 23:16)
- В 33С "проблема" RPI отсутствует. Их выпилили. Остались только RP. - my504(17.11.2020 05:01)
- Это ты на RTFM наступил, видать - что ж, иногда полезно, хоть и
досадно :)) - MBedder(16.11.2020 23:26)
- Читаю их, когда ничего другое уже не помогает :-) - Kpoк(16.11.2020 23:39)
- Ну с 64-ногой на 100-ногую перебраться - это не совсем проблема.
Хуже, когда внезапно (после получения из Резонита) выясняется, что
переназначаемые ноги не все работают туда-сюда. - Kpoк(16.11.2020 23:16)
- А я год назад апгрейднул один прибор (ты у меня в лаборатории его
вроде видел - с OLED-дисплеем, в бело-бирюзовом корпусе) с 256MU806
на 512MU810, в результате чего удалось добавить функционала и
каналов. На 256MU806 сижу уже лет 10 - MBedder(16.11.2020 23:00)
- Это всеобщий камень. Разумное сочетание опций. Вся моя критика -
что он не похож на fj камни там, где этого совсем не ожидаешь. - Kpoк(16.11.2020 22:14)
- Лол. Это мой камень. - RxTx(16.11.2020 22:10)
- конечно. dspic33ep256mu806 - Kpoк(16.11.2020 22:06)
- Так откуда у тебя ассемблер? Он не с процем поставляется, а с
компилятором - поставь самый последний и не майся, MPLAB 8.92
прекрасно уживается с любым ХС16 и, разумеется, с соответствующим
ассемблером. А ASM30 - недоделанный и старый, как гавно мамонта,
снесинах - MBedder(16.11.2020 18:44)
- спасибо, чес говоря считал что ХС16 чисто сишный компилятор и
добросовестно юзал ASM30. я правильно понимаю что к ХС16 лицензия
не нужна чтобы на асме кодить? - m16(17.11.2020 11:22)
- приятно порадовал переход проекта с mplab x 4.05 + asm30 на mplab x
5.35 + xc16 без единой ошибки. - m16(24.11.2020 21:54)
- я уж подумал, что код стал вдвое короче :-) - Kpoк(24.11.2020 21:56)
- Правильно понимаете. Так же правильно и то, что ХС16 в оптимизациях
0, 1 и 2 так же бесплатен. Платные только 3 и s. - my504(17.11.2020 12:13)
- вдогонку. ХС16 и mplab x какие версии работают под ХР? - m16(18.11.2020 13:42)
- понятно, спасибо. оптимизация до лампочки. - m16(17.11.2020 12:34)
- приятно порадовал переход проекта с mplab x 4.05 + asm30 на mplab x
5.35 + xc16 без единой ошибки. - m16(24.11.2020 21:54)
- Попробовал. Один хер. Только ещё порождает код неизвестного мне
происхождения. - Kpoк(16.11.2020 22:05)
- Наверное стоит выключить в настройках линкера инициализацию
переменных... ;))) - my504(16.11.2020 22:14)
- Ты знал! (с). - Kpoк(16.11.2020 22:22)
- Я тоже :)) У меня так --> MBedder(1 знак., 16.11.2020 23:11, картинка)
- Вот! В какую голову пришла идея ставить галки напротив "НЕ ДЕЛАТЬ"?
Галки надо ставить напротив "ДЕЛАТЬ". Я отродясь эту закладку не
открывал - горя не знал. - Kpoк(16.11.2020 23:14)
- А как тебе такое, Илон Маск?? Илья, что можешь сказать? MBedder(1 знак., 16.11.2020 23:35 - 23:41, картинка)
- Когда обещают? - Kpoк(16.11.2020 23:37)
- Запись про поддержку dsPIC33A появилась еще в MPLABX 5.25, которая вышла больше года назад, а
сейчас уже 5.45 - MBedder(16.11.2020 23:48)
- Упоминание в среде про 33С появилось года за 2 до их появления.
Ждем еще год...))) - my504(17.11.2020 04:39)
- Подождем Илью, он может что-нибудь пояснить - MBedder(17.11.2020 10:47)
- Упоминание в среде про 33С появилось года за 2 до их появления.
Ждем еще год...))) - my504(17.11.2020 04:39)
- Запись про поддержку dsPIC33A появилась еще в MPLABX 5.25, которая вышла больше года назад, а
сейчас уже 5.45 - MBedder(16.11.2020 23:48)
- Когда обещают? - Kpoк(16.11.2020 23:37)
- А как тебе такое, Илон Маск?? Илья, что можешь сказать? MBedder(1 знак., 16.11.2020 23:35 - 23:41, картинка)
- Вот! В какую голову пришла идея ставить галки напротив "НЕ ДЕЛАТЬ"?
Галки надо ставить напротив "ДЕЛАТЬ". Я отродясь эту закладку не
открывал - горя не знал. - Kpoк(16.11.2020 23:14)
- Я тоже :)) У меня так --> MBedder(1 знак., 16.11.2020 23:11, картинка)
- Ты знал! (с). - Kpoк(16.11.2020 22:22)
- Наверное стоит выключить в настройках линкера инициализацию
переменных... ;))) - my504(16.11.2020 22:14)
- спасибо, чес говоря считал что ХС16 чисто сишный компилятор и
добросовестно юзал ASM30. я правильно понимаю что к ХС16 лицензия
не нужна чтобы на асме кодить? - m16(17.11.2020 11:22)
- Полное название МК можно узнать? - my504(16.11.2020 21:37)
- Эти имена приведены в файле *.gld Похожий глюк уже бывал, когда они
с одним процем поставляли кривой файл. Пришлось его переписать (две
строчки). А здесь реально тупит. Приходится перед каждым
программированием, смотреть, куда легло прерывание и дописывать его
вручную. - Kpoк(16.11.2020 18:33)
- MBedder уже все сказал, но я добавлю. Работа на 8-ке - старческий
маразм. Это я как пенсионер (работающий, правда) говорю. Тупо
маразм. Даже просто редактор в Х на порядок удобнее. Даже если не
брать в расчет, что я перешел на 4-ый пиккит, которого 8-ка
отродясь не щупала. Кстати, я тоже на 16-битниках Микрочипа пишу
только на АСМе. - my504(16.11.2020 21:34)
- Компилятор - бесовское порождение (вариант - индийских
программистов). Чистый ассемблер. Что до МПЛАБа, то с ростом
индекса у него растёт количество косяков. - Kpoк(16.11.2020 18:06)
- Я на dsPIC-ах симулятором в дебаге реального времени не пользуюсь.
В железе все работает как надо, с ДМА, в том числе. Ну и 8.92 пора
уже похоронить. А компилятор какой версии? - my504(16.11.2020 17:59)
- 1) Вектор прерывания. МПЛАБ 8.92 не знает его. При симуляции просто
не попадает куда надо, при реальной работе проц вылетает на хрен.
Дописывал вектор вручную. Вылетать перестало, но действий никаких
не делает. 2) Ну в общем оно не так уж и надо. Результаты в
ADC1BUF0 есть. Но будет ли работать с ДМА при таких раскладах? - Kpoк(16.11.2020 17:44)
- Резюме. Всем откликнувшимся спасибо. Новые инструменты буду юзать.
Но пока и они не решили проблему. Приведу фрагмент программы. В
нужной строке векторов прерывания второй и третий таймеры -
нормально. Ацп- нулевая реакция (то есть число 200). Я бы привёл и
фрагмент порождаемого кода, но среды (обе) не позволяют копировать
фрагмент. А если сохранить ptogramm memory в txt файл, он занимает
300 Мега Байт! Kpoк(743 знак., 17.11.2020 13:07)