Search found 27 matches

by teuer
Sun Jan 08, 2012 11:37 am
Forum: SECU-3 Русский (General)
Topic: Изучаем язык Си (Learn C language)
Replies: 62
Views: 82751

Re: Изучаем язык Си (Learn C language)

Предлагаю обкатать в протеусе или на железе следующее изменение: (действительно только для 60-2) ckps.c:833 //before starting the ignition it is left to count less than 2 teeth. It is necessary to prepare the compare module //(до запуска зажигания осталось отсчитать меньше 2-x зубов. Необходимо подг...
by teuer
Sat Nov 05, 2011 5:35 pm
Forum: SECU-3 Русский (General)
Topic: Изучаем язык Си (Learn C language)
Replies: 62
Views: 82751

Re: Изучаем язык Си (Learn C language)

Сначала я использовал аналогичную опцию
CFLAGS += --combine -fwhole-program

Но в версии 4.6. она перестала работать, ее именно в этой версии заменили на -flto
by teuer
Sat Nov 05, 2011 5:12 pm
Forum: SECU-3 Русский (General)
Topic: Изучаем язык Си (Learn C language)
Replies: 62
Views: 82751

Re: Изучаем язык Си (Learn C language)

Makefile прицепить не удается, пришлось упаковать.
Totalcommander это должен открыть.
by teuer
Sat Nov 05, 2011 4:47 pm
Forum: SECU-3 Русский (General)
Topic: Изучаем язык Си (Learn C language)
Replies: 62
Views: 82751

Re: Изучаем язык Си (Learn C language)

>Что делают эти опции? Эти опции включают оптимизацию на стадии линковки. Как я понимаю, оптимизация, например -Os, происходит для каждого модуля *.c adc.c ckps.c... Далее происходит генерация объектников, которые в конце линкуются. С этими опциями объектник дополняется информацией, используемой лин...
by teuer
Sat Nov 05, 2011 1:29 pm
Forum: SECU-3 Русский (General)
Topic: Изучаем язык Си (Learn C language)
Replies: 62
Views: 82751

Re: Изучаем язык Си (Learn C language)

Вероятно, дело в том, что я не пользуюсь WinAVR. У меня RedHat-овские сборки avr-gcc. Они периодически обновляются, поэтому точно сейчас сказать не могу конкретную версию компилятора, на прошивке которого я катаюсь. Летнюю эпопею помню, даже учавствовал, но думаю, все проблемы были связаны с допилив...
by teuer
Sat Nov 05, 2011 10:59 am
Forum: SECU-3 Русский (General)
Topic: Изучаем язык Си (Learn C language)
Replies: 62
Views: 82751

Re: Изучаем язык Си (Learn C language)

IAR использовать нет возможности.
С весны катаюсь на прошивке, сгенерированной GCC.
Кроме проблем с местом для версии с регулировкой времени накопления, ничего плохого об этом копиляторе не скажу.
by teuer
Sat Nov 05, 2011 9:46 am
Forum: SECU-3 Русский (General)
Topic: Изучаем язык Си (Learn C language)
Replies: 62
Views: 82751

Re: Изучаем язык Си (Learn C language)

Для тех,кто пользуется GCC и у кого не хватает места в процессоре: В Makefile добавьте строчки CFLAGS += -flto LDFLAGS += -flto Без них выдавало: section .firmware_data loaded at [00003263,00003dff] overlaps section .text loaded at [00000000,00003365] section .data loaded at [00003366,0000336d] over...
by teuer
Tue Aug 23, 2011 6:38 pm
Forum: SECU-3 Прошивки (Firmware)
Topic: Портирование кода прошивки на GCC (Porting firmware to GCC)
Replies: 135
Views: 140025

Re: Портирование кода прошивки на GCC

Мой опыт борьбы с GCC У него проблема с promotion. Константа, описанная #define CKPS_ON_START_SKIP_COGS 30 будет везде считаться как int т.е. 2 байта. Что может повлиять на скорость вычисления. Нужно обязательно указывать явно #define CKPS_ON_START_SKIP_COGS (uint8_t)30 Из этой же оперы строка 156 и...
by teuer
Sat Aug 20, 2011 5:24 pm
Forum: SECU-3 Русский (General)
Topic: Изучаем язык Си (Learn C language)
Replies: 62
Views: 82751

Re: Изучаем язык Си (Learn C language)

Попробуйте скомпилировать вот это код. avr-gcc -c -mmcu=atmega16 -gdwarf-2 -Os gcc_test.c avr-objdump -S gcc_test.o На разных версиях GCC можно увидеть самый невероятный результат. gcc_test.c: #include <stdint.h> #include <avr/io.h> #define bool uint8_t extern bool i2cSend (uint8_t); void sneekle1 (...
by teuer
Sat Aug 20, 2011 10:19 am
Forum: SECU-3 Прошивки (Firmware)
Topic: Управление накопл. энергии катушек зажигания (Dwell control)
Replies: 281
Views: 268935

Re: Управление накоплением энергии катушек зажигания

Проверил прошивку из репозитория: все отлично работает. Подключен, пока, один канал с объединением и раздачей искры трамблером. Модуль самодельный с IGBT транзисторами и с двумя M52501A в качестве драйверов. Двигатель раскручивал до 6.5 тыс. Время накопления стоит 5мс. Пропал провал при старте с мес...