Проблема с delay_ms CVAVR в AVR Studio

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
Родился
Сообщения: 19
Зарегистрирован: Чт май 28, 2009 09:43:24

Сообщение Dazler »

Народ помогите разобраться вот с такой проблемой.
Есть очень простенькая прога моргать свет диодами
используя команду delay_ms, так вот когда при отладке
AVRStudio доходит до этой строки то наглухо зависает,
тоже самое происходит и с контроллером если в него залить
эту прошивку. Значения delay_ms пробовал от 1 до 10000 разницы нет.
Брал с инета похожие проекты других людей но скомпилированные
тоже в CodeVision все работает и AVRStudio при отладке не виснет на
строчке delay и контроллер мигает как надо.
Такое ощущение что моя CodeVision при компиляции не правильно
компилирует команду delay.
Пробовал разные версии 1.25.8, 2.03.09 проблема одна,
Может я при составлении проекта в CodeVision допускаю какую не будь ошибку?
Мучаюсь уже неделю, может кто в курсе проблемы.
Спасибо.
Вложения
1.rar
Вот проект созданный в CodeVision 2.03.9 Standard
(28.17 КБ) 329 скачиваний
Последний раз редактировалось Dazler Чт июн 11, 2009 08:23:19, всего редактировалось 4 раза.
Реклама
Вымогатель припоя
Аватара пользователя
Сообщения: 540
Зарегистрирован: Пт фев 20, 2009 12:26:26

Сообщение Yftul »

Текст программы хотелось бы увидеть.
Реклама
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18786
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

1. в WinAVR нет функции delay_ms(), есть _delay_ms()
2. чтобы эти функции работали корректно, обязательно при сборке проекта должен быть определен макрос F_CPU, т.е. константа тактовой частоты (иначе возникает warning, но ошибки не будет)
3. при какой-такой отладке у вас проблемы? в AVR Studio? так она просто дико тормозит - 1 миллисекунду может секунд 20 отсчитывать :) а _delay_ms(1000) при тактовой 8 МГц слабонервных может до обморока довести - бывает и по 3 минуты тикает...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Опытный кот
Аватара пользователя
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57

Сообщение ikarab »

Dazler писал(а):Народ помогите разобраться вот с такой проблемой.
Все чмешалось - кони, люди ... то CVAVR, то WinAVR ...

Че у вас гличит то ?
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Родился
Сообщения: 19
Зарегистрирован: Чт май 28, 2009 09:43:24

Сообщение Dazler »

Вот текст:
#include <mega128>
#include <delay>
// Declare your global variables here
void main(void)
{
PORTD=0x00;
DDRD=0x07;
ACSR=0x80;
SFIOR=0x00;
while (1)
{
PORTD.2=1; // зеленый загорается
delay_ms(5000); // горит 5 секунд

PORTD.2=0; // Выключаем зеленый чтобы поморгать
delay_ms(500); //Ждем пол секунды
PORTD.2=1; // Моргаем

delay_ms(500); //Ждем пол секунды
PORTD.2=0; // Выключаем зеленый чтобы поморгать
delay_ms(500); //Ждем пол секунды
PORTD.2=1; // Моргаем
delay_ms(500); //Ждем
Как доходит до первого delay_ms все встает колом.
А что за макрос F_CPU и как им пользоваться?
Для ikarab ни чего не смешалось как я считаю что CVAVR не корректно компилирует
и из-за этого WinAVR виснет.
А насчет того что WinAVR тормозит не согласен я пробовал задержку в 1ms результат тот же,
у меня он просто виснет.
Реклама
Опытный кот
Аватара пользователя
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57

Сообщение ikarab »

Dazler писал(а): Для ikarab ни чего не смешалось

я считаю что CVAVR не корректно компилирует
и из-за этого WinAVR виснет.
Как связаны CVAVR и WinAVR ?????

Это два РАЗНЫХ САМОСТОЯТЕЛЬНЫХ самодостаточных компилятора !
Контактная информация:
Реклама
Родился
Сообщения: 19
Зарегистрирован: Чт май 28, 2009 09:43:24

Сообщение Dazler »

Вы наверно забыли что WinAVR ещё и отладчик, а
CD нет.
Опытный кот
Аватара пользователя
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57

Сообщение ikarab »

Ужас какой то ! отлаживать прогу CVAVR в WinAVR !

СЛАВА радиоКоту ! и что я таки залогинился сюда - а тоб так ни когда и не узнал что такое бывает.

Есть ведь чудный VMLAB (4 Мб ) и мощнейший PROTEUS PROTEUS (70 Мб)

смешная АВР студия ( больше 100 Мб наверняка ) ...
Контактная информация:
Опытный кот
Аватара пользователя
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57

Сообщение ikarab »

ARV писал(а):3. при какой-такой отладке у вас проблемы? в AVR Studio?
в WinAVR симулирует код из CVAVR ! я в шоке :shock: :cry:
Контактная информация:
Родился
Сообщения: 19
Зарегистрирован: Чт май 28, 2009 09:43:24

Сообщение Dazler »

Уважаемый если вы не можете сказать по сути в чем может быть проблема то не чего здесь ФЛУД разводить.
Какие есть программы
я и сам знаю. Вот на любом форуме находятся такие которые по теме ни чего не знают только воду льют.
Родился
Сообщения: 19
Зарегистрирован: Чт май 28, 2009 09:43:24

Сообщение Dazler »

Тфю ты чайник я.
Прошу прощения перепутал не WinAVR а
AVRStudio.
Я делал проект в CV а
пытаюсь отлаживать в
AVRStudio так вот она и виснет на строке delay.
Еще раз сори.
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18786
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

Dazler писал(а):пытаюсь отлаживать в AVRStudio
так вот она и виснет на строке delay
см. выше
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Опытный кот
Аватара пользователя
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57

Сообщение ikarab »

Dazler писал(а):AVRStudio так вот она и виснет на строке delay.
! PROTEUS порой прям в реал-тайме паузы строчит !

А вот CVAVR ну ОЧЕНЬ редко ошибается ! Особенно в таких пустяках как паузы.

Возможно причину ARV назвал, но мне кажется что в паузах все равно видно как счет циклов и микросекунд идет в леом окошке симуляции Студии. А если правда виснет, то возможно не стыковка форматов файлов отладочной информации .COF

Тогда я рекомендую попробовать CVAVR 1.25.9 если у вас CVAVR 2
по теме ни чего не знают
Дак вот и пытаюсь нахвататься. Выше уж поблагодарил радиоКота ! :lol:
Последний раз редактировалось ikarab Ср июн 10, 2009 20:00:44, всего редактировалось 1 раз.
Контактная информация:
Родился
Сообщения: 19
Зарегистрирован: Чт май 28, 2009 09:43:24

Сообщение Dazler »

ARV писал(а):
Dazler писал(а):пытаюсь отлаживать в AVRStudio
так вот она и виснет на строке delay
см. выше
Так чего смотреть не понятно.
Еще раз может я не ясно излогаю,
Я создаю проект в CodeVision пишу в нем программу на Си
потом компилирую после компиляции получаю кучу файлов .с, .hex, .asm, и .cof так вот с помощю этого .cof я открываю свой проект в AVRStudio и запускаю его в пошаговом режиме когда шаг доходит до
строчки delay_ms эмулятор зависает т.е просто делает стоп.
Тоже происходит и с реальным контролером правда при разных значения
delay_ms диод либо сударожно мигает либо горит постоянно.
Вот в этом и проблема.
Опытный кот
Аватара пользователя
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57

Сообщение ikarab »

Дак прицепить архив с вашим проектом.

я советую МАСТЕРОМ создавать код в CVAVR - если вы делали иначе то возможно в свойствах проекта у вас не тот МК указан...

Вообще гадать долго можно не имея проекта ...
Контактная информация:
Родился
Сообщения: 19
Зарегистрирован: Чт май 28, 2009 09:43:24

Сообщение Dazler »

ikarab писал(а):
Dazler писал(а):AVRStudio так вот она и виснет на строке delay.
! PROTEUS порой прям в реал-тайме паузы строчит !

А вот CVAVR ну ОЧЕНЬ редко ошибается ! Особенно в таких пустяках как паузы.
по теме ни чего не знают
Дак вот и пытаюсь нахвататься. Выше уж поблагодарил радиоКота ! :lol:
Ты уж извини если если я обидел.
Я ни хотел извиняй.
Родился
Сообщения: 19
Зарегистрирован: Чт май 28, 2009 09:43:24

Сообщение Dazler »

ikarab писал(а):Дак прицепить архив с вашим проектом.

я советую МАСТЕРОМ создавать код в CVAVR - если вы делали иначе то возможно в свойствах проекта у вас не тот МК указан...

Вообще гадать долго можно не имея проекта ...
Нет делал мастером. Прикрепил проект в шапке.
Опытный кот
Аватара пользователя
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57

Сообщение ikarab »

Студия не показывает свою работу в отсчете пауз как ARV и предупреждал.

Я перекомпилил в CVAVR 1.25.9 - паузы отрабатываются

Изображение
Вложения
CVAVR 1.25.9.rar
(64.97 КБ) 278 скачиваний
Контактная информация:
Опытный кот
Аватара пользователя
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57

Сообщение ikarab »

Почему то в студии у меня 2 брейкпоинта всего ставится - так и должно быть чтоль ?

Atmega128 есть и в ВМЛАБ и в ПРОТЕУС - там этих поинтов можно кучу ставить.

А главное в них индицируется бег времени и в реалтайме и не в реал.
Контактная информация:
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18786
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

я никогда не симулировал в студии проекты из-под других компиляторов, кроме WinAVR... но в "родных" ставится сколько угодно брейкпоинтов, причем в этой части протеус отдыхает - бряки можно ставить и по условию, и по счетчику, и по адресу, и по доступу - все и перечислить непросто...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»