Генератор прямоугольной волны 0,1 Гц с рабочим циклом 30% в сборке
У меня есть этот код здесь для генерации прямоугольной волны с рабочим циклом 50% и частотой 0,1 Гц с Fosc 8 МГц:
BCF TRISD,7
MOVLW 0x07
MOVWF T0CON
HERE MOVLW 0x67
MOVWF TMR0L
MOVLW 0x69
MOVWF TMR0H
BCF INTCON,TMR0IF
BTG PORTD,7
BSF T0CON,TMROON
AGAIN BTFSS INTCON,TMR0IF
BRA AGAIN
BCF T0CON,TMR0ON
BRA HERE
То, что я хочу, это как изменить этот код, чтобы выполнять прямоугольную волну вместо прямоугольной волны и с рабочим циклом 30% вместо 50%.
Я надеюсь, что кто-то может помочь мне, и спасибо заранее
1 ответ
Спасибо за помощь, господин Weather Vane. Я отредактировал код для выполнения 30% -ного рабочего цикла, но часть задержки я так и не смог решить...
Вот обновление..
BCF TRISD,2
MOVLW 0x07
MOVWF T0CON
HERE: MOVLW 0xE5
MOVWF TMR0L
MOVLW 0x48
MOVWF TMR0H
BCF INTCON,TMR0IF
BTG PORTD,2
BSF T0CON,TMR0ON
AGAIN: BTFSS INTCON,TMR0IF
BRA AGAIN
BCF T0CON,TMR0ON
BRA HERE