dima_spb 0 25 августа, 2014 Опубликовано 25 августа, 2014 · Жалоба Привет ув. специалисты!!! Ситуация следующая. Занялся изучением DSP на примере ADSP-21363 от аналога. Выбрал я именно этот камень по причине того, что на рабочих платах нашего предприятия они активно применяются. Т.е. покупать китов не придется (деньги в общем экономлю)=)) Задачу я себе сформулировал следующую: 1. Запрограммировать процессор по SPI (так уж они у нас тут на всех платах шьются). 2. После запуска программы подергать одним из флагов. На пути к решению этой задачи мной было сделано: 1. Скачал, крякнул VisualDSP 5.1 (Среда программирования имеется). 2. Запасся докой, а именно "ADSP-2136x SHARC® Processor Hardware Reference Includes ADSP-21362, ADSP-21363,ADSP-21364, ADSP-21365, ADSP-21366" 3. Соответственно аппаратная платформа с кристаллом имеется. Трудности: 1. Суть моей программы будет следующей: мне нужно после начала выполнения программы включить один из флагов как выход, далее попасть в основной бесконечный цикл программы и деля тактовую частоту выводить её на флаг. Внимание вопрос: Я так понимаю, что нужно проинициализировать системные регистры для корректной работы процессора, но не могу найти их в доке. Вы не подскажете может быть доку еще какую-то нужно или я плохо в этой ищу? Правильно ли я себе представляю работу программы, чтобы подергать флагом? 2. Хотел бы попросить ссылки с примерами или какая-то инфа есть все с теме же примерами. 3. Язык программирования я выбрал "С++" Буду благодарен за любую помощь! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
stealth-coder 2 27 августа, 2014 Опубликовано 27 августа, 2014 · Жалоба 1. Запуском платформ не занимаюсь, работаю на прикладном уровне, но в директории, куда установлен Visual DSP, есть директория Examples, посмотрите там 2. С++ - это для embedded не гуд, в основном пишут на С (примеры, библиотеки и т.п. написаны на С), будете постоянно иметь проблемы с линковкой. Решаемо, но С++ здесь избыточен. ИМХО. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dima_spb 0 28 августа, 2014 Опубликовано 28 августа, 2014 · Жалоба 1. Запуском платформ не занимаюсь, работаю на прикладном уровне, но в директории, куда установлен Visual DSP, есть директория Examples, посмотрите там 2. С++ - это для embedded не гуд, в основном пишут на С (примеры, библиотеки и т.п. написаны на С), будете постоянно иметь проблемы с линковкой. Решаемо, но С++ здесь избыточен. ИМХО. Спасибо большое за ответ!! По поводу С++ понял, так считают многие....Думаю что не буду отличаться и сконцентрируюсь тоже на С. Да, действительно...все гораздо проще оказалось. Благодарю за подсказку, буду внимательней. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
olefil 0 3 сентября, 2014 Опубликовано 3 сентября, 2014 · Жалоба Пишу на С++ для SHARC на протяжении 12 лет и считаю, что разницы, что использовать C или С++ нет, на плюсах во много раз удобнее. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dima_spb 0 3 сентября, 2014 Опубликовано 3 сентября, 2014 · Жалоба Пишу на С++ для SHARC на протяжении 12 лет и считаю, что разницы, что использовать C или С++ нет, на плюсах во много раз удобнее. Возможно! Я посмотрел примеры предлагаемые от Analog там С или asm. Если у вас есть примеры, то поделитесь пожалуйста. Может быть есть примеры на С. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
olefil 0 5 сентября, 2014 Опубликовано 5 сентября, 2014 · Жалоба Примеров нет, т.к. это работа. Могу сказать только одно компилятор для SHARC достаточно приличный и вообще-то он C++, режим C включается по расширению и/или после установки флагов для компилятора. Принципально не важно, на чем вы пишите С или С++, но могу вас уверить, что если вы выбираете для работы SHARC разницы вы не увидете. Размер кода на C и С++ конечно будет разный, для проекта (a+B), но при написании программы в пару тысяч строк на С или С++ вам будет все равно. И еще раз хочу сказать именно для этой платформы выбор С или С++ значения не имеет, т.к. практически использовать наработки от PC или похожей платформы вы без изменения кода и без знания глюков компилятора и особенносте конкретного процессора просто не сможете, я молчу про то, что весь код который должен исполняться во времени быстро вы будете писать на ассемблере, т.к. компилятор не всегда правильно понимает конструкции С и/или просто не может реализовать то, что вам надо. Использование языка высокого уровня в данном случае подходит только для описания неких логических ветвлений или кода инициализации. Могу сказать так, мной созданный проект живет уже много лет и включает ETH, USB, GUI все это написано на ++, а обращения к внешнему железу на asm. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
stealth-coder 2 7 сентября, 2014 Опубликовано 7 сентября, 2014 · Жалоба Пишу на С++ для SHARC на протяжении 12 лет и считаю, что разницы, что использовать C или С++ нет, на плюсах во много раз удобнее. Не холивара ради :))) На вкус и цвет фломастеры, конечно, разные, но сам по себе С++ предназначен для облегчения написания больших проектов благодаря ООП (вопрос, о котором уже много лет идет спор) и большому количеству библиотек (тут споров меньше). 1. Большой проект для DSP представить себе затрудняюсь (например, реализация базовой станции GSM/UMTS проект небольшой (по сути DSP и предназначены для таких задач) по сравнению с какими-нибудь СУБД (желающих реализовать ORACLE на DSP пока не встречал :). 2. Большинство библиотек для PC использовать на DSP невозможно в силу слабости компилятора, небольшого объема памяти и т.п., а практически все библиотеки, ориентированные на DSP, реализованы на С. Вот и получается, что в большинстве случаев использование C++ сводится к "С с классами", когда указатель на this передает не программист ручками, а компилятор. Более 10 лет пишу и на С, и на С++. Раньше был горячим сторонником С++ и ООП, а на С писал "потому что система так построена", но с опытом пришел к выводу, что за небольшой синтаксический сахар плачу разгребанием всякого геморроя типа исключений, который выбрасывают библиотеки, несовместимостью компиляторов и т.д. Сейчас большинство новых проектов сразу пишу на С. Разве что по STL иной раз взгрустну... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dima_spb 0 8 сентября, 2014 Опубликовано 8 сентября, 2014 · Жалоба Не холивара ради :))) На вкус и цвет фломастеры, конечно, разные, но сам по себе С++ предназначен для облегчения написания больших проектов благодаря ООП (вопрос, о котором уже много лет идет спор) и большому количеству библиотек (тут споров меньше). 1. Большой проект для DSP представить себе затрудняюсь (например, реализация базовой станции GSM/UMTS проект небольшой (по сути DSP и предназначены для таких задач) по сравнению с какими-нибудь СУБД (желающих реализовать ORACLE на DSP пока не встречал :). 2. Большинство библиотек для PC использовать на DSP невозможно в силу слабости компилятора, небольшого объема памяти и т.п., а практически все библиотеки, ориентированные на DSP, реализованы на С. Вот и получается, что в большинстве случаев использование C++ сводится к "С с классами", когда указатель на this передает не программист ручками, а компилятор. Более 10 лет пишу и на С, и на С++. Раньше был горячим сторонником С++ и ООП, а на С писал "потому что система так построена", но с опытом пришел к выводу, что за небольшой синтаксический сахар плачу разгребанием всякого геморроя типа исключений, который выбрасывают библиотеки, несовместимостью компиляторов и т.д. Сейчас большинство новых проектов сразу пишу на С. Разве что по STL иной раз взгрустну... Большое спасибо за ваши мнения. Все же остановился на Си. И сейчас сижу упорно пытаюсь проинициализировать необходимые регистры чтобы флагом помигать. Если в эту тему есть какой-то материал буду благодарен. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться