Модераторы: PILOT, ManiaK, Mazzi
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите, разобраться с CodeVision, Непойму почему ругается 
:(
    Опции темы
max_k
Дата 14.11.2006, 11:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 14.11.2006

Репутация: нет
Всего: нет



Здравствуйте,
я новичек в программировании микроконтролеров, поэтому сразу не ругайте если что не так.
Вообщем сейчас нахожусь на стадии выбора ПО между
WinAVR и CodeVision.
CodeVision нравиться больше, но
нормальной литературы так и не нашел,
в связи с чем вопрос, где бы у него в хелпе посмотреть кодовые слова
типа PINA,delay_ms, MCUCSR, UCSRA и т.п. , а то они разные во всех ПО.
Вопрос номер 2:
Пытаюсь опросить состояние порта А 3-ого бита,
Пишу так:

..........
 if (PINA.3==0) {snd_power_off;} // 
if (PINA.3==1) if (was_pwr_off==1) snd_power_on; //
......................
На каждую строку ругается Warning
 expression witn possibly no effect,
что насколько я понял переводится как 
написанно бессмысленное выражение.
Подскажите, плз, в чем ошибка.
Спасибо.     
 

PM MAIL   Вверх
smalcom
Дата 14.11.2006, 12:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 494
Регистрация: 16.10.2004
Где: Dnepr

Репутация: 4
Всего: 7



попробуй сначала без snd_power_off и иже с ним, тоесть чтото более осмысленное посмотри хедеры библиотеки как обявлены изменения битов и портов и наконец warning не error поэтому глянь асмлистинг и покажи шо сгенерил компилер


--------------------
What DA F...???
PM MAIL WWW Skype Jabber   Вверх
max_k
Дата 14.11.2006, 12:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 14.11.2006

Репутация: нет
Всего: нет



Спасибо,
действительно, если в IF поставить не вызов функции
а присваивание значения переменной то не ругается,
тогда как правильно вызывать из if процедуру
или может ее надо как-то по другому объявлять?
Объявляю так:
void snd_power_on(void)// 
{                       // 00088880011, 
  was_pwr_off=0;// false 
  Dial_dig(0);
  Dial_dig(0);
  Dial_dig(0);
  Dial_dig(8);
  Dial_dig(8);
  Dial_dig(8);
  Dial_dig(8);
  Dial_dig(0);
  Dial_dig(0);
  Dial_dig(1);
  Dial_dig(1);
}
Объявленна перед объявлением main
PM MAIL   Вверх
smalcom
Дата 14.11.2006, 13:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 494
Регистрация: 16.10.2004
Где: Dnepr

Репутация: 4
Всего: 7



функции вызываются snd_power_off(), а не snd_power_off
попробуй так

Код

if(PINA.3 == 0)
    snd_power_off();
if(PINA.3 == 1)
    if(was_pwr_off == 1) snd_power_on();//если was_pwr_off функция то пиши was_pwr_off()

P.S. случайно не с асма пересел на кодвижн?


--------------------
What DA F...???
PM MAIL WWW Skype Jabber   Вверх
max_k
Дата 14.11.2006, 14:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 14.11.2006

Репутация: нет
Всего: нет



Ура!!! 
0 Warning
Спасибо огромное.

Цитата

P.S. случайно не с асма пересел на кодвижн?


Я бы не сказал что с асма, на асме я учился программировать МК около 2-х месяцев,
а вообще я лет 10 как пишу ПО на Дельфях, не для МК конечно.
PM MAIL   Вверх
smalcom
Дата 14.11.2006, 15:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 494
Регистрация: 16.10.2004
Где: Dnepr

Репутация: 4
Всего: 7



ну тада клацаем мне на плюс в репе  smile 


--------------------
What DA F...???
PM MAIL WWW Skype Jabber   Вверх
max_k
Дата 14.11.2006, 15:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 14.11.2006

Репутация: нет
Всего: нет



Да я клацнул,
но не тут то было:
Цитата

Обнаружена ошибка:


У Вас недостаточно постов, чтобы изменять репутацию пользователей. Необходимо 100 постов.



Как наберу 100, тогда клацну.
Еще раз Спасибо. 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Микроконтроллеры (MCU) и микропроцессоры (MPU)"
PILOT ManiaK
UniBomb Mazzi

На данный раздел помимо Правил форума распространяются текже следующие правила:


  • Прежде чем создать тему воспользуйтесь поиском или посмотрите в faq. Возможно на форуме уже есть ответ на ваш или близкий к вашему вопрос.
  • В заголовке темы в квадратных скобках обозначьте используемое семейство микроконтроллера: [avr],[pic],[arm].
  • При создании темы с вопросом указывайте участок кода с ошибкой, версию компилятора, схемы подключения, fuse биты и прочие данные, которые помогут найти правильный ответ. Для форматирования текста программ используйте кнопку код.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Для флуда, просьб выполнить задание, поиска партнёров или исполнителей существуют свои разделы.
  • Если вы заметили несовместимое с правилами сообщение, то можете уведомить об этом модератора раздела нажав кнопку Репорт у соответствующего сообщения.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, PILOT, ManiaK, UniBomb, Mazzi.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Микроконтроллеры (MCU) и микропроцессоры (MPU) | Следующая тема »


 




[ Время генерации скрипта: 0.0532 ]   [ Использовано запросов: 20 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.