MicroCHIP.RU
Главная Документация Отладочные средства Справочник Поиск Ссылки
 Новости   Конференция   Контакты 
 

IAR ASM для dsPIC

 Нoвaя темa  |  Наверх  |  Перейти к теме  |  Поиск  |  Правила  |  Вход 

ВНИМАНИЕ!
Вы просматриваете архив форума.

Этот форум работает только в режиме просмотра и поиска.

Действующий форум переведен на новый движок и
находится по адресу www.microchip.su

 IAR ASM для dsPIC
Автор: gzi ()
Дата:   18/07/2006 12:34

Подскажите пожалуйста, поддерживает ли ассемблер IAR Assembler for Microchip dsPIC
1.20B/W32 (1.20.2.2) инструкции этого процессора. Вопрос может звучит абсурдно, но при компиляции
модулей на асме DSP-инструкции (LAC, SAC, MAC, MSC, MPY...) и и инструкции типа
MOV.W, MOV.B, CLR.W обвиняются в 'Invalid Syntax' и 'Extension .b or .w not allowed', а
поиск этих инструкций в EWDSPIC_assemlerreference показал отсутствие их описания в этом доке.

Там (в доке) правда написано, что 'The dsPIC IAR Assembler supports the syntax as
described in the dsPIC30F Programmer's Ref Man. It compiles with the requirement of
dsPIC architecture on word alignment....' (кстати, что обозначает "on word alignment"?)

Заранее спасибо за ответы на пост.




 
 Re: IAR ASM для dsPIC
Автор: Alex B. ()
Дата:   18/07/2006 12:40

Используйте MPLAB + ASM30
В ИАРе вы не сможете не просимулировать нормально, ни контроллер прошить.


 
 и еще просто ссылка в дополнение
Автор: Vova ()
Дата:   18/07/2006 13:12

http://www.caxapa.ru/mcu/wwwboard.html?id=40658


 
 ыыы. Человек вроде ASM'ом интересовался (+)
Автор: Alex B. ()
Дата:   18/07/2006 13:34

но все равно, ага, полезно


 
 Re: IAR ASM для dsPIC
Автор: gzi ()
Дата:   18/07/2006 13:48

Изначально так и задумывалось. Но тут своя история. Модуль связи UART, доставшийся мне от
предшественников(написанный в IAR), в MPLAB нормально не работал (после 5-20 сек работы связь
обрывалась).
Диагностировать конкретную причину меня обламывал тот факт, что при выборе в настройках компилятора
оптимизации по размеру связь работала без сбоев(!) (правда до подключения остальных частей программы).
Ошибку я отнёс к разряду глюков компилятора и решил пользовать IAR, чтоб не переделывать готовый модуль,
да и иметь дело с менее глючным компилятором, что более существенно. Т.к. в проекте предпологается
использовать готовые функции, написанные на ассемблере (векторное управление 3-х фазным асинхронным
двигателем), то возникло затруднение, описанное в моём предыдущем сообщении


 
 Re: IAR ASM для dsPIC
Автор: Alex B. ()
Дата:   18/07/2006 13:59

О каком компиляторе вы говорите, если используете ассемблер???
Можно поподробней - кусок UART вам в IAR-C достался?


 
 это иар для дспиков "менее глючный"?
Автор: Vova ()
Дата:   18/07/2006 14:01

да иар для дспиков вообще лишь для галочки, так, типа обозначили, что они тоже тут и типа что-
то делают.


 
 Re: IAR ASM для dsPIC
Автор: gzi ()
Дата:   18/07/2006 14:08

Проект задумывается на С с использованием асм. функций, реализующих мат. вычисления. UART написан на
IAR-C.


 
 Re: это иар для дспиков "менее глючный"?
Автор: gzi ()
Дата:   18/07/2006 14:13

да вот тоже посмотрел IAR для AVR - dsPIC'овский каким-то урезаным выглядит

PS http://www.caxapa.ru/mcu/wwwboard.html?id=40658 как раз вчера вечером смотрел


 
 если дспик, то лучше бы взять c30 (+)
Автор: Vova ()
Дата:   18/07/2006 14:28

и несколько рихтануть под него имеющийся код, что там, кстати, такого-эдакого, что c30-ый не
компилит или компилит неправильно?

вот еще чуть-чуть из этой оперы
http://www.microchip.ru/phorum/read.php?f=2&i=103916&t=103311&v=t


 
 Re: IAR ASM для dsPIC
Автор: Alex B. ()
Дата:   18/07/2006 14:41

Ну тогда тут правильно написано
http://www.microchip.ru/phorum/read.php?f=2&i=137011&t=136969


 
 Re: если дспик, то лучше бы взять c30 (+)
Автор: gzi ()
Дата:   18/07/2006 15:01

В том-то и дело, что ничего такого там особого нету. Да и компилит, и работает. Вот только, как я
описывал, недолго.. Буду наверное всё же в MPLAB UART ковырять, может и найду, что глючит.
Всем спасибо за помощь!


 
 надо искать
Автор: Vova ()
Дата:   18/07/2006 15:05

если работает, но недолго, то это странно, но не очень ;)

что такого происходит примерно с такой же периодичностью? как с сохранением контекста в
обработчиках? ну и т.д. Т.е. удачи ;)


 
 Re: надо искать
Автор: gzi ()
Дата:   18/07/2006 18:17

Периодичность вряд ли имеет место, т.к. связь обрывается через время 2-25 сек после запуска скорее в
случайном порядке. Удивляет то, что при выборе оптимизации по размеру UART работает без сбоев при том же
исходном коде.
С чем может быть связана такая ошибка?


 
 не надо искать
Автор: Greg ()
Дата:   18/07/2006 18:27

gzi писал(а):

> Периодичность вряд ли имеет место, т.к. связь обрывается через
> время 2-25 сек после запуска скорее в
> случайном порядке. Удивляет то, что при выборе оптимизации по
> размеру UART работает без сбоев при том же
> исходном коде.

это известная фишка
просто не ставьте проблемную оптимизацию

> С чем может быть связана такая ошибка?
как бы сказать помягче, с несовместимостью компилятора с вашим кодом.


единственное хорошо - что вас еще хоть что-то может удивлять