CVAVR сообщает о ошибке, а я не могу понять.

Обсуждаем контроллеры компании Atmel.
Ответить
Открыл глаза
Сообщения: 44
Зарегистрирован: Чт фев 21, 2013 20:31:33

Сообщение Valer5 »

Пытаюсь создать программу, позволяющую загрузить 2 массива. 1 содержит сопротивления терморезистора, а другой расчётные значения напряжений. Требуется ввести величину напряжения, по ней выбрать ближайшие меньшее и большее значения, по осредненной величине выбрать из второго массива температуру. Написал программу для начала из 10 строк, для проверки. CVAVR
показывает ошибку. Не могу понять, где я неправ.

#include <mega8.h> #include <mega8.h>

// Declare your global variables here
int tabl_1[5]={20,25,30,35,40};
int tabl_2[5]={200,250,300,350,400};
float A=0;
int B=220;
char i=0;
int C=0;
void main....пропустил, там определения регистров
while (while (B>tabl2_[0]) На эту строку ругается - ошибка синтаксиса.
{
if(B>tabl_2[(0+i)]) {i++};
else { C=tabl_2[1+i] };
A=tabl_1[0+i]*(tabl_2[1+i]-tabl_2[0+i])/tabl_2[0+i];
PORTD=(int)A;
Реклама
Встал на лапы
Аватара пользователя
Сообщения: 135
Зарегистрирован: Вт фев 21, 2012 20:42:26
Откуда: Санкт-Петербург, Россия, Земля

Сообщение U235 »

Код: Выделить всё

while (while (B>tabl2_[0])
while (B>tabl2_[0])
Реклама
Открыл глаза
Сообщения: 44
Зарегистрирован: Чт фев 21, 2013 20:31:33

Сообщение Valer5 »

Это ошибка копирования файла, я её поздно заметил. Вопрос решён. Я не думал, что компилятор замечает логические ошибки. Ввел в определениях величину В большую, чем в условии Whail.

Добавлено after 16 minutes 27 seconds:
Модератору. Прошу закрыть тему в связи с её решением. Не хнаю, как это сделать самому.
Ответить

Вернуться в «AVR»