роботы
робототехника
микроконтроллеры
Главная
Как сделать робота
Новости
Спорт
Статьи
Wiki
Форум
Downloads
Ссылки
Контакты  


 Страниц (5): [1] 2 3 4 5 »   

> Без описания
Andrey 2004
Отправлено: 26 Декабря, 2018 - 17:21:43
Post Id



Лейтенант


Сообщений всего: 35
Дата рег-ции: Дек. 2018  





можно ли запрограммировать микропроцессор ATmega8-16pu при помощи программы arduino,
и USBASP 2.0? Если нет то какую программу для этого лучше использовать где ее можно скачать. Заранее благодарен.
 
 Top
Predator Супермодератор
Отправлено: 26 Декабря, 2018 - 18:14:20
Post Id


Супермодератор


Сообщений всего: 1222
Дата рег-ции: Июль 2012  





ATmega8 - микроконтроллер.
Запрограммировать при помощи программы arduino можно, только при условиях - есть еще и ардуино-плата под такой контроллер и в контроллере уже вшит загрузчик.

Запрограммировать при помощи USBASP 2.0 можно, без всяких ардуин. По идее АВР-студия должна знать USBASP.
 
 Top
Andrey 2004
Отправлено: 27 Декабря, 2018 - 18:47:07
Post Id



Лейтенант


Сообщений всего: 35
Дата рег-ции: Дек. 2018  





Благодарю. Одобряю Одобряю
 
 Top
Andrey 2004
Отправлено: 17 Января, 2019 - 21:52:30
Post Id



Лейтенант


Сообщений всего: 35
Дата рег-ции: Дек. 2018  





начал недавно заниматься программированием, но возникла проблема ввожу вот эту программу:
#include <mega8.h>
#include <delay.h>

void main(void)
{

PORTB=0x02;
DDRB=0x01;

while (1)
{

if(PINB.1==0)
{
PORTB.0=1;
delay_ms(100);
PORTB.0=0;
delay_ms(100);
}

}
}

выдает вот эту ошибку:
Error 1 mega8.h: No such file or directory

не подскажите что делать???
 
 Top
Predator Супермодератор
Отправлено: 17 Января, 2019 - 23:21:56
Post Id


Супермодератор


Сообщений всего: 1222
Дата рег-ции: Июль 2012  





А в какой среде программируете? Очень может быть, что нету у вас mega8.h.
попробуйте вот так:
CODE:

#include <avr/io.h>
#include <util/delay.h>
 
 Top
Andrey 2004
Отправлено: 22 Января, 2019 - 19:11:08
Post Id



Лейтенант


Сообщений всего: 35
Дата рег-ции: Дек. 2018  





вроде заменил но компилятор вывел мне кучу ошибок,хотя по идее код правильный,для точности вставлю получившийся код:

#include <avr/io.h>
#include <util/delay.h>

void main(void)
{
while (1)
{
while (PIND.0==1) {}
if (PINB.0==1)
{ PORTB.0=0; }
else
{ PORTB.0=1; }
while (PIND.0==0) {}
};

ошибок много вроде:

Error 2 'fabs' was not declared in this scope
Error 13 expected ';' before 'Подмигивающий' token
Error 6 '::main' must return 'int' и т.д.
Что это может быть и как это можно исправить.
Не подскажете????'
 
 Top
Predator Супермодератор
Отправлено: 22 Января, 2019 - 22:18:31
Post Id


Супермодератор


Сообщений всего: 1222
Дата рег-ции: Июль 2012  





итак похоже, что программируете под Atmel Studio, а исходник взят под что-то дугое.

на сообщение об ошибке двойным кликом кликните - перейдёт на место её возникновения.
На вскидку у вас в настройках проекта не указан чип - от этого большинство ошибок.
Alt+F7 => Device

и кроме этого:
CODE:

void main(void)
{
....
}


заменить на
CODE:

int main(void)
{
....
return (0);
}


дальше будем разбираться по мере...
 
 Top
Группа Инженеров Супермодератор
Отправлено: 23 Января, 2019 - 02:54:28
Post Id



Супермодератор


Сообщений всего: 443
Дата рег-ции: Авг. 2008  





Цитата:
заменить на
CODE:

int main(void)
{
....
return (0);
}


У него же while (1) ниже открыт, всё норм.

Попробуйте вот так

CODE:
#include <avr/io.h>
#include <util/delay.h>

int main(int)
{
while (1)
{
while (PIND.0==1) {}
if (PINB.0==1)
{ PORTB.0=0; }
else
{ PORTB.0=1; }
while (PIND.0==0) {}
}
}



Просто глядя на код, я вижу, что не хватает одной фигурной скобки, а компилятор материться на тип void.
 
 Top
Andrey 2004
Отправлено: 23 Января, 2019 - 12:32:13
Post Id



Лейтенант


Сообщений всего: 35
Дата рег-ции: Дек. 2018  





Цитата:
Попробуйте вот так

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

int main(void)
{
....
return (0);
}

получилось вот так,но все равно ошибки выдает. Незнаю может не у той скобки поставил return (0); ...вот посмотрите:

#include <avr/io.h>
#include <util/delay.h>

int main(void)
{
while (1)
{
while (PIND.0==1) {}
if (PINB.0==1)
{ PORTB.0=0; }
else
{ PORTB.0=1; }
while (PIND.0==0) {}
};
return (0);}

тоже кучу ошибок выдает...
 
 Top
Predator Супермодератор
Отправлено: 23 Января, 2019 - 13:02:42
Post Id


Супермодератор


Сообщений всего: 1222
Дата рег-ции: Июль 2012  





сия затея с return должна избавить только от одной ошибки:
Error 6 '::main' must return 'int'

если от нее избавились - всё хорошо, работаем дальше.

вы свою кучу ошибок опубликуйте, без подробностей разобраться никак...
 
 Top
Andrey 2004
Отправлено: 23 Января, 2019 - 23:37:42
Post Id



Лейтенант


Сообщений всего: 35
Дата рег-ции: Дек. 2018  





вот ошибки:
Warning 1 #warning "F_CPU not defined for <util/delay.h>"
Error 2 'fabs' was not declared in this scope
Error 3 'ceil' was not declared in this scope
Error 4 'fabs' was not declared in this scope
Error 5 'ceil' was not declared in this scope
Error 6 expected 'Подмигивающий' before numeric constant
Error 7 expected ';' before 'Подмигивающий' token
Warning 8 statement has no effect
Error 9 expected 'Подмигивающий' before numeric constant
Error 10 expected ';' before numeric constant
Error 11 expected ';' before numeric constant
Error 12 expected 'Подмигивающий' before numeric constant
Error 13 expected ';' before 'Подмигивающий' token
Warning 14 statement has no effect
ИТОГО: -2 ошибки, после того вставил
return (0)...
 
 Top
Predator Супермодератор
Отправлено: 25 Января, 2019 - 10:37:15
Post Id


Супермодератор


Сообщений всего: 1222
Дата рег-ции: Июль 2012  





fabs и ceil - версии объявления данных, находятся в math.h
попробуйте добавить.
#include <util/math.h>
Если повезёт - проблема решится, если нет (math.h тоже будет ругаться на страшные слова и требовать еще библиотек) - проще будет выкосить
#include <util/delay.h> и сделать. Стоп. У вас уже не применяется delay.

сразу выкашивайте
#include <util/delay.h>
должно полегчать.
 
 Top
Andrey 2004
Отправлено: 25 Января, 2019 - 12:28:29
Post Id



Лейтенант


Сообщений всего: 35
Дата рег-ции: Дек. 2018  





вот что получилось:
#include <avr/io.h>
#include <util/delay.h>
#include <util/math.h>
int main(void)
{
while (1)
{
while (PIND.0==1) {}
if (PINB.0==1)
{ PORTB.0=0; }
else
{ PORTB.0=1; }
while (PIND.0==0) {}
};
return (0);}

много ошибок ушло...остались вот эти :
Warning 1 #warning "F_CPU not defined for <util/delay.h>"
Error 2 util/math.h: No such file or directory
 
 Top
Predator Супермодератор
Отправлено: 25 Января, 2019 - 13:54:45
Post Id


Супермодератор


Сообщений всего: 1222
Дата рег-ции: Июль 2012  





Error 2 util/math.h: No such file or directory - не нашлось math.h, дальше компилятор даже смотреть не стал.
сделайте этот кусочек так:
CODE:

#include <avr/io.h>
//#include <util/delay.h>
//#include <util/math.h>

должно полегчать.
 
 Top
Andrey 2004
Отправлено: 25 Января, 2019 - 14:22:54
Post Id



Лейтенант


Сообщений всего: 35
Дата рег-ции: Дек. 2018  





вот какие ошибки выдало:
Error 1 expected 'Подмигивающий' before numeric constant
Error 2 expected ';' before 'Подмигивающий' token
Warning 3 statement has no effect
Error 4 expected 'Подмигивающий' before numeric constant
Error 5 expected ';' before numeric constant
Error 6 expected ';' before numeric constant
Error 7 expected 'Подмигивающий' before numeric constant
Error 8 expected ';' before 'Подмигивающий' token
Warning 9 statement has no effect D
 
 Top
Страниц (5): [1] 2 3 4 5 »
« С чего начать? »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 





Powered by Exclusive Bulletin Board
ExBB FM 1.0 RC1 Smiles by Fool from Foolstown