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

 
 
 
Reply to this topicStart new topic
> WINAVR обучение, си компилятор для авр
Kirill Trusov
сообщение Jan 22 2008, 16:24
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 90
Регистрация: 17-08-07
Пользователь №: 29 867



простите, может дублирую тему или еще что . но не нашел по форуму того что искал.

Как правельно программировать на си для авр в winavr .

Читать gcc-lib , полезная вещь, изучать исходники.
но может есть какие мануалы, туториалы . или еще что...
вот к примеру, у меня в этом авр гцц часто бывают проблемы с задержкой, что в библиотеках есть, delay_loop вроде , да? так вечно работает как то странно.

+ Makefile в студии редактировать где ?
Go to the top of the page
 
+Quote Post
aesok
сообщение Jan 22 2008, 16:50
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 596
Регистрация: 26-05-06
Из: Москва
Пользователь №: 17 484



Цитата(Kirill Trusov @ Jan 22 2008, 19:24) *
простите, может дублирую тему или еще что . но не нашел по форуму того что искал.

Как правельно программировать на си для авр в winavr .

Читать gcc-lib , полезная вещь, изучать исходники.

gcc-libc-user-manual - это официальная документация

Цитата
но может есть какие мануалы, туториалы . или еще что....

Вот здесь хорошая подборка статей :AVR Tutorials

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

Еще раз прочитать gcc-libc-user-manual!!! Учиться пользоваться поиском. Только сейчас писал все про это:http://electronix.ru/forum/index.php?s=&am...st&p=354029

Цитата
+ Makefile в студии редактировать где ?.


В WinAVR есть утилита MFile. В AvrStudio в опциях проекта.

Анатолий.

Сообщение отредактировал aesok - Jan 22 2008, 16:51
Go to the top of the page
 
+Quote Post
Kirill Trusov
сообщение Jan 22 2008, 18:02
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 90
Регистрация: 17-08-07
Пользователь №: 29 867



т.е опции....

но можно корректировать, или студия при компиляции все равно перепишит мфайл?

( про задержки, я как раз по мануалу и шел (я его даже распечатал smile.gif) и все равно, он дает странные задержки sad.gif )
Go to the top of the page
 
+Quote Post
aesok
сообщение Jan 22 2008, 18:17
Сообщение #4


Знающий
****

Группа: Участник
Сообщений: 596
Регистрация: 26-05-06
Из: Москва
Пользователь №: 17 484



Цитата(Kirill Trusov @ Jan 22 2008, 21:02) *
т.е опции....

но можно корректировать, или студия при компиляции все равно перепишит мфайл?


Да перезапишит... если не стоит галочка в пункте 'Use external Makefile'. Если Вы ее уберете и зададите свой то сможете вручную вносит изменения в makefile, но изменения установок в опциях поэкта в него не попадут.

Цитата
( про задержки, я как раз по мануалу и шел (я его даже распечатал smile.gif) и все равно, он дает странные задержки sad.gif )



4. Параметром макросов _delay_us и _delay_ms должна быть константа.

Анатолий.
Go to the top of the page
 
+Quote Post
Kirill Trusov
сообщение Jan 22 2008, 18:40
Сообщение #5


Частый гость
**

Группа: Свой
Сообщений: 90
Регистрация: 17-08-07
Пользователь №: 29 867



блин... там ставил одну только....
#define F_CPU 7372800 // 7.37MHz processor

Вопрос по мтаематике

умеет ли компилятор делить ? остаток от деления брать ?
как с числами с плавающей точкой

вопрос по тактам

си не асме. команда на равна такту, как считать точно время, я брал счетчик и его использовал , т.е таймер, его на предделитель и ждал числа, но таймера жалко
Go to the top of the page
 
+Quote Post
aesok
сообщение Jan 22 2008, 18:47
Сообщение #6


Знающий
****

Группа: Участник
Сообщений: 596
Регистрация: 26-05-06
Из: Москва
Пользователь №: 17 484



Цитата(Kirill Trusov @ Jan 22 2008, 21:20) *
блин... там ставил одну только....
#define F_CPU 7372800 // 7.37MHz processor


Куда Вы это ставили. Если в С файл то надо:
#define F_CPU 7372800UL

Анатолий.

Цитата(Kirill Trusov @ Jan 22 2008, 21:40) *
Вопрос по мтаематике

умеет ли компилятор делить ? остаток от деления брать ?
как с числами с плавающей точкой

Никакой форум вам не заменит книгу. Ответы на эти вопросы есть в Вашей любимой книжке по языку С. Если будете задавать такие вопросы на форумах, то очень бастро начнете раздражать людей.

Цитата
вопрос по тактам

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


В стандарте языка С время нет ни слова о времени выполнения операторов и вычислении выражений.
Поэтому если вам нужны точные задержки, то только ассемблерный код или таймеры. А что фирма Атмел вам вернет деньги за не используемый таймер?

Анатолий.

Сообщение отредактировал aesok - Jan 22 2008, 18:51
Go to the top of the page
 
+Quote Post
Kirill Trusov
сообщение Jan 22 2008, 19:02
Сообщение #7


Частый гость
**

Группа: Свой
Сообщений: 90
Регистрация: 17-08-07
Пользователь №: 29 867



ммоя книга дейтелы как программировать на си..
он умеет, но когда я попытался взять остаток от деления то получил мусор какойто в переменной, может надо какую библиотеку подключить , в библиотеке math.h функции, типо косинусов и синусов


UL не ставил sad.gif а это очень серьезная ошибка?
Go to the top of the page
 
+Quote Post
aesok
сообщение Jan 22 2008, 19:33
Сообщение #8


Знающий
****

Группа: Участник
Сообщений: 596
Регистрация: 26-05-06
Из: Москва
Пользователь №: 17 484



Цитата(Kirill Trusov @ Jan 22 2008, 22:02) *
ммоя книга дейтелы как программировать на си..
он умеет, но когда я попытался взять остаток от деления то получил мусор какойто в переменной, может надо какую библиотеку подключить , в библиотеке math.h функции, типо косинусов и синусов


деление и взятие остатка это стандартные операторы языка С, и GCC их поддерживает. Давайте ваш код. Для работы с типом float надо подключить библиотеку libm. Ключиком -lm линкера в makefile. Как в AVRStudio не помню.

Цитата
UL не ставил sad.gif а это очень серьезная ошибка?


Принципиальная.

Анатолий.
Go to the top of the page
 
+Quote Post
Kirill Trusov
сообщение Jan 23 2008, 19:24
Сообщение #9


Частый гость
**

Группа: Свой
Сообщений: 90
Регистрация: 17-08-07
Пользователь №: 29 867



http://ccrma.stanford.edu/workshops/pid200...rogramming.html

очень краткое описание на си и WINAVR в частности
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 26th June 2025 - 23:07
Рейтинг@Mail.ru


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