Jak na początkującego programistę błahy problem jest dużym problemem.
Próbuje napisać taki program
Opracowanie programu realizującego sekwencyjne zapalanie się diod LED w kolejności: LED0, LED1, LED2, LED3, LED0 itd. dla stanu logicznego „0” na wejściu SW0 oraz LED3, LED2, LED1, LED0, LED0 itd. w przeciwnym przypadku. Zmiana kierunku zapalania się diod ma być realizowana od aktualnie zapalonej diody LED.
ale nie wiem jak z tym sobie poradzić.
Proszę o pomoc.
Próbuje napisać taki program
Opracowanie programu realizującego sekwencyjne zapalanie się diod LED w kolejności: LED0, LED1, LED2, LED3, LED0 itd. dla stanu logicznego „0” na wejściu SW0 oraz LED3, LED2, LED1, LED0, LED0 itd. w przeciwnym przypadku. Zmiana kierunku zapalania się diod ma być realizowana od aktualnie zapalonej diody LED.
ale nie wiem jak z tym sobie poradzić.
#define F_CPU 1000000UL /* 1 MHz CPU clock */
#include <util/delay.h>
#include <avr/io.h>
int main(void)
{
DDRD = 0x0f;
/* linie PC0,PC1 będą wejściami z podciągnięciem do VCC */
DDRC = 0x00;
PORTC = 0x03;
while(1)
{
/* Jeśli pierwszy przycisk wciśnięty */
if(!(PINC & 0x00)) {
PORTD =0x01;
_delay_ms(100);
PORTD =0x02;
_delay_ms(100);
PORTD =0x04;
_delay_ms(100);
PORTD =0x08;
_delay_ms(100);
PORTD =0x04;
_delay_ms(100);
}
if(!(PINC & 0x01)) {
PORTD =0x08;
_delay_ms(100);
PORTD =0x08;
_delay_ms(100);
PORTD =0x04;
_delay_ms(100);
PORTD =0x08;
_delay_ms(100);
PORTD =0x08;
_delay_ms(100);
}}}
Proszę o pomoc.