реклама на сайте
подробности

 
 
> WinAVR, Какой поставить
ShuraM
сообщение Mar 21 2007, 23:11
Сообщение #1





Группа: Новичок
Сообщений: 14
Регистрация: 14-11-06
Пользователь №: 22 299



Посоветуйте плз. какую версию стоит поставить?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ShuraM
сообщение Mar 23 2007, 00:41
Сообщение #2





Группа: Новичок
Сообщений: 14
Регистрация: 14-11-06
Пользователь №: 22 299



Скачал, поставил, WinAVR-20060421. Но что-то не сложилось . Взял пример из книги, при компиляции выдаёт ошибку. Как победить?

Код
#include <inttypes.h>
#include <avr/io.h>
#include <avr/interrupt.h>
#include <avr/signal.h>



unsigned char OverflowC;
unsigned int EdgeR, EdgeF;
unsigned long PulseClocks;

INTERRUPT(SIG_OVERFLOW1)
{
  OverflowC++;
}

INTERRUPT(SIG_INPUT_CAPTURE1 )
{
  if ((PIND & 0x40) != 0)
  {
    EdgeR = ICR1;
    TCCR1B = TCCR1B & 0xBF;
    OverflowC = 0;
  }
  else
  {
    EdgeF = ICR1;
    TCCR1B = TCCR1B | 0x40;
    PulseClocks = (unsigned long)EdgeF -
                  (unsigned long)EdgeR +
                  (unsigned long)OverflowC * 0x10000;
    PORTC = PulseClocks / 500;
  }
}

int main (void)
{
  DDRC = 0xFF;
  TCCR1B = 0xC2;
  TIMSK = 0x24;
  sei();
  while(1);
}

Цитата
Compiling: PulsWdth.c
avr-gcc -c -mmcu=at90s8515 -I. -g -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=PulsWdth.lst -std=gnu99 -Wp,-M,-MP,-MT,PulsWdth.o,-MF,.dep/PulsWdth.o.d PulsWdth.c -o PulsWdth.o
PulsWdth.c:13: warning: return type defaults to `int'
PulsWdth.c:13: warning: function declaration isn't a prototype
PulsWdth.c: In function `INTERRUPT':
PulsWdth.c:13: warning: type of "__vector_6" defaults to "int"
PulsWdth.c: At top level:
PulsWdth.c:18: warning: return type defaults to `int'
PulsWdth.c:18: warning: function declaration isn't a prototype
PulsWdth.c:18: error: redefinition of 'INTERRUPT'
PulsWdth.c:13: error: previous definition of 'INTERRUPT' was here
PulsWdth.c: In function `INTERRUPT':
PulsWdth.c:18: warning: type of "__vector_3" defaults to "int"
make.exe: *** [PulsWdth.o] Error 1

> Process Exit Code: 2
> Time Taken: 00:01


Сообщение отредактировал ShuraM - Mar 23 2007, 00:47
Go to the top of the page
 
+Quote Post
singlskv
сообщение Mar 23 2007, 01:54
Сообщение #3


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(ShuraM @ Mar 23 2007, 00:41) *
Скачал, поставил, WinAVR-20060421. Но что-то не сложилось . Взял пример из книги, при компиляции выдаёт ошибку. Как победить?

Код
INTERRUPT(SIG_OVERFLOW1)

INTERRUPT(SIG_INPUT_CAPTURE1 )

находим на диске файл avr-libc-user-manual-1.4.4.pdf и внимательно его изучаем
там есть почти все

Вместо INTERRUPT пишем ISR
Вместо SIG_OVERFLOW1 пишем TIM1_OVF_vect
Вместо SIG_INPUT_CAPTURE1 пишем TIMER1_CAPT_vect

то есть
ISR(TIM1_OVF_vect)
и
ISR(TIMER1_CAPT_vect)

Ваша книжка просто слегка устарела sad.gif

P.S. странно что в книжке стоит INTERRUPT вместо SIGNAL
наверное это была такая шютка автора smile.gif
Go to the top of the page
 
+Quote Post
ShuraM
сообщение Mar 23 2007, 22:18
Сообщение #4





Группа: Новичок
Сообщений: 14
Регистрация: 14-11-06
Пользователь №: 22 299



singlskv, OK. Спасибо!
Книга единственная которую я нашёл про "С" для микроконтроллеров.
Шпак Ю.А. "Программирование на языке С для AVR и PIC микроконтроллеров"

Сообщение отредактировал ShuraM - Mar 23 2007, 22:21
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- ShuraM   WinAVR   Mar 21 2007, 23:11
- - beer_warrior   WinAVR-20060421   Mar 21 2007, 23:51
|- - aesok   Цитата(beer_warrior @ Mar 21 2007, 23:51)...   Mar 22 2007, 14:45
|- - defunct   Цитата(beer_warrior @ Mar 21 2007, 22:51)...   Mar 25 2007, 03:32
- - Carmack   А на вышеуказанную версию WinAVR советую поставить...   Mar 22 2007, 09:36
- - ShuraM   Спасибо, пошёл скачивать.   Mar 22 2007, 23:10
|- - Karl   Цитата(singlskv @ Mar 23 2007, 04:54) P.S...   Mar 26 2007, 11:08
- - beer_warrior   ЦитатаКнига единственная которую я нашёл про ...   Mar 24 2007, 10:37
- - ShuraM   Наверно Вы правы , надо учить. А книга лежала здес...   Mar 24 2007, 12:31
- - sensor_ua   Только что бодался с 20070122 и студией 4.12 SP4(б...   Mar 25 2007, 09:23
|- - defunct   Цитата(sensor_ua @ Mar 25 2007, 08:23) То...   Mar 26 2007, 02:51
- - ShuraM   Вот скажи мне embedder как имитировать прерывание...   Mar 25 2007, 21:44
- - beer_warrior   Цитата2007-й оптимизирует эффективнее. ~16k кода с...   Mar 25 2007, 23:46
- - sensor_ua   ЦитатаС 4.13-й студией работает без патчей. Да, ра...   Mar 26 2007, 21:38
|- - defunct   Цитата(sensor_ua @ Mar 26 2007, 20:38) Сп...   Mar 27 2007, 14:38
|- - aesok   Цитата(defunct @ Mar 27 2007, 14:38) К пр...   Mar 27 2007, 15:16
- - ShuraM   Господа. Дык, должен должна программа идти в преры...   Mar 27 2007, 22:03
|- - aesok   Цитата(ShuraM @ Mar 27 2007, 22:03) Госпо...   Mar 27 2007, 22:39
|- - ShuraM   Цитата(aesok @ Mar 27 2007, 21:39) int ma...   Mar 27 2007, 23:07
|- - aesok   Цитата(ShuraM @ Mar 27 2007, 23:07) ... В...   Mar 27 2007, 23:13
- - sensor_ua   ЦитатаК примеру с драгоном пока только эта связка ...   Mar 27 2007, 23:10
|- - defunct   Цитата(sensor_ua @ Mar 27 2007, 22:10) У ...   Mar 29 2007, 23:46
- - sensor_ua   Посмотрю в понедельник как - не помню, версия 4.20...   Mar 31 2007, 09:33
- - sensor_ua   Посмотрел. Обманул. Таки через студию. Просто было...   Apr 2 2007, 10:47


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 02:07
Рейтинг@Mail.ru


Страница сгенерированна за 0.01416 секунд с 7
ELECTRONIX ©2004-2016