Страница 1 из 1

Ошибка, нет библиотеки delay.h в AVR Studio

Добавлено: Вт янв 10, 2012 21:30:21
ATtiny13
Вот прошивка
#include <mega16.h>
#include <delay.h>

// Declare your global variables here

void main(void)
{
// Declare your local variables here

PORTD=0x00;
DDRD=0x07;

ACSR=0x80;
SFIOR=0x00;

while (1)
{
PORTD.2=1; // зеленый загорается
delay_ms(5000); // горит 5 секунд

PORTD.2=0; // Выключаем зеленый чтобы поморгать
delay_ms(500); //Ждем пол секунды
PORTD.2=1; // Моргаем
delay_ms(500); //Ждем пол секунды
PORTD.2=0; // Выключаем зеленый чтобы поморгать
delay_ms(500); //Ждем пол секунды
PORTD.2=1; // Моргаем
delay_ms(500); //Ждем
PORTD.2=0; // Моргаем
delay_ms(500); //Ждем
PORTD.2=1; // Моргаем
delay_ms(500); //Ждем пол секунды
PORTD.2=0; // Выключаем зеленый чтобы включить ораанжевый
PORTD.1=1; //Выключаем оранжевый
delay_ms(2000); //Ждем 2 секунды
PORTD.1=0; // выключаем
PORTD.0=1; // Включаем красный
delay_ms(3000); // на 3 секунды
PORTD.1=1;//включаем оранжевый
delay_ms(1000); //ждем 1 секунду
PORTD.0=0;// Выключаем красный
PORTD.1=0;// и оранжевые огоньки, чтобы перейти на начало цикла и включить зеленый


};
}

заменял #include <delay.h> на #include <util/delay.h> не помогло
чем заменить библиотеку или как и от куда ее загрузить? :cry:

Re: Ошибка, нет библиотеки delay.h в AVR Studio

Добавлено: Вт янв 10, 2012 21:39:54
Flasher
А кто сказал, что это код AVR Studio? Это кодвижен.

Re: Ошибка, нет библиотеки delay.h в AVR Studio

Добавлено: Вт янв 10, 2012 21:44:38
ATtiny13
В AVR Studio он не будет работать ?
думал подойдет и для AVR Studio

Re: Ошибка, нет библиотеки delay.h в AVR Studio

Добавлено: Ср янв 11, 2012 08:04:10
Финский
в AVR Studio функция задержки вызывается _delay_ms(500), это во-первых, а во вторых студия не поймет запись PORTD.2=1; т.к. синтаксис CVAVR и AVR Studio немного отличаются. И заголовок для Мега16 называется <iom16.h> Так что простым копированием кода из одной IDE в другую не обойдетесь.

Re: Ошибка, нет библиотеки delay.h в AVR Studio

Добавлено: Ср янв 11, 2012 08:15:16
Мастер Ломастер
Финский писал(а):в AVR Studio функция задержки вызывается _delay_ms(500), это во-первых, а во вторых студия не поймет запись PORTD.2=1; т.к. синтаксис CVAVR и AVR Studio немного отличаются. И заголовок для Мега16 называется <iom16.h> Так что простым копированием кода из одной IDE в другую не обойдетесь.
заголовок для меги16 не нужно указывать в программе для AVR Studio, достаточно вставить #include <avr/io.h> в начале кода, остальное будет сделано автоматически. чтобы заработала функция _delay_ms(), нужно подключать соответствующий модуль #include <util/delay.h>