Page
Stránky / Súčiastky ku Arduinu / 74HC595 Posuvný register /
Keď sme sa pomocou predchádzajúcich programov dostatočne pohrali s rýchlosťou ovládania posuvného registra 74HC595, teraz prichádza na rad tá zábavnejšia časť. Môžeme začať tvoriť umenie. Umením bude rozumieť rozličné zapínanie a vypínanie LED, aby vznikali zaujímavé obrazce.
Na ukážku som napísal štyri vzorky rôzne sa zažínajúcich diód:
Dá sa s týmito vzormi hrať do sýtosti, keď si otvoríte vzorový príklad hc595_led_spi_line.ino, tak princíp tvorby vzoriek by mal byť na prvý pohľad jasný.
char p1[]={
0b00000001,
0b00000010,
0b00000100,
0b00001000,
0b00010000,
0b00100000,
0b01000000,
0b10000000,
0b01000000,
0b00100000,
0b00010000,
0b00001000,
0b00000100,
0b00000010,
};
void play(char *p,int poc, int repeat, int dela)
{
while(repeat)
{
for (int i = 0; i < poc; i++) {
// take the latchPin low so
// the LEDs don't change while you're sending in bits:
digitalWrite(latchPin, LOW);
// shift out the bits:
SPI.transfer(p[i]);
//take the latch pin high so the LEDs will light up:
digitalWrite(latchPin, HIGH);
// pause before next value:
delay(dela);
}
repeat--;
}
}
void loop() {
play(p1,sizeof(p1),3,50*2);
...
}
Zdrojový kód sa nachádza na webe GitHub.
04.07.2016