Сообщение от
Сергей Урал
Сообразить как это сделать ни как не могу, именно по этой причине обратился за помощью.
Поди туда- не знаю куда, принеси то- не знаю что.
Код:
$regfile = "attiny13a.dat"
$crystal = 9600000
$hwstack = 16
$swstack = 16
$framesize = 12
'откл CKDIV8
Config Clockdiv = 1
'конфигурация выхода
Config Portb.0 = Output
Vyhod Alias Portb.0
'****************************
Const Ts = 2
'1 дергает ногу по переполнении Т0
'2 дёргает ногу с PWM
'****************************
#if Ts = 1
Dim T As Byte : T = 106 'clock / T and Prescale 1khz
Config Timer0 = Timer , Prescale = 64 'Prescale value must be 1,8,64,256 or 1024
On Timer0 Impulse
Enable Timer0
Start Timer0
Enable Interrupts
#endif
'****************************
#if Ts = 2 'PWM
Config Timer0 = Pwm , Compare A Pwm = Clear Down , Prescale = 64
' Pwm0a = 128 'скважность=2
Do
!lds R16 , {Pwm0a} 'Плавная перестройка ШИМ
!dec R16
!sts {Pwm0a} , R16
Waitms 10
Loop
#endif
'############################
#if Ts = 1
Do
nop
Loop
'.'.'.'.'.'.'.'.'.
Impulse:
Toggle Vyhod
Tcnt0 = T
Return
#endif
Ts написано что делает при компиляции. Оба варианта таймером дёргают ногу. Типа аппаратно. Второй вариант с PWM. Если Pwm0a установить половину разрядности Т0 получите разыскиваемый "аппаратный меандр".