|
scmRTOS & MSPGCC. Ошибка компиляции примеров |
|
|
|
Jul 26 2011, 19:00
|
Участник

Группа: Участник
Сообщений: 39
Регистрация: 23-11-05
Пользователь №: 11 254

|
Под линукс в mspgcc4 (gcc-4.4.5) и 3я и 4я версии ОС при компиляции выдают следующее: Цитата --- assembling ../scmRTOS/MSP430/OS_Target_asm.S... ../scmRTOS/MSP430/OS_Target_asm.S: Assembler messages: ../scmRTOS/MSP430/OS_Target_asm.S:125: Error: unknown opcode `vector_(11' Аналогично ругается mspgcc (20110716) под виндовс. Кстати поясните пожалуйста в чем цимус существования двух версий - mspgcc и mspgcc4. Вторая вроде как заявляет что она хороша тем что базируется на 4й версии GCC, однако обычный mspgcc тоже вроде как на четвертой и даже на 4.5 против 4.4 у mspgcc4?
Сообщение отредактировал aliko - Jul 26 2011, 19:01
|
|
|
|
|
 |
Ответов
|
Jul 27 2011, 11:30
|
Участник

Группа: Участник
Сообщений: 39
Регистрация: 23-11-05
Пользователь №: 11 254

|
Цитата(AHTOXA @ Jul 27 2011, 14:47)  Ух, что-то они всё поменяли... Я в отпуске, сходу не разобрался  Как теперь объявлять обработчик прерывания в ассемблерном файле? Пока что пользуюсь mspgcc4 под виндовс, только он нормально компилит 3ю версию ОС. С 4й тоже не справляется. Почему-то не работают объявления портов вида portN.out.pinN при их изменении ничего не происходит, приходится пользоваться объявлениями вида PNOUT. Кроме того заметил что в последних mspgcc убрали кучу заголовочных файлов типа iostructures.h, adc.h в которых были удобные структурки для работы с регистрами. Кроме того последний mspgcc ругается на включения файла "io.h" который уже депрекейтед и вместо него предлагает включать msp430.h. Вобщем с компиляторами GCC зоопарк.
|
|
|
|
|
Jul 27 2011, 11:51
|

Беспросветный оптимист
     
Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646

|
Цитата(aliko @ Jul 27 2011, 15:30)  Почему-то не работают объявления портов вида portN.out.pinN при их изменении ничего не происходит Это была примочка divil'а, видимо решили её выкинуть. Кстати, я с ней основательно накололся, не советую использовать. Почему-то иногда игнорирует __attribute__((packed)), с которым объявлены структуры портов, и в случае выравнивания по границе слова начинается дурдом... Я немного доработал макросы Аскольда Волкова (ещё не совсем до конца), получается не хуже, но главное - 100% предсказуемо. CODE #include "_useful_gpio.h" // Макросы Аскольда Волкова
#define SYS_WDT P4,7,H #define PWR_WDT P6,0,H
static __inline__ void WatchDogInit(void) { InitAsOut(PWR_WDT);
InitAsOut(SYS_WDT); }
static __inline__ void ClearWatchDog(void) { toggle_pin(SYS_WDT); }
static __inline__ void ClearPWRWatchDog(void) { toggle_pin(PWR_WDT); }
Цитата(aliko @ Jul 27 2011, 15:30)  Кроме того последний mspgcc ругается на включения файла "io.h" который уже депрекейтед и вместо него предлагает включать msp430.h. Вобщем с компиляторами GCC зоопарк.  Видимо, добавили много новых семейств, и чтобы не запутаться между версиями, решили отсечь всё старьё. Однако, радует, что проект вылез из подполья и продолжает развиваться.
--------------------
Программирование делится на системное и бессистемное. ©Моё :) — а для кого-то БГ — это Bill Gilbert =)
|
|
|
|
|
Jul 27 2011, 13:02
|
Участник

Группа: Участник
Сообщений: 39
Регистрация: 23-11-05
Пользователь №: 11 254

|
Цитата(MrYuran @ Jul 27 2011, 15:51)  Я немного доработал макросы Аскольда Волкова (ещё не совсем до конца), получается не хуже, но главное - 100% предсказуемо. А можно поподробнее про эти макросы? что-то типа такого? Код #define P_PWR 4,7,0
#define port_on(TRIPLE) xport_on(TRIPLE) #define xport_on(PORT, PIN, ONSTATE) (ONSTATE ? P##PORT##OUT |= BIT##PIN : P##PORT##OUT &= ~BIT##PIN)
#define port_off(TRIPLE) xport_off(TRIPLE) #define xport_off(PORT, PIN, ONSTATE) (!ONSTATE ? P##PORT##OUT |= BIT##PIN : P##PORT##OUT &= ~BIT##PIN) использовать: Код port_on(P_PWR); port_off(P_PWR);
|
|
|
|
|
Jul 27 2011, 14:30
|

фанат дивана
     
Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684

|
Цитата(aliko @ Jul 27 2011, 19:02)  А можно поподробнее про эти макросы? Вот они:
macros.h.zip ( 731 байт )
Кол-во скачиваний: 100Или, если уж мы в ветке про scmRTOS, то гляньте на этот вариант.
--------------------
Если бы я знал, что такое электричество...
|
|
|
|
Сообщений в этой теме
aliko scmRTOS & MSPGCC. Ошибка компиляции примеров Jul 26 2011, 19:00 MrYuran Цитата(AHTOXA @ Jul 27 2011, 14:47) Наско... Jul 27 2011, 11:02    MrYuran Цитата(aliko @ Jul 27 2011, 17:02) А можн... Jul 27 2011, 13:14      aliko Цитата(AHTOXA @ Aug 1 2011, 08:28) Приатт... Aug 1 2011, 11:43       MrYuran Цитата(aliko @ Aug 1 2011, 15:43) Кстати,... Aug 1 2011, 11:49        aliko Цитата(MrYuran @ Aug 1 2011, 15:49) Код# ... Aug 1 2011, 12:39         AHTOXA Цитата(aliko @ Aug 1 2011, 18:39) Оказало... Aug 1 2011, 14:13          aliko Цитата(AHTOXA @ Aug 1 2011, 18:13) Попроб... Aug 2 2011, 08:47           AHTOXA Цитата(aliko @ Aug 2 2011, 14:47) Кстати,... Aug 2 2011, 09:30            aliko Цитата(AHTOXA @ Aug 2 2011, 13:30) Победи... Aug 2 2011, 10:08             AHTOXA Цитата(aliko @ Aug 2 2011, 16:08) В то же... Aug 2 2011, 11:06              aliko Цитата(AHTOXA @ Aug 2 2011, 15:06) Дык, п... Aug 2 2011, 11:44               AHTOXA Я разобрался, в чём отличие мейкфайлов. В мейкфайл... Aug 3 2011, 03:44                AHTOXA Проверил на небольшом проекте. Работает.
Расстроил... Aug 3 2011, 05:28                 MrYuran Цитата(AHTOXA @ Aug 3 2011, 09:28) 2. Не ... Aug 3 2011, 06:19                 aliko Цитата(AHTOXA @ Aug 3 2011, 09:28) 2. Не ... Aug 3 2011, 07:24                  MrYuran Цитата(aliko @ Aug 3 2011, 11:24) А чем ч... Aug 3 2011, 07:35                   aliko Цитата(MrYuran @ Aug 3 2011, 11:35) Все ф... Aug 3 2011, 07:40                    AHTOXA Библиотечные будут поштучно. В принципе ничего стр... Aug 3 2011, 07:53                     aliko Цитата(AHTOXA @ Aug 3 2011, 11:53) ЗЫ. Со... Aug 3 2011, 07:59                      AHTOXA Цитата(aliko @ Aug 3 2011, 13:59) Кодldfl... Aug 3 2011, 08:04                       aliko Цитата(AHTOXA @ Aug 3 2011, 12:04) Вместо... Aug 3 2011, 08:08                        AHTOXA Cобираться-то оно должно. Другое дело, что не рабо... Aug 3 2011, 08:34                         aliko Цитата(AHTOXA @ Aug 3 2011, 12:34) Нашёл ... Aug 3 2011, 08:43                          AHTOXA В моей рекомендации и так все строчки initX исправ... Aug 3 2011, 08:53                           aliko Цитата(AHTOXA @ Aug 3 2011, 12:53) Вы с к... Aug 3 2011, 09:10                            AHTOXA Аминь
ЗЫ. Раз уж вы начали писать в рассылку mspg... Aug 3 2011, 09:14                         Сергей Борщ QUOTE (AHTOXA @ Aug 3 2011, 11:34) Нашёл ... Aug 8 2011, 08:44                          AHTOXA Цитата(Сергей Борщ @ Aug 8 2011, 14:44) А... Aug 8 2011, 09:52 aliko А каков смысл редактирования KEEP поясните пожалуй... Aug 3 2011, 09:15 AHTOXA Без KEEP выкидывается не только неиспользуемый код... Aug 3 2011, 09:17  aliko Цитата(AHTOXA @ Aug 3 2011, 13:17) Без KE... Aug 3 2011, 10:09   AHTOXA Цитата(aliko @ Aug 3 2011, 16:09) Похоже ... Aug 3 2011, 11:26    aliko Цитата(AHTOXA @ Aug 3 2011, 15:26) Единст... Aug 3 2011, 11:29     AHTOXA Закоммитил исправления в pre-4. Aug 5 2011, 04:57      aliko Цитата(AHTOXA @ Aug 5 2011, 08:57) Закомм... Aug 5 2011, 08:27 aliko Проблемы с GCC кажется продолжаются.
При компиляци... Aug 29 2011, 10:56 aliko Похоже я понял в чем проблема. Злобный компилятор ... Aug 30 2011, 08:35 aliko Причина ошибки во флаге -fdata-sections который н... Aug 30 2011, 12:16 Сергей Борщ QUOTE (aliko @ Aug 30 2011, 15:16) лучше ... Aug 30 2011, 13:04
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|