
rpz3598 » Пт июл 23, 2021 12:37 pm

rpz3598 » Пт июл 23, 2021 12:43 pm

rpz3598 » Вс июл 25, 2021 3:34 pm

rpz3598 » Вс июл 31, 2022 11:53 pm

rpz3598 » Вс июл 31, 2022 11:54 pm

rpz3598 » Пн авг 01, 2022 1:04 am

rpz3598 » Сб авг 13, 2022 2:30 am

rpz3598 » Вс авг 14, 2022 8:33 am

rpz3598 » Ср авг 24, 2022 5:41 pm

rpz3598 » Чт авг 25, 2022 6:36 pm

rpz3598 » Сб авг 27, 2022 1:54 am

rpz3598 » Сб авг 27, 2022 3:49 am

rpz3598 » Сб авг 27, 2022 4:39 am
#include <avr/io.h>
#include <avr/interrupt.h>
#include <avr/eeprom.h>
#include <util/delay.h>
//#include <stdio.h>
#include <stdlib.h>
#include <inttypes.h>
#include <stdint.h>
#include <math.h>
void upState()
{
IncFreq ();
}
void downState()
{
DecFreq();
}
//interrupt [TIM2_COMP] void timer2_comp_isr(void) //fix
uint8_t NewState,OldState;
void CheckEncoder()
{
NewState=PIND & 0b00000011;
if(NewState!=OldState)
{
switch(OldState)
{
case 2:
{
if(NewState == 3) upState();
if(NewState == 0) downState();
break;
}
case 0:
{
if(NewState == 2) upState();
if(NewState == 1) downState();
break;
}
case 1:
{
if(NewState == 0) upState();
if(NewState == 3) downState();
break;
}
case 3:
{
if(NewState == 1) upState();
if(NewState == 2) downState();
break;
}
}
OldState=NewState;
}
//TCNT2=0x00; //fix змінити
}
void InitPorts( void )
{
// DDRD = 0b11100010; // PD0 RX,PD1 TX , PD2 Int0 RDCL, PD3 Int 1 Q, PD4 RDDA, PD5 DI, PD6 CL PD7 CE
DDRD = 0b11100000; // PD0 ENC0,PD1 ENC1 , PD2 Int0 RDCL, PD3 Int 1 Q, PD4 RDDA, PD5 DI, PD6 CL PD7 CE
PORTD=0b00011111 ;
DDRB = 0b00111111; //PB0-PB3 D0-D4 , PB4 RS, PB5 E
DDRC = 0b00000000; //PC0,PC1 AIN or input, PC2,PC3 PC4 Input
PORTC = 0b00011100;
//LC72131_DDR|=(1<<LC72131_CE)|(1<<LC72131_CL)|(1<<LC72131_DI );
//LC72131_DDR&=~(1<<LC72131_DO );
//LC72131_PORT&=~(1<<LC72131_CE)|(1<<LC72131_CL)|(1<<LC72131_DI );
GIMSK&=~(1<<INT0);
LCD_init();
//LCD_cursor(0);
ADC_Init();
return;
}
...
#include "encoder.h"
int main(void)
{
InitPorts( );
InitLC72131();
LC72131_SetBand_Mode(FM_STEREO_MODE);
DecodeStep(Pos);
ReadMemory();
UpdateFreq(mode);
Timer1_Init();
while(1) { Control(); CheckEncoder(); _delay_ms(5); }
}

rpz3598 » Сб авг 27, 2022 4:47 am

rpz3598 » Вс авг 28, 2022 7:11 am

rpz3598 » Вс авг 28, 2022 1:45 pm

rpz3598 » Вс авг 28, 2022 2:30 pm

rpz3598 » Вс авг 28, 2022 4:15 pm

rpz3598 » Сб сен 03, 2022 9:24 pm

rpz3598 » Сб сен 10, 2022 5:41 pm

