Помогите С Atmel Studio

5-04-2014, 13:53 От: admin Посмотрели: 1090
Решил сделать тахометр для своего манзапа на Atmega 8, написал программку а она не пашет должным образом. Принцип работы заключается в том что нулевая ножка порта C с каждым оборотом двигателя замыкается на массу. Задача программы посчитать количество этих замыканий в минуту и вывести это шкалой светодиодов подключенных к порту B и D.

Программа:

#include <avr/io.h>

#include <avr/delay.h>

int main(void)

{

DDRD = 0b11111111;

DDRB = 0b11111111;

DDRC = 0b00000010;

PINC = 0b00000001;

while(1)

{

int x = 0;

int itog;

for (int i;i<=1000;i++)

{

if (PINC == 0b00000000)

{

x++;

}

_delay_ms(1);

}

itog = (x * 60) / 100;

//______________________________

switch(itog)

{

case 1 ... 500:

PIND = 0b00000001;

break;

case 501 ... 1000:

PIND = 0b00000011;

break;

case 1001 ... 1500:

PIND = 0b00000111;

break;

case 1501 ... 2000:

PIND = 0b00001111;

break;

case 2001 ... 2500:

PIND = 0b00011111;

break;

case 2501 ... 3000:

PIND = 0b00111111;

break;

case 3001 ... 3500:

PIND = 0b01111111;

break;

case 3501 ... 4000:

PIND = 0b11111111;

break;

default:if (itog >= 4000) PIND = 0b11111111;

}



switch(itog)

{

case 4001 ... 4500:

PINB = 0b00000001;

break;

case 4501 ... 5000:

PINB = 0b00000011;

break;

case 5001 ... 5500:

PINB = 0b00000111;

break;

case 5501 ... 6000:

PINB = 0b00001111;

break;

case 6001 ... 6500:

PINB = 0b00011111;

break;

case 6501 ... 7000:

PINB = 0b00111111;

break;

case 7001 ... 7500:

PINB = 0b01111111;

break;

case 7501 ... 8000:

PINB = 0b11111111;

break;

default:if (itog >= 8001) PINC = 0b00000010;

}

PIND = 0b00000000;

PINB = 0b00000000;

}

}
Раздел: Песочница или Вопрос-Ответ

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

Обсудить на форуме


На момент добавления Помогите С Atmel Studio все ссылки были рабочие.
Все публикации статей, книг и журналов, представлены на этом сайте, исключительно для ознакомления,
авторские права на эти публикации принадлежат авторам статей, книг и издательствам журналов!
Подробно тут | Жалоба
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.


Опрос

Ваши предпочтения в TRX


Одинарное преобразование
Двойное преобразование
Прямое преобразование
SDR
Другое
Мне всё равно

Популярные новости
Календарь новостей
«    Май 2024    »
ПнВтСрЧтПтСбВс
 12345
6789101112
13141516171819
20212223242526
2728293031