Не могу скомпилировать прошивку из исходников

Обсуждаем прошивки, алгоритмы работы в разных режимах (например, алгоритм работы автоподсоса).
Наборы тюнингованых прошивок МПСЗ SECU (заточенных под конкретную конфигурацию двигателя)
кумыч
Posts: 1038
Joined: 27 Oct 2013, 00:51
Your CAR: Мотоциклы
SECU version: official SECU-3T
Location: Київ
Has thanked: 104 times
Been thanked: 269 times

Re: Не могу скомпилировать прошивку из исходников

Post by кумыч »

пытаюсь собрать трамблерную прошивку с управлением накопления. стянул архив "мастер". блок прошлогодний, с одним большим разъемом. тобиш - М32, правильно?

./configure.sh M32 GCC

получаю ошибку.

Code: Select all

avr-gcc -mmcu=atmega32 -DREALTIME_TABLES -DSECU3T -DTHERMISTOR_CS -DCOOLINGFAN_PWM -DDIAGNOSTICS -DHALL_OUTPUT -DFUEL_PUMP -DREV9_BOARD -DSM_CONTROL -DSTROBOSCOPE -DBL_BAUD_RATE=9600 -DSPEED_SENSOR -DINTK_HEATING -DBLUETOOTH_SUPP -DIMMOBILIZER -DLITTLE_ENDIAN_DATA_FORMAT -I. -Os -mcall-prologues  -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -ffreestanding -ffunction-sections -fno-inline-small-functions -Wl,--relax -Wall -Wstrict-prototypes -Wa,-adhlns=output/adc.o -std=gnu99 output/adc.o output/bootldr.o output/ce_errors.o output/ckps.o output/crc16.o output/eeprom.o output/fuelecon.o output/funconv.o output/idlecon.o output/ignlogic.o output/jumper.o output/knklogic.o output/knock.o output/measure.o output/params.o output/procuart.o output/secu3.o output/starter.o output/suspendop.o output/tables.o output/uart.o output/ventilator.o output/vstimer.o output/camsens.o output/fuelpump.o output/diagnost.o output/wdt.o output/ioconfig.o output/pwrrelay.o output/bc_input.o output/smcontrol.o output/choke.o output/hall.o output/bluetooth.o output/onewire.o output/immobiliz.o output/ckps2ch.o output/intkheat.o --output secu-3_app.elf -Wl,-Map=./output/secu-3_app.map,--cref -Wl,-section-start=.firmware_data=0x6EA2 -Wl,-section-start=.boot_loader=0x7C00 -lm
/usr/lib/gcc/avr/4.3.5/../../../avr/bin/ld: section .firmware_data loaded at [0000000000006ea2,0000000000007bff] overlaps section .text loaded at [0000000000000000,0000000000006f1f]
/usr/lib/gcc/avr/4.3.5/../../../avr/bin/ld: section .data loaded at [0000000000006f20,0000000000006f29] overlaps section .firmware_data loaded at [0000000000006ea2,0000000000007bff]
make: *** [secu-3_app.elf] Error 1
ak@debian:~/secu3/secu3_current/secu3app-master$ avr-gcc -v
Using built-in specs.
Target: avr
Configured with: ../src/configure -v --enable-languages=c,c++ --prefix=/usr/lib --infodir=/usr/share/info --mandir=/usr/share/man --bindir=/usr/bin --libexecdir=/usr/lib --libdir=/usr/lib --enable-shared --with-system-zlib --enable-long-long --enable-nls --without-included-gettext --disable-checking --disable-libssp --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=avr
Thread model: single
gcc version 4.3.5 (GCC) 

хотя Makefile появился..поменял опции компиляции, запустил make..ошибка

Code: Select all

avr-gcc -mmcu=atmega32 -DREALTIME_TABLES -DSECU3T -DTHERMISTOR_CS -DCOOLINGFAN_PWM -DDIAGNOSTICS -DHALL_OUTPUT -DHALL_SYNC -DDWELL_CONTROL -DREV9_BOARD -DSTROBOSCOPE -DBL_BAUD_RATE=9600 -DSPEED_SENSOR   -DLITTLE_ENDIAN_DATA_FORMAT -I. -Os -mcall-prologues  -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -ffreestanding -ffunction-sections -fno-inline-small-functions -Wl,--relax -Wall -Wstrict-prototypes -Wa,-adhlns=output/adc.o -std=gnu99 output/adc.o output/bootldr.o output/ce_errors.o output/ckps.o output/crc16.o output/eeprom.o output/fuelecon.o output/funconv.o output/idlecon.o output/ignlogic.o output/jumper.o output/knklogic.o output/knock.o output/measure.o output/params.o output/procuart.o output/secu3.o output/starter.o output/suspendop.o output/tables.o output/uart.o output/ventilator.o output/vstimer.o output/camsens.o output/fuelpump.o output/diagnost.o output/wdt.o output/ioconfig.o output/pwrrelay.o output/bc_input.o output/smcontrol.o output/choke.o output/hall.o output/bluetooth.o output/onewire.o output/immobiliz.o output/ckps2ch.o output/intkheat.o --output secu-3_app.elf -Wl,-Map=./output/secu-3_app.map,--cref -Wl,-section-start=.firmware_data=0x6EA2 -Wl,-section-start=.boot_loader=0x7C00 -lm
output/hall.o: In function `__vector_2':
hall.c:(.text.__vector_2+0x0): multiple definition of `__vector_2'
output/camsens.o:camsens.c:(.text.__vector_2+0x0): first defined here
/usr/lib/gcc/avr/4.3.5/../../../avr/bin/ld: Disabling relaxation: it will not work with multiple definitions
make: *** [secu-3_app.elf] Error 1
 
Husqvarna 610. SECU-3T
User avatar
STC
Posts: 13843
Joined: 30 Apr 2013, 23:41
Your CAR: AZLK 2140
SECU version: DIY SECU-3
Location: North Korea
Has thanked: 2160 times
Been thanked: 4335 times
Contact:

Re: Не могу скомпилировать прошивку из исходников

Post by STC »

В первом случае прошивка не влазит во FLASH
Во втором случае опции HALL_SYNC и SPEED_SENSOR несовместимы. Убери опцию SPEED_SENSOR.
Author of the SECU-3™ project http://SECU-3.org. An open source engine control unit / Ignition control system, (C) 2007.
Клуб проекта в Facebook https://www.facebook.com/groups/secu3club
Клуб проекта ВКонтакте https://vk.com/secu3club (вступаем!)
кумыч
Posts: 1038
Joined: 27 Oct 2013, 00:51
Your CAR: Мотоциклы
SECU version: official SECU-3T
Location: Київ
Has thanked: 104 times
Been thanked: 269 times

Re: Не могу скомпилировать прошивку из исходников

Post by кумыч »

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

UPD. нашел собраный менеджер) http://secu-3.org/forum/viewtopic.php?f ... 0&start=20 все открылось как надо.
Husqvarna 610. SECU-3T
LVS
Posts: 443
Joined: 30 Apr 2013, 23:41
Your CAR: ВАЗ-21074
SECU version: DIY SECU-3
Location: Россия г. Тихорецк п. Братский.
Has thanked: 12 times
Been thanked: 68 times
Contact:

Re: Не могу скомпилировать прошивку из исходников

Post by LVS »

Прошивка для SECU-3Т или SECU-3 , поделись прошивкой. Хочу брату под холл поставить, 2 блока без дела лежат разбирать не хочется.
ВАЗ-21074 SECU-3_ раздача СТАТИКА 2chiq. Коммутатор на МК PIC12F675 под прошивку 2chiq. БК под SECU-3. Карбюратор ОЗОН. САУВЗ.
кумыч
Posts: 1038
Joined: 27 Oct 2013, 00:51
Your CAR: Мотоциклы
SECU version: official SECU-3T
Location: Київ
Has thanked: 104 times
Been thanked: 269 times

Re: Не могу скомпилировать прошивку из исходников

Post by кумыч »

могу собрать любую) себе под 3Т делал.
Husqvarna 610. SECU-3T
User avatar
Romsb
Posts: 89
Joined: 12 Jan 2014, 11:39
Your CAR: I go on foot
SECU version: DIY SECU-3
Location: Almaty
Has thanked: 1 time
Been thanked: 9 times

Re: Не могу скомпилировать прошивку из исходников

Post by Romsb »

Последнюю версии прошивки (firmware v4.3) IAR & GCC, тоже не компилируют, если убрать опцию "REALTIME_TABLES".

Компиляция проходит, только если закомментировать данный код в "uart.c":
//#ifdef REALTIME_TABLES
/**Appends sender's buffer by sequence of bytes from RAM buffer
* can be used for binary data */
static void build_rb(const uint8_t* ramBuffer, uint8_t size)
{
while(size--) build_i8h(*ramBuffer++);
}
//#endif
...
//#ifdef REALTIME_TABLES
/**Recepts sequence of bytes from receiver's buffer and places it into the RAM buffer
* can be used for binary data */
static void recept_rb(uint8_t* ramBuffer, uint8_t size)
{
#ifdef UART_BINARY
uint8_t rcvsize = uart.recv_size;
#else
uint8_t rcvsize = uart.recv_size >> 1; //two hex symbols per byte
#endif
if (size > rcvsize)
size = rcvsize;
while(size--) *ramBuffer++ = recept_i8h();
}
//#endif
DLP
User avatar
STC
Posts: 13843
Joined: 30 Apr 2013, 23:41
Your CAR: AZLK 2140
SECU version: DIY SECU-3
Location: North Korea
Has thanked: 2160 times
Been thanked: 4335 times
Contact:

Re: Не могу скомпилировать прошивку из исходников

Post by STC »

Спасибо за информацию, исправлено.
Author of the SECU-3™ project http://SECU-3.org. An open source engine control unit / Ignition control system, (C) 2007.
Клуб проекта в Facebook https://www.facebook.com/groups/secu3club
Клуб проекта ВКонтакте https://vk.com/secu3club (вступаем!)
Elektron
Posts: 602
Joined: 23 May 2013, 09:36
Your CAR: М2141 с УМПО-248
SECU version: official SECU-3T
Location: Россия, Саратов
Has thanked: 10 times
Been thanked: 95 times
Contact:

Re: Не могу скомпилировать прошивку из исходников

Post by Elektron »

Скачал из репозитория релиз от 14 мая. Пытаюсь со своими опциями собрать с помощью GCC - не собирает.
Вот что пишет:
2014-06-21_213208.jpg
Набор опций тот же самый, с которым собирал прошивки до выхода релиза, не менял ничего. Я правильно понимаю, что проблемы с размером файла? - для M32 не подходит.
"Москвич" АЗЛК-2141-22, УМПО-248, Солекс-21041-...-10 (24х26) + SECU-3T (Mega644) на ДПКВ 60-2, автоподсос, управление вентилятором и питанием
User avatar
STC
Posts: 13843
Joined: 30 Apr 2013, 23:41
Your CAR: AZLK 2140
SECU version: DIY SECU-3
Location: North Korea
Has thanked: 2160 times
Been thanked: 4335 times
Contact:

Re: Не могу скомпилировать прошивку из исходников

Post by STC »

ДА, не влазит. Линковщик говорит что сегменты перекрываются. GCC не может сделать такой компактный код как иар. Попробуй последним, должно получиться.
Author of the SECU-3™ project http://SECU-3.org. An open source engine control unit / Ignition control system, (C) 2007.
Клуб проекта в Facebook https://www.facebook.com/groups/secu3club
Клуб проекта ВКонтакте https://vk.com/secu3club (вступаем!)
Elektron
Posts: 602
Joined: 23 May 2013, 09:36
Your CAR: М2141 с УМПО-248
SECU version: official SECU-3T
Location: Россия, Саратов
Has thanked: 10 times
Been thanked: 95 times
Contact:

Re: Не могу скомпилировать прошивку из исходников

Post by Elektron »

Ну, теперь объясняйте с IAR - как эту падлу победить?
Поставил IAR Embedded Workbench for AVR V6.10.2 Full.
Запускаю компиляцию, выдает вот такую хрень:
2014-06-22_222816.jpg
Стоит WinAVR2010, им раньше через GCC компилировал. Отдельно скачал и поставил GNU Make - может его еще настроить как-то надо?
"Москвич" АЗЛК-2141-22, УМПО-248, Солекс-21041-...-10 (24х26) + SECU-3T (Mega644) на ДПКВ 60-2, автоподсос, управление вентилятором и питанием
Post Reply

Return to “Прошивки”