Нравится? Делимся информацией!

воскресенье, 11 августа 2013 г.

Python: if-else внутри Генератора Списков


Долго искал в интернете, на зная как обозначить данную проблему. В итоге, гуглить стоит что-то наподобие:
“Creating a Python list comprehension with an if”  “Python: if/else in list comprehension?”

четверг, 21 марта 2013 г.

Некролог




   Кто смотрел Skyfall - тот понимает смысл картинок. Решил таки отписаться по поводу своего долгого отсутствия для тех, кто более менее   периодически просматривает мой бложик.

четверг, 28 февраля 2013 г.

Терминология Git

Люблю когда все по полочкам. А изучая новую область знаний, необходимо прежде всего уяснить набор терминов, присущих этой области, понять для себя эти термины, сопоставить им аллегории и т.п.
Поскольку в интернете не обнаружил справочной информации, собранной в одном месте, то решил для себя собрать все термины и жаргоны относительно системы контроля версии Git, чтобы не рыскать по многочисленным книгам - это утомляет. Буду стараться приводить ссылки.
Так же, люди опытные, корректируйте если что неточности!

понедельник, 11 февраля 2013 г.

Вычисление корня квадратного и инверсного корня в C28x Delfino




В этой статье расскажу и приведу много ссылок на методы вычисления квадратного корня. Захвачу тему вычисления инверсного корня. Разберемся, откуда берутся формулы для вычисления. Как работает метод Ньютона-Рафсона. Где для него взять первое приближение. И намекну, как это все устроено в математической FPU библиотеке Texas Instruments.


В чем рисовать UML, диаграммы? бесплатный UML редактор под Windows и Linux




пятница, 1 февраля 2013 г.

TMS320 c28x: Операция “остаток от деления”, %. Исследование.


TMS320 c28x: Сравнение производительности стандартных функций из rts2800_fpu32 и rts2800_fpu32_fast_supplement библиотек



TMS320F28335: увеличиваем производительность стандартных функций заменой rts2800_fpu32 на rts2800_fpu32_fast_supplement


вторник, 15 января 2013 г.

Создание проекта в CCS v3.3 со сложной структурой папок

         Хорошо, когда проект настроен так, что в любом месте жесткого диска, где бы он ни хранился, мы могли бы спокойно его запускать. Для этого нужно в настройках проекта использовать относительные пути к файлам вместо абсолютных.

понедельник, 14 января 2013 г.

Вычисление модуля вектора ( sqrt( I^2 + Q^2 ) ). Результаты




В статье производится тестирование алгоритма на производительность как на компьютере ,так и на целевой платформе (TMS320F28335).

Статья 3. Вычисление модуля вектора (работа над ошибками)

Вычисление модуля вектора ( sqrt( I^2 + Q^2) ): от идеи до реализации



В статье собрана и проанализирована информация о методах вычисления корня квадратного, приведены ссылки на материалы. Сделана попытка синтезировать на основе двух методов алгоритм нахождения модуля вектора: оценка модуля вектора алгоритмом “альфа максимум плюс бета минимум” и последующее уточнение значения с помощью метода Ньютона.

пятница, 21 декабря 2012 г.

В чем рисовать блок схемы алгоритмов ??

Если Вам не нравится платность программ, в которых можно рисовать блок схемы алгоритмов, например, Visio, или всего-навсего на работе Вам не закупили лицензию сие чудного творения корпорации микро софта, то вам нужно ознакомиться со статьей.

четверг, 20 декабря 2012 г.

Мысли о профилировании кода/алгоритма на компьютере: мыслим "в малом" и "в большом"


Материал взят со статьи  Профилировка программ жестоким, но выборочным копипастом. Ниже представлены выжимки из статьи, отредактированные, разукрашенные, которые ответили на ряд моих вопросов.



Измерение времени выполнения алгоритма _ профилирование

среда, 12 декабря 2012 г.

FIR Filter Debugging _ Тестирование КИХ фильтра-дециматора разными входными сигналами

предыдущий пост << FIR filter Algorithm _ Разработка алгоритма работы КИХ фильтра-дециматора на кольцевом буфере

Способом, описанным в этой статье Export from Matlab_Экспорт из Матлаба требуемой части сигнала , создал несколько тестовых выборок сигнала. Их то и подаю на вход фильтра.


FIR filter Algorithm _ Разработка алгоритма работы КИХ фильтра-дециматора на кольцевом буфере

предыдущий пост << Create FIR filter C++ _ Создание КИХ фильтра на С++. Реализация класса, интерфейса класса.

Для организации достаточно эффективной реализации КИХ фильтра требуется реализовать “кольцевой буфер”( см. Работа с кольцевым буфером  ). Этот буфер будет располагаться внутри класса фильтра. Размер его равен числу коэффициентов КИХ фильтра. Создается он динамически. Помимо него еще потребуется использование двух лишних переменных-индексов для передвижения по массиву, скажем, m_indexIn и m_indexOut .


Create FIR filter C++ _ Создание КИХ фильтра на С++. Реализация класса, интерфейса класса.





Читаем гл 6,7,9, а так же с 460 и 820 Айфичера - это если совсем новичок и нет никаких наработок. У меня же есть модель в матлабе цифрового синхронного детектора ( а так же асинхронного, sqrt-детектора, разработанные мною). В этой модели я уже рассчитывал коэффициенты фильтра, поэтому осталось их оттуда вычленить и сгенерировать.

вторник, 11 декабря 2012 г.

Export from Matlab_Экспорт из Матлаба требуемой части сигнала

Прежде, чем экспортировать данные - нужно их создать и просмотреть, и наметить ту часть сигнала, которую хотим выложить в отдельный файл.
Для быстрого ликбеза по выше указанным шагам можно обратиться к статье Как в MatLab просмотреть сигнал, сформированный за все время моделирования? (где так же повествуется о записи данных в *.mat файл)


пятница, 7 декабря 2012 г.

Как в MatLab просмотреть сигнал, сформированный за все время моделирования?

    Статья о том, что Scope не помогает увидеть весь сигнал. Этот блок приходится часто перенастраивать перед каждым прогоном на моделирование, тем более он не дает выводить больше определенного числа точек.
    Бывают ситуации, когда надо просмотреть всю историю сигнала. Например, в моем случае (синхронный детектор с цифровой ФАПЧ) данная возможность помогла увидеть, что ФАПЧ выходит на режим около 4 секунд, что непомерно много! Значи тнадо ковырять модель дальше....
    Итак,


четверг, 6 декабря 2012 г.

как построить график переменной в Code Composer Studio v3.3 ?

Написал на “приплюснутом” =) (C++) реализацию класса КИХ фильтра, который одновременно выполняет децимацию. Хочу отладить в композере. Как заливать данные в композер для отладки разобрался: ссылка 1 - читать первой , ссылка 2 , ссылка 3
    Но как отображать выходные данные, чтобы не так много оперативной памяти расходовалось на отладку в TMS320F28335 ???

what is the format of the dat file in Code Composer Studio?

Какой формат dat файла в Code Composer Studio?? 

 

четверг, 29 ноября 2012 г.

Code Composer Studio - Единственно правильная загрузка *.dat файла в TMS320F28335

Изучаем Code Composer Studio: работа с Graph tool, загрузка *.dat файла данных в процессор в точке останова

Подключу-ка  я к проекту образцовый *.dat файл из, например, этого проекта:  C:\CCStudio_v3.3\tutorial\dsk2812\volume1\sine.dat

Debugging. TMS320F28335 виснет при отладке простого проекта

     Если Вам во время Ваших начальных экспериментов с процессорами Texas Instruments любого семейства захочется быстро стартануть и поэкспериментировать, то Вы не должны наступать на мои грабли! В чем суть?!

My first simple C++ program in Code Composer Studio

среда, 28 ноября 2012 г.

вторник, 27 ноября 2012 г.

Конвертируем вещественные данные (float, single (MatLab)) из десятичной системы счисления в hex


ЗАДАЧА: перевести числа из десятичной системы счисления в шестнадцатеричную (hex).
Решение: используем скрипт MatLAB (m-файл) , т.к. основные данные для работы будут генерироваться в нем
Дано: *.dat файл с 1-D вектором-столбцом (отсчеты вещественных данных: в матлабе это соответствует типу single, в С++  - float )

суббота, 24 ноября 2012 г.

Автоматическое открытие при загрузке текущего рабочего проекта Code Composer Studio

Для того, чтоб постоянно не грузить проект после открытия CCS, чтоб ручки наши не уставали, можно сделать, чтобы по открытию CCS автоматически загружался сохраненный Вами WorkSpace.
    Делается просто:
У меня сейчас рабочий проект C:\CCStudio_v3.3\MyProjects\LearnProg\LearnProgWrks.wks
поэтому я эту строчку добавляю через пробел в ярлык CCS в конец строки “Объект” во вкладке “Ярлык” и жму Применить:


среда, 14 ноября 2012 г.

пятница, 9 ноября 2012 г.

Doxygen - быстрый старт



предыдущий пост << Установка Doxygen под Windows

    Первый раз - в первый класс. Для просмотра возможностей Doxygen был написан простенький заголовочный файл, с параллельным ознакомлением со статьей Как использовать Doxygen