рд╣рдо рдХреИрд╢рд┐рдпрд░ рдХреЛ рдлрдЯрдХрд╛рд░рддреЗ рд╣реИрдВ рдФрд░ рдЙрд╕ рдкрд░ рдХреАрдиреВ рд░реАрд╡реНрд╕ рдкреНрд░рд┐рдВрдЯ рдХрд░рддреЗ рд╣реИрдВ

рдирдорд╕реНрдХрд╛рд░, рд╣реЗрдмреНрд░!

рдПрдХ рдмрд╛рд░ рдореЗрд░реЗ рдкрд╛рд╕ "рдиреМрдХрд░реА" рдереА - рдпрд╣ рдирдХрджреА рд░рдЬрд┐рд╕реНрдЯрд░ Shtrikh-FR-K рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдерд╛ред рдЪреВрдВрдХрд┐ рдореЗрд░рд╛ рдХрд░рд┐рдпрд░ рдХреЗрдХреЗрдЯреА рдХреА рдорд░рдореНрдордд рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рд╣реБрдЖ, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдпрд╣ рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред

рдЫрд╡рд┐

рдЗрд╕ рддрд░рд╣ рд╕реЗ рдмреЙрдХреНрд╕ рдСрдлрд┐рд╕ рдкрд░ рд╣реА рдФрд░ рдореЗрд░реЗ рд╕рд╣рдпреЛрдЧреА рдХреА рдЯреНрд░рд╛рдпрд▓ рдЗрдореЗрдЬ рдХреИрд╕реА рджрд┐рдЦрддреА рд╣реИ:

рдЫрд╡рд┐

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрдВрдЬрди рдХреЗ рдирд┐рдпрдВрддреНрд░рдг рдФрд░ рдбрд┐рд╡рд╛рдЗрд╕ рдореЗрдВ рдерд░реНрдорд▓ рд╣реЗрдб рдХреЗ рдкреАрдЫреЗ, рдореБрдЭреЗ рдУрдкрдирд╡реАрд╡реА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЫреЛрдЯреА рдЕрдЬрдЧрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдиреА рдереАред рддреЛ рдЪрд▓рд┐рдП рдЪрд▓рддреЗ рд╣реИрдВред

рдпрд╣ рд╕рдм рд░реЗрдо рдХреЗ рдЕрдзреНрдпрдпрди рд╕реЗ рд╢реБрд░реВ рд╣реБрдЖред рдЧреЛрджреАред рдЗрд╕ рдХреИрд╢ рдбреЗрд╕реНрдХ рдФрд░ рдерд░реНрдорд▓ рд╣реЗрдб рдкрд┐рди рдХреЗ рд▓рд┐рдП рд▓реЙрдЬрд┐рдХ рдПрдирд╛рд▓рд╛рдЗрдЬрд░ рдХрд╛ рдмрд╛рдж рдХрд╛ рдХрдиреЗрдХреНрд╢рдиред рдореИрдВрдиреЗ рдмрд╛рд░ рдкрд░реАрдХреНрд╖рдг рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рд┐рдВрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрддреНрд░ "рд╕реА" рднреЗрдЬрд╛ред рдФрд░ рдпрд╣рд╛рдБ рдореБрдЭреЗ рдХреНрдпрд╛ рдорд┐рд▓рд╛ рд╣реИ:

рдЫрд╡рд┐

DATA рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдкреЙрдЗрдВрдЯреНрд╕ (432 рдкреЙрдЗрдВрдЯреНрд╕ рдкреНрд░рддрд┐ рд▓рд╛рдЗрди), SCK - рдХреНрд▓реЙрдХ рд╕рд┐рдЧреНрдирд▓, STB0, STB1, STB2 - рдерд░реНрдорд▓ рд╣реЗрдб рдХреЛ рдЧрд░реНрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдЯреИрдВрдЯреНрд╕, LATCH - рдбреЗрдЯрд╛ рд▓реИрдЪред рдореИрдВрдиреЗ рд╢рд┐рдлреНрдЯ рд░рдЬрд┐рд╕реНрдЯрд░ рдореЗрдВ рдПрдХ рд▓рд╛рдЗрди рдЪрд▓рд╛рдИ, рдЙрд╕реЗ рдЬрд▓рд╛рдпрд╛, рдЪрд▓рд╛ рдЧрдпрд╛ред

рдЕрдЧрд▓рд╛ рдХрджрдо рд╡рд┐рдХрд╛рд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдЧрддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдмреЛрд░реНрдб рдХреЛ рдЕрдВрддрд┐рдо рд░реВрдк рджреЗрдирд╛ рдерд╛ред

рдЫрд╡рд┐

рдЕрдм рдХреЛрдб рдкрд░ рдЪрд▓рддреЗ рд╣реИрдВред

void go(int n, int shag) { switch (shag) { case 0: PORTA=0b10001000; PORTD|=(1<<2); dela(n); PORTD&=0b11111011; PORTA=0; PORTD|=(1<<2); PORTD&=0b11111011; break; case 1: PORTA=0b10101010; PORTD|=(1<<2); dela(n); PORTD&=0b11111011; PORTA=0; PORTD|=(1<<2); PORTD&=0b11111011; break; case 2: PORTA=0b00100010; PORTD|=(1<<2); dela(n); PORTD&=0b11111011; PORTA=0; PORTD|=(1<<2); PORTD&=0b11111011; break; case 3: PORTA=0b01100110; PORTD|=(1<<2); dela(n); PORTD&=0b11111011; PORTA=0; PORTD|=(1<<2); PORTD&=0b11111011; break; case 4: PORTA=0b01000100; PORTD|=(1<<2); dela(n); PORTD&=0b11111011; PORTA=0; PORTD|=(1<<2); PORTD&=0b11111011; break; case 5: PORTA=0b01010101; PORTD|=(1<<2); dela(n); PORTD&=0b11111011; PORTA=0; PORTD|=(1<<2); PORTD&=0b11111011; break; case 6: PORTA=0b00010001; PORTD|=(1<<2); dela(n); PORTD&=0b11111011; PORTA=0; PORTD|=(1<<2); PORTD&=0b11111011; break; case 7: PORTA=0b10011001; PORTD|=(1<<2); dela(n); PORTD&=0b11111011; PORTA=0; PORTD|=(1<<2); PORTD&=0b11111011; break; } } 

рдЗрд╕ рдмреЙрдХреНрд╕ рдСрдлрд┐рд╕ рдХреЗ рд▓рд┐рдП рджреЛ рд╕реНрдЯреЗрдкрд░ рдореЛрдЯрд░ рдХрдВрдЯреНрд░реЛрд▓ рд╕рд░реНрдХрд┐рдЯ рд╣реИрдВред 4-рдЪрд░рдг рдФрд░ 8-рдЪрд░рдгред рдореИрдВрдиреЗ 8 рдХреЛ рдЪреБрдирд╛ рдХреНрдпреЛрдВрдХрд┐ рдЗрдВрдЬрди рдиреЗ рдмреЗрд╣рддрд░ рдХрд╛рдо рдХрд┐рдпрд╛ред

 #define DATA 2 #define SCK 1 #define LATCH 3 #define STB0 2 #define STB1 3 #define STB2 4 #define DATA_IN PORTB #define STB_IN PORTE int sck() { _delay_us(3); DATA_IN|= (1<<SCK); DATA_IN&= 0b11111101; } int x; int bit; void bait(int bait1) { x=0; while(x<8) { bit|= (1<<x); bit =bait1&bit; if (bit>0) { DATA_IN|=(1<<DATA); } else {DATA_IN&=0b11111011;} sck(); x++; } } void latch() { DATA_IN&=0b11110111; DATA_IN|=(1<<LATCH); } 

рдерд░реНрдорд▓ рд╣реЗрдб рдХреЛ рдбреЗрдЯрд╛ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдбред рдерд░реНрдорд▓ рд╣реЗрдб рд╢рд┐рдлреНрдЯ рд░рдЬрд┐рд╕реНрдЯрд░ рдХрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдореИрдВрдиреЗ рдКрдкрд░ рд▓рд┐рдЦрд╛ рд╣реИред

 void print_all_pixel() { while(n<55) { print_stroka(str[n]); _delay_us(3); n++; } latch(); n=0; STB_IN&=0b11111011; _delay_us(500); STB_IN|=(1<<STB0); STB_IN&=0b11110111; _delay_us(500); STB_IN|=(1<<STB1); STB_IN&=0b11101111; _delay_us(500); STB_IN|=(1<<STB2); //vpered(300); //n=0; //_delay_ms(100); //vpered(100); } 

рдореБрджреНрд░рдг рдФрд░ рдЬрд▓рддреА рд╣реБрдИ рд░реЗрдЦрд╛рдУрдВ рдХрд╛ рдХрд╛рд░реНрдпред

 void recieve() { ///while(f); if ((com==0x50)&&(rezhim==0))/// P { //USART_Transmit('X'); com=0; USART_Transmit('B'); rezhim=1; } if ((rezhim==1)&&(send!=0)) { str[iFF]=com; send=0; iFF++; if (send == 1) { USART_Transmit('B'); } if (iFF==54) { USART_Transmit('P'); USART_Transmit('R'); USART_Transmit('I'); USART_Transmit('N'); USART_Transmit('T'); USART_Transmit('E'); USART_Transmit('D'); PORTB|=1<<0; _delay_ms(1); print_all_pixel(); //print_all_pixel(); go1(1500,ggg); rezhim=0; iFF=0; ggg++; if (ggg==8) { ggg=0; } } } if ((com==0x52)&&(rezhim==0))///R { com=0; go1(1000,ggg); rezhim=0; iFF=0; ggg++; if (ggg==8) { ggg=0; } USART_Transmit('O'); USART_Transmit('K'); //vpered(300); } } 

рдореБрдЦреНрдп рдХрд╛рд░реНрдп рдЬреЛ рд╢рд╛рд╢реНрд╡рдд рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдШреВрдорддрд╛ рд╣реИред рдЬрдм рдкрддреНрд░ "рдкреА" рдЖрддрд╛ рд╣реИ, рддреЛ рдореИрдВ рдкреНрд░рд┐рдВрдЯ рдореЛрдб рдЪрд╛рд▓реВ рдХрд░рддрд╛ рд╣реВрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрдиреНрдп рд╕рднреА рд╡рд░реНрдг рдмрдлрд░ рдореЗрдВ рдЯрд╛рдЗрдк рдХрд┐рдП рдЬрд╛рдиреЗ рд▓рдЧрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЬрдм рдмрдлрд░ рдХреЛ 54 рдмрд╛рдЗрдЯреНрд╕ (рдпрд╛ 432 рдмрд┐рдЯреНрд╕) рдХреЗ рд╕рд╛рде рдкреИрдХ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╣рдо рд▓рд╛рдЗрди рдХреЛ рдкреНрд░рд┐рдВрдЯ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ USART рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдореБрджреНрд░рд┐рдд рд╢рдмреНрдж рднреЗрдЬрддреЗ рд╣реИрдВред
рдЦреИрд░, рдпрд╣ рд╕рдм рд▓реЛрд╣реЗ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд╕рд╛рде рд╣реИред рдЕрдЧрд▓реЗ рднрд╛рдЧ рдореЗрдВ рдореИрдВ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рднрд╛рдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓рд┐рдЦреВрдВрдЧрд╛, рдЕрд░реНрдерд╛рддреН рдЕрдЬрдЧрд░ рдореЗрдВ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВред рд╕ рд╕ рд╕ ред

рдЫрд╡рд┐

Source: https://habr.com/ru/post/hi465867/


All Articles