Search found 27 matches
- 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 зубов. Необходимо подг...
- 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
CFLAGS += --combine -fwhole-program
Но в версии 4.6. она перестала работать, ее именно в этой версии заменили на -flto
- 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 это должен открыть.
Totalcommander это должен открыть.
- 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... Далее происходит генерация объектников, которые в конце линкуются. С этими опциями объектник дополняется информацией, используемой лин...
- 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. Они периодически обновляются, поэтому точно сейчас сказать не могу конкретную версию компилятора, на прошивке которого я катаюсь. Летнюю эпопею помню, даже учавствовал, но думаю, все проблемы были связаны с допилив...
- 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.
Кроме проблем с местом для версии с регулировкой времени накопления, ничего плохого об этом копиляторе не скажу.
С весны катаюсь на прошивке, сгенерированной GCC.
Кроме проблем с местом для версии с регулировкой времени накопления, ничего плохого об этом копиляторе не скажу.
- 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...
- 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 и...
- 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 (...
- Sat Aug 20, 2011 10:19 am
- Forum: SECU-3 Прошивки (Firmware)
- Topic: Управление накопл. энергии катушек зажигания (Dwell control)
- Replies: 281
- Views: 268935
Re: Управление накоплением энергии катушек зажигания
Проверил прошивку из репозитория: все отлично работает. Подключен, пока, один канал с объединением и раздачей искры трамблером. Модуль самодельный с IGBT транзисторами и с двумя M52501A в качестве драйверов. Двигатель раскручивал до 6.5 тыс. Время накопления стоит 5мс. Пропал провал при старте с мес...