Спойлер
#include <mega8.h>#include <alcd.h>
#include <delay.h>
volatile unsigned char x; /*переменная "результат +1"*/
volatile unsigned char a; /*переменная для вывода на "LCD"*/
void main(void)
{
PORTB=0x00;
DDRB=0x00;
PORTC=0x00;
DDRC=0x00;
PORTD=0x00;
DDRD=0xFF;
TCCR0=0x00;
TCNT0=0x00;
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;
MCUCR=0x00;
TIMSK=0x00;
UCSRB=0x00;
ACSR=0x80;
SFIOR=0x00;
ADCSRA=0x00;
SPCR=0x00;
TWCR=0x00;
// RS - PORTB Bit 0
// RD - PORTB Bit 1
// EN - PORTB Bit 2
// D4 - PORTB Bit 5
// D5 - PORTB Bit 6
// D6 - PORTB Bit 7
// D7 - PORTB Bit 8
// Characters/line: 4
lcd_init(8);
while (1)
{
if (PINC.0 == 1) { /*нажата кномпа "подение мишени"*/
PORTD.0=1; /*включение матора на "поднятие мишени"*/
a=x++; /*"+ 1" к счету попаданий*/
};
if (PINC.1 == 1) { /*нажата кнопка "мишень установлена"*/
PORTD.0=0; /*реверс матора для убирания подемной дуги*/
PORTD.1=1; /*реверс матора для убирания подемной дуги*/
};
if (PINC.2 == 1) { /*нажата кнопка "подемная дуга на месте"*/
PORTD.1=0; /*остановка матора*/
PORTD.4=1; /*включение светового индикатора"стрелять разрешено"*/
}
else {
PORTD.4=0; /*выключение светового индикатора "стрелять разрешено"*/
};
lcd_init( 16 ); /* инициализация на 16 символов */
lcd_clear( ); /* очистка дисплея */
lcd_gotoxy( 3,0 ); /* верхняя строка, 4 позиция */
lcd_putsf( "POPAL-" ); /* выводим надпись в указанных координатах */
lcd_gotoxy( 9,0 ); /* нижняя строка, 0 позиция */
lcd_putsf( unsigned char a ); /* вывод значения на дисплей*/
lcd_gotoxy( 3,1 ); /* верхняя строка, 4 позиция */
lcd_putsf( "AVTO MICHEN'" ); /* выводим надпись в указанных координатах */
}
}
не могу организовать счетчик

