roboforum.ru

Технический форум по робототехнике.
Текущее время: 02 дек 2024, 18:24

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 55 ]  На страницу Пред.  1, 2, 3, 4  След.
Автор Сообщение
 Заголовок сообщения: Re: WinAVR - бесплатный и мощный компилятор Си и Си++
СообщениеДобавлено: 22 апр 2008, 09:04 
Не в сети

Зарегистрирован: 26 мар 2008, 20:11
Сообщения: 47
Откуда: Украина. Херсон.
ФИО: Дмитрий
Извиняюсь за глупый вопрос. Откуда удалить эти *.d файлы?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: WinAVR - бесплатный и мощный компилятор Си и Си++
СообщениеДобавлено: 22 апр 2008, 09:17 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Kartush писал(а):
Make файл делал через редактор, всё как в курсе.
Что на этот раз?


Напишите какие параметры вам нужны - что указывать в мэйке - и приложите ваш исходник архивом.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: WinAVR - бесплатный и мощный компилятор Си и Си++
СообщениеДобавлено: 22 апр 2008, 12:30 
Не в сети

Зарегистрирован: 26 мар 2008, 20:11
Сообщения: 47
Откуда: Украина. Херсон.
ФИО: Дмитрий
Хочу просто залить программу мигания светодиодом(с чего почти все начинают). В архиве исходник и Make файл, при котором пишется то сообщение.


Вложения:
main.rar [5.75 КиБ]
Скачиваний: 69
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: WinAVR - бесплатный и мощный компилятор Си и Си++
СообщениеДобавлено: 22 апр 2008, 14:02 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Вот вам пока пример работающий test.rar со страницы - http://avr123.nm.ru/04.htm - я там и проект для PROTEUS добавил. Всё работает.

И ваш пример 2.rar заработал когда я сделал новый мэйк файл.


Вложения:
2.rar [6.5 КиБ]
Скачиваний: 97
test.rar [10.15 КиБ]
Скачиваний: 85
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: WinAVR - бесплатный и мощный компилятор Си и Си++
СообщениеДобавлено: 22 апр 2008, 15:58 
Не в сети

Зарегистрирован: 26 мар 2008, 20:11
Сообщения: 47
Откуда: Украина. Херсон.
ФИО: Дмитрий
Спасибо. Я нашёл ошибку в своём Make файле, в нём я неправильно указал файл исходника.
Теперь буду продвигаться дальше :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: WinAVR - бесплатный и мощный компилятор Си и Си++
СообщениеДобавлено: 01 авг 2008, 12:22 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
KamAVR оболочка с мастером кода для WinAVR
http://kazus.ru/forum/topic_12227-0-asc-0.html


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: WinAVR - бесплатный и мощный компилятор Си и Си++
СообщениеДобавлено: 02 авг 2008, 19:28 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 09 фев 2006, 15:36
Сообщения: 3339
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков
Что-то напоминает Kontrollerlab.
Ссылку на оф-сайт бы.

_________________
Linux user | Firefox user


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: WinAVR - как разместить константы в память программ
СообщениеДобавлено: 22 дек 2008, 16:32 
Не в сети

Зарегистрирован: 22 дек 2008, 16:28
Сообщения: 5
Доброго времени суток, всем! Взялся разбираться с AVR на AVRStudio (WinAVR) на си.
Проблема такая. Необходимо матрицу 800 элементов (контстанты)
объявить в памяти программ, чтобы они не занимали места в ОЗУ!
Все перепробовал - бесполезно. После компиляции все 800 штук
указаны в DATA. Объявляю как const - тоже самое!!! Хотя в книгах пишут,
что если объявлено как const, то должны храниться в памяти программ.
Что делать?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помогите разобраться-память программ в WinAVR
СообщениеДобавлено: 22 дек 2008, 16:41 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
Код:
#include <avr/pgmspace.h>

char PROGMEM constants[5] = {'a', 'b', 'c', 'd', 'e'};

char get_constant(int idx)
{
    return pgm_read_byte(constants + idx);
}

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помогите разобраться-память программ в WinAVR
СообщениеДобавлено: 22 дек 2008, 16:44 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 09 фев 2006, 15:36
Сообщения: 3339
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков
Читать доки к avr-gcc && avr-libc.

Код:
#include <avr/pgmspace.h>

const char PROGMEM my_array[] = {0, ...};

void main()
{
    int my_array_index = 0;
    char my_value = pgm_read_byte(my_array + my_array_index);
    while(1);
    return 0;
}


Добавлено спустя 1 минуту 24 секунды:
blindman: опередил :)

_________________
Linux user | Firefox user


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помогите разобраться-память программ в WinAVR
СообщениеДобавлено: 22 дек 2008, 17:08 
Не в сети

Зарегистрирован: 22 дек 2008, 16:28
Сообщения: 5
Vooon писал(а):
Читать доки к avr-gcc && avr-libc.

Код:
#include <avr/pgmspace.h>

const char PROGMEM my_array[] = {0, ...};

void main()
{
    int my_array_index = 0;
    char my_value = pgm_read_byte(my_array + my_array_index);
    while(1);
    return 0;
}


Добавлено спустя 1 минуту 24 секунды:
blindman: опередил :)


Спасибо. А если массив объявлен в одном файле, допустим matr.c
char PROGMEM matr[800] ={
0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x5f, 0x0, 0x0,
....и т.д....}

А мне этот массив надо использовать в другом файле, допустим в main.c.
Что надо написать в h файле (matr.h), чтоб потом его присоединить к
main.c
#include "matr.h"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помогите разобраться-память программ в WinAVR
СообщениеДобавлено: 22 дек 2008, 17:12 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 09 фев 2006, 15:36
Сообщения: 3339
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков
matr.h:
Код:
/**
* @brief: brief
*/

#ifndef MATR_H_
#define MATR_H_ 1

#include <avr/pgmspace.h>

extern char PROGMEM matr[800];

#endif /* MATR_H_ */


Как-то так.

_________________
Linux user | Firefox user


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Помогите разобраться-память программ в WinAVR
СообщениеДобавлено: 22 дек 2008, 17:23 
Не в сети

Зарегистрирован: 22 дек 2008, 16:28
Сообщения: 5
Спасибо. Все получилось.
Просто #include <avr/pgmspace.h> забыл написать


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: WinAVR Help me
СообщениеДобавлено: 24 дек 2008, 10:25 
Не в сети

Зарегистрирован: 22 дек 2008, 16:28
Сообщения: 5
Все в WinAVR.
Объявлена процедура void OutSymbol(char Symbol);
Вызов идет в другой процедуре типа такой:
Код:
void Running_String(char Message[])
{
  unsigned int Number_Symbol;
  unsigned int Active_Symbol;
  Number_Symbol=strlen(Message);
  for(Active_Symbol=0; Active_Symbol<Number_Symbol; Active_Symbol++)
  {
    OutSymbol(Message[Active_Symbol]); ********************
   ... 
  }
}

В основной - вызываю так: Running_String("Proverka");
Ругается (warning) на строчку со ********************
warning: array subscript has type 'char'

В чем дело?


Последний раз редактировалось Vooon 24 дек 2008, 13:34, всего редактировалось 2 раз(а).
у нас есть тег [CODE] для листингов программ!!!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: WinAVR Help me
СообщениеДобавлено: 24 дек 2008, 13:30 
Не в сети
Аватара пользователя

Зарегистрирован: 15 янв 2007, 19:23
Сообщения: 1058
Откуда: Беларусь, Барановичи
прог. языки: С для МК, Delphi для ПК
Попробуйте Number_Symbol и Active_Symbol описать как маленькие целые (unsigned char).

_________________
I live My life!


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 55 ]  На страницу Пред.  1, 2, 3, 4  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 21


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

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO