#include #include #include // нужен для sprintf отжирает // один вывод отжирает 900 байт памяти // Alphanumeric LCD Module functions #asm .equ __lcd_port=0x18 ;PORTB #endasm #include typedef unsigned char byte; char lcd_buffer[11]; int b=0; void main(void) { #pragma optsize- CLKPR=0x80; CLKPR=0x00; #ifdef _OPTIMIZE_SIZE_ #pragma optsize+ #endif DDRB=0xFF; // сконфиг. как выходы PORTB=0x00; DDRD=0x00; // сконфиг. как вход PORTD=0xFF; // подтяжка чтоб не вылезло джитер lcd_init(8); // LCD module initialization while(1) { if (PIND.0==0) { b=b+1; delay_ms(50); sprintf(lcd_buffer,"%u",b); lcd_gotoxy(0,0); lcd_puts(lcd_buffer); delay_ms(50); } } }