-
- выкладывай решение, потом обсудим скорость смены уставок ;) jaga-jaga(77 знак., 06.09.2006 22:14, )
- Что-то мне подсказывает, что результат будет аналогичным его же "чудесному" коду супербыстрого целочисленного деления, который так никто и не увидел по особо важным причинам :) - AVR(12.09.2006 18:41, )
- Не, с делением всё путём было. Смысл усовершенствования был изложен в двух словах. А код и не нужен. И так понятно. - =mse=(13.09.2006 09:38, )
- ?! - GM(13.09.2006 16:36, )
- Ради интереса посмотрел на страницу 1222. Все сообщения остались на месте, а вот моего сообщения с кодом знакового деления 32/16=16 не осталось! GM(249 знак., 13.09.2006 16:35, , ссылка)
- Не...Телесиськи сами по себе осыпаются. Но, наскока помню, кодов я тоже не видел. Да и не смотрел. Мне про сдвиг хватило. А код я и сам напишу какой нада. ;О) - =mse=(13.09.2006 18:02, )
- Там был, если не ошибаюсь, урезанный код из атмельской арифметической аппноты AVR(605 знак., 13.09.2006 18:34, , ссылка, ссылка)
- Как бывший модератор ТС могу сказать, что при зависании движка той конфы неоднократно терялись многие сообщения AVR(276 знак., 13.09.2006 16:57, )
- Не...Телесиськи сами по себе осыпаются. Но, наскока помню, кодов я тоже не видел. Да и не смотрел. Мне про сдвиг хватило. А код я и сам напишу какой нада. ;О) - =mse=(13.09.2006 18:02, )
- Это сдвиг не всех, а половины байт? Так это давно известно, а он говорил о коммерческой версии, которую не может публиковать. Страницы 1221-1222, но там тексты сообщений покоцаны - AVR(13.09.2006 11:32, )
- Не, с делением всё путём было. Смысл усовершенствования был изложен в двух словах. А код и не нужен. И так понятно. - =mse=(13.09.2006 09:38, )
- Вот код для формирования 256-точечного 24-канального ШИМа. Рабочая частота шим 3906 Гц. GM(4078 знак., 07.09.2006 15:30, )
- Это не код, это скелет его левого мизинца AVR(266 знак., 08.09.2006 18:52, )
- Да хоть горшком назовите, код всё равно рабочий. А вот ваш код не работает, как надо бы, несмотря на "самодостаточность". - GM(08.09.2006 20:15, )
- Хотелось бы не известий, а аргументов и фактов. Будьте так любезны - AVR(08.09.2006 20:35, )
- Извольте, уважаемый GM(1399 знак., 10.09.2006 00:08, )
- Хорошо, хорошо, успокойтесь - это я застрелил Джона Кеннеди в 1963-м. Успокоились? - слушайте AVR(2255 знак., 10.09.2006 02:30, , ссылка, ссылка)
- 5760 кан/сек? И это при 1200Гц шим? Ха, маловато будет! Мой вариант при 3906 Гц шим может обеспечить 93744 канала/сек, то есть смена всех каналов для каждого периода шим. GM(997 знак., 11.09.2006 17:24, )
- Пока не увидим полного кода (прием команд + формирование паттернов + собственно ШИМ) - считаем демагогией - AVR(11.09.2006 17:39, )
- Это вы от имени кого говорите во множественном числе? Если вы не видите кода, то это не значит, что другие не видят. GM(425 знак., 11.09.2006 18:10, )
- В самом деле, почему бы не запостить весь текст программы? Шоб можно было "замесить и нарубить" нажав на build/make. - Silence(11.09.2006 18:48, )
- А вот и Silence подтянулся(:-). GM(120 знак., 11.09.2006 18:59, )
- /*Вам что-то непонятно в коде?*/ Дык, сначала глянуть бы. Silence(289 знак., 11.09.2006 19:30, )
- Так вот же он --> GM(411 знак., 11.09.2006 19:50, , ссылка)
- В Вашем коде не хватает самой малости - самого кода. Изворачиваться больше не нужно, вот Вам то, что называют полным кодом AVR(7528 знак., 11.09.2006 23:39, )
- Замечательно!!! Но, хотелось бы увидеть что-нибудь подобное и для PIC. - Bill(12.09.2006 17:18, )
- Для PIC код дал jaga-jaga, забыл? --> - AVR(12.09.2006 17:22, , ссылка)
- Этот код я помню. Вот только разбор полетов.... Bill(169 знак., 12.09.2006 17:33, )
- Ну да - сначала ошибочно согласились, что 10МИПСовый ПИК на этой задаче обогнал 16-МИПСового АВРа AVR(679 знак., 12.09.2006 17:45, )
- Я вот думаю про PIC18 для сравнения. Правда, я с ним не работал, но, думаю, он пошустрее PIC16 будет. - Bill(12.09.2006 21:49, )
- на него (пик18) и ориентируемся. - jaga-jaga(12.09.2006 21:54, )
- Вот бы и сравнить его с PIC16 и AVR. Кстати, у PIC18 вроде команда неразрушающего сравнения имеется. Или нет? - Bill(12.09.2006 22:02, )
- нужно ли сравнивать тиню и авр? вот и пик16 незачем сюда притягивать ;) jaga-jaga(203 знак., 12.09.2006 22:15, )
- Да бог с ним, с PIC16. С ним все ясно. Лучше PIC18 и AVR. - Bill(12.09.2006 23:52, )
- Результат будет таким же, как и был AVR(1029 знак., 13.09.2006 00:34, )
- Да бог с ним, с PIC16. С ним все ясно. Лучше PIC18 и AVR. - Bill(12.09.2006 23:52, )
- нужно ли сравнивать тиню и авр? вот и пик16 незачем сюда притягивать ;) jaga-jaga(203 знак., 12.09.2006 22:15, )
- Вот бы и сравнить его с PIC16 и AVR. Кстати, у PIC18 вроде команда неразрушающего сравнения имеется. Или нет? - Bill(12.09.2006 22:02, )
- на него (пик18) и ориентируемся. - jaga-jaga(12.09.2006 21:54, )
- Я вот думаю про PIC18 для сравнения. Правда, я с ним не работал, но, думаю, он пошустрее PIC16 будет. - Bill(12.09.2006 21:49, )
- Ну да - сначала ошибочно согласились, что 10МИПСовый ПИК на этой задаче обогнал 16-МИПСового АВРа AVR(679 знак., 12.09.2006 17:45, )
- Этот код я помню. Вот только разбор полетов.... Bill(169 знак., 12.09.2006 17:33, )
- Для PIC код дал jaga-jaga, забыл? --> - AVR(12.09.2006 17:22, , ссылка)
- Замечательно!!! Но, хотелось бы увидеть что-нибудь подобное и для PIC. - Bill(12.09.2006 17:18, )
- В Вашем коде не хватает самой малости - самого кода. Изворачиваться больше не нужно, вот Вам то, что называют полным кодом AVR(7528 знак., 11.09.2006 23:39, )
- Так вот же он --> GM(411 знак., 11.09.2006 19:50, , ссылка)
- /*Вам что-то непонятно в коде?*/ Дык, сначала глянуть бы. Silence(289 знак., 11.09.2006 19:30, )
- А вот и Silence подтянулся(:-). GM(120 знак., 11.09.2006 18:59, )
- Признаю - я поражен. Поражен Вашим упорным нежеланием привести весь код и подсчитать результирующую загрузку ядра и ресурсов - AVR(11.09.2006 18:42, )
- В самом деле, почему бы не запостить весь текст программы? Шоб можно было "замесить и нарубить" нажав на build/make. - Silence(11.09.2006 18:48, )
- Это вы от имени кого говорите во множественном числе? Если вы не видите кода, то это не значит, что другие не видят. GM(425 знак., 11.09.2006 18:10, )
- Пока не увидим полного кода (прием команд + формирование паттернов + собственно ШИМ) - считаем демагогией - AVR(11.09.2006 17:39, )
- 5760 кан/сек? И это при 1200Гц шим? Ха, маловато будет! Мой вариант при 3906 Гц шим может обеспечить 93744 канала/сек, то есть смена всех каналов для каждого периода шим. GM(997 знак., 11.09.2006 17:24, )
- Хорошо, хорошо, успокойтесь - это я застрелил Джона Кеннеди в 1963-м. Успокоились? - слушайте AVR(2255 знак., 10.09.2006 02:30, , ссылка, ссылка)
- он имел ввиду, что работает как не надо, т.е. медленно ;) - jaga-jaga(08.09.2006 21:39, )
- Извольте, уважаемый GM(1399 знак., 10.09.2006 00:08, )
- Хотелось бы не известий, а аргументов и фактов. Будьте так любезны - AVR(08.09.2006 20:35, )
- Да хоть горшком назовите, код всё равно рабочий. А вот ваш код не работает, как надо бы, несмотря на "самодостаточность". - GM(08.09.2006 20:15, )
- Это не код, это скелет его левого мизинца AVR(266 знак., 08.09.2006 18:52, )
- Вот именно. И вот еще мысли вслух --> - AVR(06.09.2006 22:21, , ссылка)
- Так что, jaga-jaga, вы случаем не заболели(:-)? И AVR с mse тоже?(:-). Прям повальная эпидемия! Признаёте, что авр легко обходит пик на этой задаче? GM(545 знак., 08.09.2006 17:41, )
- да признаём, признаём. И что и кому ты доказал? - Gamma SPb(08.09.2006 17:49, )
- признаем, что пик типа в семь раз медленнее? нет, конечно, ничего подобного. - jaga-jaga(08.09.2006 18:05, )
- да я так, чтоб камрада успокоить, а то он же ночь небось не спал, придумывал... - Gamma SPb(08.09.2006 18:07, )
- пик сделает все точно так же (это GM'у) jaga-jaga(65 знак., 08.09.2006 18:14, )
- Ну так, покажите, как "пик сделает все точно так же", тогда и поговорим. GM(124 знак., 08.09.2006 20:26, )
- ну, не в семь же раз jaga-jaga(370 знак., 08.09.2006 20:42, )
- Обижаете, jaga-jaga. Вами приведены куски "как бы кода", а не код. Где у вас вход в прерывание, сохранение W, STATUS и BSR регистров, установка нового BSR, очистка бита прерывания, выход из прерывания..? Там прилично тактов набежит. Хотелось бы увидеть GM(313 знак., 11.09.2006 16:35, )
- так и у вас "как бы код" ;) w, status, bsr сохраняются автоматом в теневом стеке, так же восстанавливаются, бит прерывания очистить и все. так чта... - jaga-jaga(11.09.2006 17:25, )
- как бы пик еще не оказался быстрее по маш.циклам ;) - jaga-jaga(11.09.2006 17:27, )
- Тут вы немного разгорячились(:-). Вам нужно 96*2=192 байта памяти, а на первой странице только 128, так что BSR на первую страницу памяти вам надо устанавливать, хотите вы того или нет. GM(458 знак., 11.09.2006 17:47, )
- а при чем тут BSR? для косвенной адресации (наш случай) используются регистровые пары FSRx hi и low часть, которые jaga-jaga(389 знак., 11.09.2006 18:00, )
- Принято. А где поллинг? Вообще, лучше приведите завершенный код прерывания с вашими комментариями, чтобы было в одном месте. GM(180 знак., 11.09.2006 18:17, )
- поллинга тоже не будет ;) пусть будет разрешено лишь одно прерывание от модуля CCP jaga-jaga(218 знак., 11.09.2006 21:30, )
- Нет, так не пойдёт. У вас должно быть по крайней мере три прерывания: сравнение, переполнение и усарт, но есть только два вектора прерывания. GM(1063 знак., 12.09.2006 13:04, )
- Сложно общаться одними словами без блок-схем или кода показывающего функциональность. abivan(379 знак., 12.09.2006 15:30, )
- А никто и не обещал, что будет просто. Чувствую, что пора объяснить принципы работы еще раз(:-) GM(2525 знак., 12.09.2006 16:50, )
- Ответ: + abivan(415 знак., 13.09.2006 12:54, )
- как мне показалось идею до конца так никто и не понял, отсюда и вопросы выложить код ;) jaga-jaga(85 знак., 12.09.2006 16:02, )
- Согласен, его нет в изначальных условиях. Я вижу вам неудобно иметь три прерывания, давайте пока опустим его, пусть будет два (один на ум пойдёт(:-)). Давайте завершенный код двух прерываний. Посчитаем количество тактов, сравним, потом перейдем к GM(33 знак., 12.09.2006 17:02, )
- Идея абсолютно понятна, но производительность будет понятна только после выкладывания всего сопутствующего кода, которого, разумеется, нет - AVR(12.09.2006 16:21, )
- А никто и не обещал, что будет просто. Чувствую, что пора объяснить принципы работы еще раз(:-) GM(2525 знак., 12.09.2006 16:50, )
- Сложно общаться одними словами без блок-схем или кода показывающего функциональность. abivan(379 знак., 12.09.2006 15:30, )
- Нет, так не пойдёт. У вас должно быть по крайней мере три прерывания: сравнение, переполнение и усарт, но есть только два вектора прерывания. GM(1063 знак., 12.09.2006 13:04, )
- Упорядочивания таблицы в течение цикла по жизни не требуется в 99% случаев, потому что ШИМ далее фильтруется и его частота априори выбирается на два-три порядка выше частоты перестойки. А теперь представьте, что у вас у всех каналов значение 55/25. Это General(14 знак., 11.09.2006 18:27, )
- Нет, это 24 уставки. И программа должна отрабатывать оставшийся один процент случаев. В противном случае, это не программа, а любительская поделка на коленке. GM(1053 знак., 11.09.2006 19:39, )
- Нет проблем, упорядочивание уставок - правильное решение. Я просто хотел подчеркнуть тонкости. General(345 знак., 11.09.2006 20:53, )
- Все можно наладить, если вертеть в руках достаточно долго. Например, в прерывании выпихивать в порты только маску abivan(133 знак., 12.09.2006 10:07, )
- Мне кажется, суть возражений именно в в том, что если вылизать все тонкости, результат окажется эквивалентным традиционному. - General(12.09.2006 10:15, )
- А ХЗ все от постановки задачи зависит abivan(483 знак., 13.09.2006 13:08, )
- Спасибо, General. GM(609 знак., 12.09.2006 20:53, )
- Маа-аленькие поправочки AVR(1201 знак., 12.09.2006 21:45, , картинка)
- Хе-хе. Вылитый Блекигл :)))) - General(12.09.2006 21:34, )
- Дежавю 8-) - Гудвин(12.09.2006 22:23, )
- Я стараюсь :) - AVR(12.09.2006 21:40, )
- Хе-хе. Вылитый Блекигл :)))) - General(12.09.2006 21:34, )
- Благодарности -не ко мне. Это не я восстановил. Но я очень прошу вас- ответьте на мой вопрос, наконец. - General(12.09.2006 21:05, , ссылка)
- я не слежу особо, но мне кажется, что если =AlexD=(121 знак., 13.09.2006 15:32, )
- В связи с необоснованным переносом AVR'ом темы в мусорку и возвращением обратно (спасибо jaga-jaga?), я разместил код формирования рабочей таблицы на следующей странице --> GM(159 знак., 13.09.2006 15:55, , ссылка)
- Тебе решать, ты же автор. :-) =AlexD=(100 знак., 13.09.2006 19:51, )
- В связи с необоснованным переносом AVR'ом темы в мусорку и возвращением обратно (спасибо jaga-jaga?), я разместил код формирования рабочей таблицы на следующей странице --> GM(159 знак., 13.09.2006 15:55, , ссылка)
- Выложил код формирования рабочей таблицы --> GM(4549 знак., 13.09.2006 14:29, , ссылка)
- Это не код, а его описание. Полный ассемблерный листинг с подсчетом циклов на бочку! - AVR(13.09.2006 14:34, )
- ждем у моря погоды? - Gamma SPb(13.09.2006 04:55, )
- Дождик уже пошел :) --> - AVR(13.09.2006 11:34, , ссылка)
- я не слежу особо, но мне кажется, что если =AlexD=(121 знак., 13.09.2006 15:32, )
- Маа-аленькие поправочки AVR(1201 знак., 12.09.2006 21:45, , картинка)
- Мне кажется, суть возражений именно в в том, что если вылизать все тонкости, результат окажется эквивалентным традиционному. - General(12.09.2006 10:15, )
- Все можно наладить, если вертеть в руках достаточно долго. Например, в прерывании выпихивать в порты только маску abivan(133 знак., 12.09.2006 10:07, )
- Нет проблем, упорядочивание уставок - правильное решение. Я просто хотел подчеркнуть тонкости. General(345 знак., 11.09.2006 20:53, )
- Нет, это 24 уставки. И программа должна отрабатывать оставшийся один процент случаев. В противном случае, это не программа, а любительская поделка на коленке. GM(1053 знак., 11.09.2006 19:39, )
- поллинга тоже не будет ;) пусть будет разрешено лишь одно прерывание от модуля CCP jaga-jaga(218 знак., 11.09.2006 21:30, )
- Принято. А где поллинг? Вообще, лучше приведите завершенный код прерывания с вашими комментариями, чтобы было в одном месте. GM(180 знак., 11.09.2006 18:17, )
- а при чем тут BSR? для косвенной адресации (наш случай) используются регистровые пары FSRx hi и low часть, которые jaga-jaga(389 знак., 11.09.2006 18:00, )
- Тут вы немного разгорячились(:-). Вам нужно 96*2=192 байта памяти, а на первой странице только 128, так что BSR на первую страницу памяти вам надо устанавливать, хотите вы того или нет. GM(458 знак., 11.09.2006 17:47, )
- как бы пик еще не оказался быстрее по маш.циклам ;) - jaga-jaga(11.09.2006 17:27, )
- Ээ, уважаемый, Вы уже на "сам дурак" скатились вместо конкретного ответа --> - AVR(11.09.2006 16:39, , ссылка)
- ? шо это было? - GM(11.09.2006 17:38, )
- Настоящее имя AVR General(12 знак., 11.09.2006 18:30, )
- А миссиз Джонсон тогда кто, Gamma SPB, что ли(:-)? GM(63 знак., 11.09.2006 19:57, )
- Спалил :) - AVR(11.09.2006 18:39, )
- Настоящее имя AVR General(12 знак., 11.09.2006 18:30, )
- ? шо это было? - GM(11.09.2006 17:38, )
- так и у вас "как бы код" ;) w, status, bsr сохраняются автоматом в теневом стеке, так же восстанавливаются, бит прерывания очистить и все. так чта... - jaga-jaga(11.09.2006 17:25, )
- Обижаете, jaga-jaga. Вами приведены куски "как бы кода", а не код. Где у вас вход в прерывание, сохранение W, STATUS и BSR регистров, установка нового BSR, очистка бита прерывания, выход из прерывания..? Там прилично тактов набежит. Хотелось бы увидеть GM(313 знак., 11.09.2006 16:35, )
- ну, не в семь же раз jaga-jaga(370 знак., 08.09.2006 20:42, )
- +1 - AVR(08.09.2006 18:52, )
- Ну так, покажите, как "пик сделает все точно так же", тогда и поговорим. GM(124 знак., 08.09.2006 20:26, )
- пик сделает все точно так же (это GM'у) jaga-jaga(65 знак., 08.09.2006 18:14, )
- да я так, чтоб камрада успокоить, а то он же ночь небось не спал, придумывал... - Gamma SPb(08.09.2006 18:07, )
- признаем, что пик типа в семь раз медленнее? нет, конечно, ничего подобного. - jaga-jaga(08.09.2006 18:05, )
- да признаём, признаём. И что и кому ты доказал? - Gamma SPb(08.09.2006 17:49, )
- Так что, jaga-jaga, вы случаем не заболели(:-)? И AVR с mse тоже?(:-). Прям повальная эпидемия! Признаёте, что авр легко обходит пик на этой задаче? GM(545 знак., 08.09.2006 17:41, )
- Что-то мне подсказывает, что результат будет аналогичным его же "чудесному" коду супербыстрого целочисленного деления, который так никто и не увидел по особо важным причинам :) - AVR(12.09.2006 18:41, )
- выкладывай решение, потом обсудим скорость смены уставок ;) jaga-jaga(77 знак., 06.09.2006 22:14, )