Например TDA7294

Форум РадиоКот • Просмотр темы - Codeblock и winavr .... и возникшая проблема от сего синтеза
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Вс июл 27, 2025 01:43:30

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 30 ]  1,  
Автор Сообщение
Не в сети
 Заголовок сообщения: Codeblock и winavr .... и возникшая проблема от сего синтеза
СообщениеДобавлено: Сб авг 05, 2017 16:57:00 
Первый раз сказал Мяу!

Зарегистрирован: Вс авг 21, 2016 19:53:33
Сообщений: 34
Рейтинг сообщения: 0
Здравствуйте друзья, помогите разобраться, вот у меня codeblock (с winavr) и студия АВР. Так как студия на моем компютере немного долго включается, компилирует тоже ( код из нескольких строк с морганием диодом и пары delay-ев занял секунд 10) и проекты долго включает.... ну тут комп такой, что с ним только не делал, но сейчас не об этом. И вот, значит codeblock. Идентичный код( моргалок со студии), компилированный с код блока ведет себя странно. Ну именно delay. Пара варнингов типо :
Код:
warning: "F_CPU" redefined
warning: this is the location of the previous definition
warning "Compiler optimizations disabled; functions from <util/delay.h> won't work as designed"

Вот и всё что он мне говорит. А вот, собственно, что выходит - заливаю hex в протеус, и там где стоит delay в коде он его игнорирует, и все что стоит за ним. По ошибкам ничего конкретного не нашел. вот код
Спойлер
Код:

#define F_CPU 1000000UL
#include <avr/io.h>
#include <util/delay.h>



int main(void)
{
DDRD= 0x03;
PORTD=0x00;

    while(1){
 
    if  (PIND&(1<<PD2)){

      _delay_ms(200);
       PORTD |= (1<<PD0);
       _delay_ms(200);
       PORTD &= ~(1<<PD0);
    }
    }
    return 0;
}


То есть, в данном случае проверка кнопки есть, реакции нету. Если уберу первый _delay_ms(200) - загорится, если нажать кнопку, ... и будет продолжать гореть ни разу не моргнув.

Надо заметить, что студия на этот код не ругается и делает работоспособным, но делает это чертовски мееееееедленно.
Может, знает кто в чем дело?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Codeblock и winavr .... и возникшая проблема от сего син
СообщениеДобавлено: Сб авг 05, 2017 19:54:58 
Друг Кота
Аватар пользователя

Карма: 51
Рейтинг сообщений: 2108
Зарегистрирован: Пт ноя 11, 2016 05:48:09
Сообщений: 6998
Откуда: Сердце Пармы
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (2)
антивирь? (какую нибудь песочницу включает)

_________________
Просто не учи физику в школе, и вся твоя жизнь будет наполнена чудесами и волшебством :)
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Codeblock и winavr .... и возникшая проблема от сего син
СообщениеДобавлено: Сб авг 05, 2017 20:06:08 
Родился

Зарегистрирован: Вт окт 20, 2009 06:22:23
Сообщений: 18
Откуда: Нижний Новгород
Рейтинг сообщения: 0
WinAvr устарел давно. Установите Atmel AVR Toolchain и укажите к нему пути в настройках компилятора.
Включите оптимизацию.
уберите #define F_CPU 1000000UL


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Codeblock и winavr .... и возникшая проблема от сего син
СообщениеДобавлено: Сб авг 05, 2017 20:56:25 
Нашел транзистор. Понюхал.

Карма: 1
Рейтинг сообщений: 25
Зарегистрирован: Пт сен 21, 2007 17:53:23
Сообщений: 190
Откуда: Зарайск
Рейтинг сообщения: 0
У CodeBlock F_CPU задается в project / build options -> закладка defines
и #define F_CPU в коде лишняя о чем и сообщает компилятор
дальше сообщение, что задержка не будет работать как положенно
А всякие "чудеса" происходят от разных опций компилятора под студию и кодеблок
посмотрите какие настройки стоят в студии и какие в кодеблоке

PS самая низкопотребляемая по памяти компиляция - make all
редактор - в винде notepad++, под linux есть Geany


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Codeblock и winavr .... и возникшая проблема от сего син
СообщениеДобавлено: Сб авг 05, 2017 22:01:18 
Первый раз сказал Мяу!

Зарегистрирован: Вс авг 21, 2016 19:53:33
Сообщений: 34
Рейтинг сообщения: 0
Цитата:
антивирь? (какую нибудь песочницу включает)

- у меня антивирь порядошный, о таком он сообщает

Цитата:
WinAvr устарел давно. Установите Atmel AVR Toolchain и укажите к нему пути в настройках компилятора.
Включите оптимизацию.

-Убрать winavr, поставить Atmel AVR Toolchain, хорошо. Надо будет найти как включать оптимизацию :)))

Цитата:
А всякие "чудеса" происходят от разных опций компилятора под студию и кодеблок
посмотрите какие настройки стоят в студии и какие в кодеблоке

-Ам, а есть предложения, на какие настройки обратить внимание?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Codeblock и winavr .... и возникшая проблема от сего син
СообщениеДобавлено: Сб авг 05, 2017 23:58:32 
Родился

Зарегистрирован: Вт окт 20, 2009 06:22:23
Сообщений: 18
Откуда: Нижний Новгород
Рейтинг сообщения: 0
Цитата:
Надо будет найти как включать оптимизацию :)))

Переключите цель сборки на release.
Далее project,build options,слева-release, ищете optimization, -O.
Была у меня такая проблема уже :))


Вернуться наверх
 
Распродажа паяльного оборудования ATTEN!
Паяльные станции, паяльники и аксессуары по самой выгодной цене.

По промокоду radiokot скидка 10%
Не в сети
 Заголовок сообщения: Re: Codeblock и winavr .... и возникшая проблема от сего син
СообщениеДобавлено: Вс авг 06, 2017 20:26:05 
Первый раз сказал Мяу!

Зарегистрирован: Вс авг 21, 2016 19:53:33
Сообщений: 34
Рейтинг сообщения: 0
Спасибо всем, кто отозвался.

Добавлено after 2 hours 38 minutes 59 seconds:
Re: Codeblock и winavr .... и возникшая проблема от сего синтеза
Ох, мне походу еще и помощь с установкой Atmel AVR Toolchain. вообще, не нашел там никакой установки... есть- avr8-gnu-toolchain-osx-3.5.4.468-darwin.any.x86_64.tar.gz Если его разархивировать, и указать в "GNU GCC ... for AVR" и toolchain executables-е папку bin, то .... программа, всё равно, не компилируется. И просто исходную папку указывал, тоже ничего.
Как, собстно, надо то? Поясните пожалуйста.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Codeblock и winavr .... и возникшая проблема от сего син
СообщениеДобавлено: Вс авг 06, 2017 21:12:39 
Родился

Зарегистрирован: Вт окт 20, 2009 06:22:23
Сообщений: 18
Откуда: Нижний Новгород
Рейтинг сообщения: 0
Т.к у Вас уже есть студия - посмотрите где-нибудь в C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Codeblock и winavr .... и возникшая проблема от сего син
СообщениеДобавлено: Вс авг 06, 2017 21:43:16 
Первый раз сказал Мяу!

Зарегистрирован: Вс авг 21, 2016 19:53:33
Сообщений: 34
Рейтинг сообщения: 0
...Да, где то там я их нашел). Поставил оптимизацию... Теперь он не ругается ( ни одного варнинга ), но продолжает решительно игнорировать delay-и.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Codeblock и winavr .... и возникшая проблема от сего син
СообщениеДобавлено: Вс авг 06, 2017 22:15:47 
Родился

Зарегистрирован: Вт окт 20, 2009 06:22:23
Сообщений: 18
Откуда: Нижний Новгород
Рейтинг сообщения: 0
При создании проекта правильно указали F_CPU?
Если нет, то project / build options -> закладка defines.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Codeblock и winavr .... и возникшая проблема от сего син
СообщениеДобавлено: Вс авг 06, 2017 22:23:28 
Первый раз сказал Мяу!

Зарегистрирован: Вс авг 21, 2016 19:53:33
Сообщений: 34
Рейтинг сообщения: 0
Убрал из кода переназначение F_CPU. Менял в "билд опшоне"- изменений никаких.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Codeblock и winavr .... и возникшая проблема от сего син
СообщениеДобавлено: Вс авг 06, 2017 22:30:53 
Родился

Зарегистрирован: Вт окт 20, 2009 06:22:23
Сообщений: 18
Откуда: Нижний Новгород
Рейтинг сообщения: 0
Что у Вас во вкладке Settings->compiller->Search directories-> Compiller и Linker?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Codeblock и winavr .... и возникшая проблема от сего син
СообщениеДобавлено: Вс авг 06, 2017 22:33:06 
Первый раз сказал Мяу!

Зарегистрирован: Вс авг 21, 2016 19:53:33
Сообщений: 34
Рейтинг сообщения: 0
Абсолютное ничего, а нет, пордон, это я не туда зашел ( это был просо GNU GCC compiler).... В GNU GCC compiler for AVR по 2 строки почти идентичные
C:\WinAVR\avr\include ... \lib
C:\WinAVR-20100110\avr\include ... \lib


Последний раз редактировалось Catdawr Вс авг 06, 2017 22:37:10, всего редактировалось 1 раз.

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Codeblock и winavr .... и возникшая проблема от сего син
СообщениеДобавлено: Вс авг 06, 2017 22:35:23 
Родился

Зарегистрирован: Вт окт 20, 2009 06:22:23
Сообщений: 18
Откуда: Нижний Новгород
Рейтинг сообщения: 0
Тогда Project->build options->compiller->Search directories-> Compiller и Linker?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Codeblock и winavr .... и возникшая проблема от сего син
СообщениеДобавлено: Вс авг 06, 2017 22:39:31 
Первый раз сказал Мяу!

Зарегистрирован: Вс авг 21, 2016 19:53:33
Сообщений: 34
Рейтинг сообщения: 0
Цитата:
Тогда Project->build options->compiller->Search directories-> Compiller и Linker?

А вот тут уже пусто


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Codeblock и winavr .... и возникшая проблема от сего син
СообщениеДобавлено: Вс авг 06, 2017 22:43:40 
Родился

Зарегистрирован: Вт окт 20, 2009 06:22:23
Сообщений: 18
Откуда: Нижний Новгород
Рейтинг сообщения: 0
GNU GCC compiler for AVR поставьте по умолчанию пока.
Поменяйте эти пути на те, что в студии.
Т.е. compiller C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include
linker C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\lib


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Codeblock и winavr .... и возникшая проблема от сего син
СообщениеДобавлено: Вс авг 06, 2017 22:51:58 
Первый раз сказал Мяу!

Зарегистрирован: Вс авг 21, 2016 19:53:33
Сообщений: 34
Рейтинг сообщения: 0
Да , я понял, но результата не дало. стоит ВинАвр-овские удалить?

Добавлено after 1 minute 53 seconds:
Re: Codeblock и winavr .... и возникшая проблема от сего синтеза
... Не важно, уже сделал, толку нет


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Codeblock и winavr .... и возникшая проблема от сего син
СообщениеДобавлено: Вс авг 06, 2017 22:52:58 
Родился

Зарегистрирован: Вт окт 20, 2009 06:22:23
Сообщений: 18
Откуда: Нижний Новгород
Рейтинг сообщения: 0
Я сдаюсь, у меня в железе всё работает. Не поленился и залил в attiny85 :))


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Codeblock и winavr .... и возникшая проблема от сего син
СообщениеДобавлено: Вс авг 06, 2017 22:59:15 
Первый раз сказал Мяу!

Зарегистрирован: Вс авг 21, 2016 19:53:33
Сообщений: 34
Рейтинг сообщения: 0
Дак в том то и дело. Что в студии работает а в Кблоке- нет... Ладно попробую его переустановить, еще что нибудь потыкаю, а пока спасибо за потраченое в пустую ваше время)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Codeblock и winavr .... и возникшая проблема от сего син
СообщениеДобавлено: Вс авг 06, 2017 23:02:32 
Родился

Зарегистрирован: Вт окт 20, 2009 06:22:23
Сообщений: 18
Откуда: Нижний Новгород
Рейтинг сообщения: 0
Дак в том то и дело, что у меня тоже в Коде-блоке :dont_know:


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 30 ]  1,  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y