Последовательное цикличное зажигание светодиодов

Обсуждаем контроллеры компании Atmel.
Ответить
Родился
Сообщения: 2
Зарегистрирован: Сб мар 09, 2019 17:02:08

Сообщение Антон2342 »

Как написать прогу в VMLAB последовательное цикличное зажигание светодиодов до номера нажатой клавиши микроконтроллере на Atmega8.Вот вроде начал а как закончить без понятия.Плиз очень нужна помощь :cry: :cry: :cry: :cry:

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

int main(void)
{
DDRB = 0x7F;
PORTB = 0x00;
DDRC=0x00;
DDRD=0xFF;
PORTC=0xFF;
 
while(1)
{
if(PINC&(1 << PC4))
{
PORTB |= (1 << PB6);
PORTD |= (1 << PD5);
PORTD |= (1 << PD7);
}
else
{
PORTB &= ~(1 << PB6);
PORTB |= (1 << PB6);
 
PORTD &= ~(1 << PD5);
PORTD |= (1 << PD5);
 
PORTD &= ~(1 << PD7);
PORTD |= (1 << PD7);
}
}
}
Реклама
Друг Кота
Аватара пользователя
Сообщения: 7077
Зарегистрирован: Пт ноя 11, 2016 05:48:09
Откуда: Сердце Пармы

Сообщение Ivanoff-iv »

опишите всю последовательность действий (что должно произойти при отпускании кнопки?)
Для тех, кто не учил магию мир полон физики :)
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
Реклама
Родился
Сообщения: 2
Зарегистрирован: Сб мар 09, 2019 17:02:08

Сообщение Антон2342 »

При нажатии кнопки заданные светодиоды должны переключаться в цикле и как только дойдет до кнопки 4 то должна остановиться программа.Но как сделать остановку я не знаю
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18678
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

Антон2342 писал(а):как сделать остановку я не знаю
while(1); остановит вашу программу наглухо.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

Сообщение Dimon456 »

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

do { } while ((PINC & (1<<PC4)) == 0); // ждать отжатия кнопки PC4
Реклама
Ответить

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