Реклама на сайте DatasheetsDatasheets

KAZUS.RUN - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Книги и журналы
FAQ по электронике

  Datasheets
Поиск SMD
Онлайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Схемы и проекты
Принципиальные схемы
  Программы
Каталог сайтов
Калькуляторы
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы

Atmel AVR Studio 5

Непрочитано 12.03.2012, 14:12  
ut1wpr
Почётный гражданин KAZUS.RUN
 
Аватар для ut1wpr
 
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,613
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
ut1wpr на пути к лучшему
По умолчанию Re: Atmel AVR Studio 5

Сообщение от wellcom Посмотреть сообщение
Код:
void Pause(int ms)
{
	PORTA=0xFF;
	_delay_ms(ms);
}
А если попробовать выдержать типы данных для функции _delay_ms ?

Код:
void Pause(double ms)
{
.....
так как в библиотеке определено:

Код:
_delay_ms(double _ms)
{
…..
Мобыть компилер спотыкается об несоответствие типов данных, передаваемых в библиотечную функцию?
Реклама:
__________________
С уважением,
Vic / ut1wpr
ut1wpr вне форума  
Непрочитано 12.03.2012, 15:01  
wellcom
Временная регистрация
 
Регистрация: 25.09.2008
Сообщений: 95
Сказал спасибо: 39
Сказали Спасибо 7 раз(а) в 7 сообщении(ях)
wellcom на пути к лучшему
По умолчанию Re: Atmel AVR Studio 5

все равно матюгается таким же образом!
c:\program files\atmel\avr studio 5.1\extensions\atmel\avrgcc\3.3.1.27\avrtoolchain\ bin\../lib/gcc/avr/4.5.1/../../../../avr/include/util/delay.h(152,2: __builtin_avr_delay_cycles expects an integer constant.
make: *** [AVRGCC1.o] Error 1
wellcom вне форума  
Непрочитано 12.03.2012, 16:37  
ut1wpr
Почётный гражданин KAZUS.RUN
 
Аватар для ut1wpr
 
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,613
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
ut1wpr на пути к лучшему
По умолчанию Re: Atmel AVR Studio 5

Сообщение от wellcom Посмотреть сообщение
все равно матюгается таким же образом!
c:\program files\atmel\avr studio 5.1\extensions\atmel\avrgcc\3.3.1.27\avrtoolchain\ bin\../lib/gcc/avr/4.5.1/../../../../avr/include/util/delay.h(152,2: __builtin_avr_delay_cycles expects an integer constant.
make: *** [AVRGCC1.o] Error 1
Странно. С ума сошла старушка. Никто ведь не подсовывает ей float...
Потому я и не люблю библиотеки CV..
Попробуйте вызвать _delay_ms из главного модуля, сохранится ли ошибка...
зы Вижу, Вы уже на Кота кросспостинг сделали...
Попробуйте в вашей паузе сделать явное приведение типа переменной:
_delay_ms((int)ms);
Или вот так:
void Pause(int ms){
int m = ms;
PORTA=0xFF;
_delay_ms(m);
}
__________________
С уважением,
Vic / ut1wpr

Последний раз редактировалось ut1wpr; 12.03.2012 в 16:49.
ut1wpr вне форума  
Непрочитано 12.03.2012, 16:46  
wellcom
Временная регистрация
 
Регистрация: 25.09.2008
Сообщений: 95
Сказал спасибо: 39
Сказали Спасибо 7 раз(а) в 7 сообщении(ях)
wellcom на пути к лучшему
По умолчанию Re: Atmel AVR Studio 5

Сообщение от ut1wpr Посмотреть сообщение
Странно. С ума сошла старушка. Никто ведь не подсовывает ей float...
Потому я и не люблю библиотеки CV..
Попробуйте вызвать _delay_ms из главного модуля, сохранится ли ошибка...
Дело в том, что эта библиотека ставилась вместе с AVR Studio 5 (или с WinAVR), но никак не относиться к CVAVR.

Убрав ф-цию Pause - компилиться нормально. Может какие настройки где то нада подправить?
wellcom вне форума  
Непрочитано 12.03.2012, 16:51  
Саня
Заблокирован
 
Регистрация: 14.09.2009
Сообщений: 1,252
Сказал спасибо: 49
Сказали Спасибо 520 раз(а) в 317 сообщении(ях)
Саня на пути к лучшему
По умолчанию Re: Atmel AVR Studio 5

Переведите сами: expects an integer constant.
Саня вне форума  
Непрочитано 12.03.2012, 16:56  
wellcom
Временная регистрация
 
Регистрация: 25.09.2008
Сообщений: 95
Сказал спасибо: 39
Сказали Спасибо 7 раз(а) в 7 сообщении(ях)
wellcom на пути к лучшему
По умолчанию Re: Atmel AVR Studio 5

Сообщение от Саня Посмотреть сообщение
Переведите сами: expects an integer constant.
я это переводил перед тем как писать на форуме, в том то и дело, что ожидается целая константа типа int, так я скармливаю числа типа int...

void Pause(int ms)
{
PORTA=0xFF;
_delay_ms(ms);
}
если убрать передачу в параметр ф-ции, то все работает нормально....но почему он тогда не передается или передается не правильно????

Последний раз редактировалось wellcom; 12.03.2012 в 16:59.
wellcom вне форума  
Непрочитано 12.03.2012, 16:58  
ut1wpr
Почётный гражданин KAZUS.RUN
 
Аватар для ut1wpr
 
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,613
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
ut1wpr на пути к лучшему
По умолчанию Re: Atmel AVR Studio 5

Сообщение от Саня Посмотреть сообщение
Переведите сами: expects an integer constant.
Вот и я о том же.. Ожидает целочисленную константу, а ему подсовывают переменную с неопределенным типом. Наличие определения типа в заголовке функции служит лишь для проверки на соотвествие при компиляции, фактически тип переменной ms в теле функции нигде не объявлен, а мы ее передаем другой функции.. Потому и попросил человека сделать кастинг.
__________________
С уважением,
Vic / ut1wpr
ut1wpr вне форума  
Непрочитано 12.03.2012, 17:32  
kison
Почётный гражданин KAZUS.RUN
 
Регистрация: 13.12.2004
Сообщений: 3,168
Сказал спасибо: 11
Сказали Спасибо 691 раз(а) в 503 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: Atmel AVR Studio 5

void Pause(int ms)
{
PORTA=0xFF;
while(ms--){_delay_ms(1)};
}
kison вне форума  
Эти 2 пользователя(ей) сказали Спасибо kison за это сообщение:
pay_to_play (25.05.2012), wellcom (12.03.2012)
Непрочитано 12.03.2012, 17:58  
wellcom
Временная регистрация
 
Регистрация: 25.09.2008
Сообщений: 95
Сказал спасибо: 39
Сказали Спасибо 7 раз(а) в 7 сообщении(ях)
wellcom на пути к лучшему
По умолчанию Re: Atmel AVR Studio 5

Сообщение от kison Посмотреть сообщение
void Pause(int ms)
{
PORTA=0xFF;
while(ms--){_delay_ms(1)};
}
Такой подход заработал. Но это дополнительные телодвижения, которых по идее не должно быть так как на проверку в цикле тоже тратиться время. В любом случае спасибо.

Последний раз редактировалось wellcom; 12.03.2012 в 18:02.
wellcom вне форума  
Непрочитано 12.03.2012, 18:07  
kison
Почётный гражданин KAZUS.RUN
 
Регистрация: 13.12.2004
Сообщений: 3,168
Сказал спасибо: 11
Сказали Спасибо 691 раз(а) в 503 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: Atmel AVR Studio 5

Сообщение от wellcom Посмотреть сообщение
Такой подход заработал. Но это дополнительные телодвижения, которых по идее не должно быть так как на проверку в цикле тоже тратиться время. В любом случае спасибо.
Ну сделайте while(ms--){_delay_ms(0.999)}; Можно подобрать точно.
В любом случае аргумент _delay_ms должен быть константой известной на этапе компиляции. Переменная не годится - задержка формируется из цикла. Количество проходов по нему надо либо считать, либо знать заранее. Если считать, то время расчета тоже приплюсуется к задержке.
kison вне форума  
 
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
На WinAVR + AVR Studio c CVAVR Vetal-soft Embedd С 87 03.03.2013 20:31
Связка Proteus и AVR Studio 4 wws63 Proteus 1 10.02.2011 02:26
Вопрос по AVR Studio (Adress na) Langalec Микроконтроллеры, АЦП, память и т.д 8 17.01.2011 20:21
Си-шный компилятор в AVR Studio меняет последовательность команд svv11 Микроконтроллеры, АЦП, память и т.д 29 21.03.2010 05:47
AVR Studio и AT89S51 - нужна помощь roobeeaz Микроконтроллеры, АЦП, память и т.д 5 13.03.2010 18:34


Часовой пояс GMT +4, время: 01:17.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.