Mam programik do sterowania diodą załańczanie wyłączanie. Chciałbym aby migała z częstotliwościa 1kHz i 10 kHz. Nie mogę znaleźć wzoru na częstotliwośc, wiem że musze zmianiać CPI R17 mam ustawione na 100 ale nie wiem jak obliczyć jego czestotliwość przy tych wartościach.
KOD
.INCLUDE „m8def.inc”
.CSEG
.ORG $0000
RJMP RESETaddr
.ORG $0000
LDI R16,High(RAMEND)
OUT SPH,R16
LDI R,16LOW(RAMEND)
OUT SPL,R16
RESETaddr: SBI DDRD,DDD0
SBI PORTD,PD0
LDI R17,0
TEST: SBIC PORT, PD0
RJMP CLEAR_B
SBI PORTD,PD0
RCALL DELAY
RJMP TEST
CLEAR_B CBI PORTB,PD0
RCALL DELAY
RJMP TEST
DELAY INC R17
CPI R17,100
BRNE DELAY
LDI R17,0
RET
KOD
.INCLUDE „m8def.inc”
.CSEG
.ORG $0000
RJMP RESETaddr
.ORG $0000
LDI R16,High(RAMEND)
OUT SPH,R16
LDI R,16LOW(RAMEND)
OUT SPL,R16
RESETaddr: SBI DDRD,DDD0
SBI PORTD,PD0
LDI R17,0
TEST: SBIC PORT, PD0
RJMP CLEAR_B
SBI PORTD,PD0
RCALL DELAY
RJMP TEST
CLEAR_B CBI PORTB,PD0
RCALL DELAY
RJMP TEST
DELAY INC R17
CPI R17,100
BRNE DELAY
LDI R17,0
RET