#define F_CPU 8000000UL //zegar 8Mhz
#define K1 PC6
#define K2 PC7
#define K3 PD7
#define K4 PC0
#define K5 PC1
#define K6 PC2
#define K7 PC3
#define K8 PC4
#define K9 PC5
#define K10 PA7
#define K11 PA6
#define K12 PA5
#define K13 PA4
#define K14 PA3
#define K15 PA2
#define K16 PA1
#define K17 PA0
#define K18 PB7
#define K19 PB6
#define K20 PB5
#define K21 PB4
#define K22 PB3
#define K23 PB2
#define K24 PB1
#define K25 PB0
#include <avr/io.h>
#include <util/delay.h>
char napis[100];
int8_t tablica[1000];
int a=25;
int b=0;
int c=0;
void przesun()
{
for (int a=0; a<b;a++)
{
tablica[a]=tablica[a+1];
}
}
int main(void){
// Konfiguracja odpowiednich pinów jako wyjścia
DDRA = 0xff;
DDRB = 0xff;
DDRC = 0xff;
DDRD = 0xff;
while(1)
{
for (int x=0; x<25;x++)
{
tablica[x]=0x7f;
}
//Wpisanie do tablicy
char napis[] = {'W','W','W','.','S','P','R','Y','C','I','A','R','Z','E','.','P','L','\0'};
while(napis[c])
{
#pragma region Litery
if(napis[c]=='A')
{
tablica[a]=0x07;
a++;
tablica[a]=0x6B;
a++;
tablica[a]=0x6B;
a++;
tablica[a]=0x07;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='B')
{
tablica[a]=0x03;
a++;
tablica[a]=0x2B;
a++;
tablica[a]=0x2B;
a++;
tablica[a]=0x57;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='C')
{
tablica[a]=0x47;
a++;
tablica[a]=0x3B;
a++;
tablica[a]=0x3B;
a++;
tablica[a]=0x3B;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='D')
{
tablica[a]=0x03;
a++;
tablica[a]=0x3B;
a++;
tablica[a]=0x3B;
a++;
tablica[a]=0x47;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='E')
{
tablica[a]=0x47;
a++;
tablica[a]=0x2B;
a++;
tablica[a]=0x2B;
a++;
tablica[a]=0x3B;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='F')
{
tablica[a]=0x03;
a++;
tablica[a]=0x6B;
a++;
tablica[a]=0x6B;
a++;
tablica[a]=0x7B;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='G')
{
tablica[a]=0x47;
a++;
tablica[a]=0x3B;
a++;
tablica[a]=0x2B;
a++;
tablica[a]=0x0B;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='H')
{
tablica[a]=0x03;
a++;
tablica[a]=0x6F;
a++;
tablica[a]=0x6F;
a++;
tablica[a]=0x03;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='I')
{
tablica[a]=0x03;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='J')
{
tablica[a]=0x5B;
a++;
tablica[a]=0x3B;
a++;
tablica[a]=0x3B;
a++;
tablica[a]=0x43;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='K')
{
tablica[a]=0x03;
a++;
tablica[a]=0x6F;
a++;
tablica[a]=0x57;
a++;
tablica[a]=0x3B;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='L')
{
tablica[a]=0x03;
a++;
tablica[a]=0x3F;
a++;
tablica[a]=0x3F;
a++;
tablica[a]=0x1F;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='M')
{
tablica[a]=0x07;
a++;
tablica[a]=0x7B;
a++;
tablica[a]=0x67;
a++;
tablica[a]=0x7B;
a++;
tablica[a]=0x07;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='N')
{
tablica[a]=0x03;
a++;
tablica[a]=0x77;
a++;
tablica[a]=0x6F;
a++;
tablica[a]=0x03;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='O')
{
tablica[a]=0x47;
a++;
tablica[a]=0x3B;
a++;
tablica[a]=0x3B;
a++;
tablica[a]=0x47;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='P')
{
tablica[a]=0x03;
a++;
tablica[a]=0x6B;
a++;
tablica[a]=0x6B;
a++;
tablica[a]=0x77;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='R')
{
tablica[a]=0x03;
a++;
tablica[a]=0x6B;
a++;
tablica[a]=0x4B;
a++;
tablica[a]=0x37;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='S')
{
tablica[a]=0x37;
a++;
tablica[a]=0x2B;
a++;
tablica[a]=0x2B;
a++;
tablica[a]=0x5B;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='T')
{
tablica[a]=0x7B;
a++;
tablica[a]=0x7B;
a++;
tablica[a]=0x03;
a++;
tablica[a]=0x7B;
a++;
tablica[a]=0x7B;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='U')
{
tablica[a]=0x43;
a++;
tablica[a]=0x3F;
a++;
tablica[a]=0x3F;
a++;
tablica[a]=0x43;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='W')
{
tablica[a]=0x43;
a++;
tablica[a]=0x3F;
a++;
tablica[a]=0x4F;
a++;
tablica[a]=0x3F;
a++;
tablica[a]=0x43;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='X')
{
tablica[a]=0x13;
a++;
tablica[a]=0x6F;
a++;
tablica[a]=0x6F;
a++;
tablica[a]=0x13;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='Y')
{
tablica[a]=0x7B;
a++;
tablica[a]=0x77;
a++;
tablica[a]=0x0F;
a++;
tablica[a]=0x77;
a++;
tablica[a]=0x7B;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='Z')
{
tablica[a]=0x3B;
a++;
tablica[a]=0x1B;
a++;
tablica[a]=0x2B;
a++;
tablica[a]=0x33;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='V')
{
tablica[a]=0x63;
a++;
tablica[a]=0x5F;
a++;
tablica[a]=0x3F;
a++;
tablica[a]=0x5F;
a++;
tablica[a]=0x63;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='.')
{
tablica[a]=0x3F;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]=='-')
{
tablica[a]=0x6F;
a++;
tablica[a]=0x6F;
a++;
tablica[a]=0x6F;
a++;
tablica[a]=0x7F;
a++;
}
else if(napis[c]==' ')
{
tablica[a]=0x7F;
a++;
tablica[a]=0x7F;
a++;
}
#pragma endregion Litery
c++;
b=a;
b=b*8;
}
for (int x=0; x<25;x++)
{
tablica[a+x]=0x7f;
}
while(b>0)
{
PORTD = tablica[0];
PORTC |= (1<<K1);
_delay_us(500);
PORTD = tablica[1];
PORTC &= ~ (1<<K1);
PORTC |= (1<<K2);
_delay_us(500);
PORTD = tablica[2];
PORTC &= ~ (1<<K2);
PORTD |= (1<<K3);
_delay_us(500);
PORTD = tablica[3];
PORTD &= ~ (1<<K3);
PORTC |= (1<<K4);
_delay_us(500);
PORTD = tablica[4];
PORTC &= ~ (1<<K4);
PORTC |= (1<<K5);
_delay_us(500);
PORTD = tablica[5];
PORTC &= ~ (1<<K5);
PORTC |= (1<<K6);
_delay_us(500);
PORTD = tablica[6];
PORTC &= ~ (1<<K6);
PORTC |= (1<<K7);
_delay_us(500);
PORTD = tablica[7];
PORTC &= ~ (1<<K7);
PORTC |= (1<<K8);
_delay_us(500);
PORTD = tablica[8];
PORTC &= ~ (1<<K8);
PORTC |= (1<<K9);
_delay_us(500);
PORTD = tablica[9];
PORTC &= ~ (1<<K9);
PORTA |= (1<<K10);
_delay_us(500);
PORTD = tablica[10];
PORTA &= ~ (1<<K10);
PORTA |= (1<<K11);
_delay_us(500);
PORTD = tablica[11];
PORTA &= ~ (1<<K11);
PORTA |= (1<<K12);
_delay_us(500);
PORTD = tablica[12];
PORTA &= ~ (1<<K12);
PORTA |= (1<<K13);
_delay_us(500);
PORTD = tablica[13];
PORTA &= ~ (1<<K13);
PORTA |= (1<<K14);
_delay_us(500);
PORTD = tablica[14];
PORTA &= ~ (1<<K14);
PORTA |= (1<<K15);
_delay_us(500);
PORTD = tablica[15];
PORTA &= ~ (1<<K15);
PORTA |= (1<<K16);
_delay_us(500);
PORTD = tablica[16];
PORTA &= ~ (1<<K16);
PORTA |= (1<<K17);
_delay_us(500);
PORTD = tablica[17];
PORTA &= ~ (1<<K17);
PORTB |= (1<<K18);
_delay_us(500);
PORTD = tablica[18];
PORTB &= ~ (1<<K18);
PORTB |= (1<<K19);
_delay_us(500);
PORTD = tablica[19];
PORTB &= ~ (1<<K19);
PORTB |= (1<<K20);
_delay_us(500);
PORTD = tablica[20];
PORTB &= ~ (1<<K20);
PORTB |= (1<<K21);
_delay_us(500);
PORTD = tablica[21];
PORTB &= ~ (1<<K21);
PORTB |= (1<<K22);
_delay_us(500);
PORTD = tablica[22];
PORTB &= ~ (1<<K22);
PORTB |= (1<<K23);
_delay_us(500);
PORTD = tablica[23];
PORTB &= ~ (1<<K23);
PORTB |= (1<<K24);
_delay_us(500);
PORTD = tablica[24];
PORTB &= ~ (1<<K24);
PORTB |= (1<<K25);
_delay_us(500);
PORTD = 0xff;
PORTB &= ~ (1<<K25);
_delay_us(500);
b--;
if(b%8==0)
{
przesun();
}
}
a=25;
b=0;
c=0;
}
}
{"html5":"htmlmixed","css":"css","javascript":"javascript","php":"php","python":"python","ruby":"ruby","lua":"text\/x-lua","bash":"text\/x-sh","go":"go","c":"text\/x-csrc","cpp":"text\/x-c++src","diff":"diff","latex":"stex","sql":"sql","xml":"xml","apl":"apl","asterisk":"asterisk","c_loadrunner":"text\/x-csrc","c_mac":"text\/x-csrc","coffeescript":"text\/x-coffeescript","csharp":"text\/x-csharp","d":"d","ecmascript":"javascript","erlang":"erlang","groovy":"text\/x-groovy","haskell":"text\/x-haskell","haxe":"text\/x-haxe","html4strict":"htmlmixed","java":"text\/x-java","java5":"text\/x-java","jquery":"javascript","mirc":"mirc","mysql":"sql","ocaml":"text\/x-ocaml","pascal":"text\/x-pascal","perl":"perl","perl6":"perl","plsql":"sql","properties":"text\/x-properties","q":"text\/x-q","scala":"scala","scheme":"text\/x-scheme","tcl":"text\/x-tcl","vb":"text\/x-vb","verilog":"text\/x-verilog","yaml":"text\/x-yaml","z80":"text\/x-z80"}