Może tutaj mi ktoś życzliwy pomoże. Przepraszam, że robię kopiuj - wklej z innego forum, ale nikt mi tam nie pomógł, a zależy mi na czasie bo urlop się kończy
".nie zajmujmy się całością, a tym, że na wyprowadzeniu nr 1 ATTINY26 powinien być generowany przebieg o częstotliwośći 100Hz i czasie trwania stanu niskiego 70us. Chcę zmienić te parametry - gdzie to jest proszę mi powiedzieć??
"
".nie zajmujmy się całością, a tym, że na wyprowadzeniu nr 1 ATTINY26 powinien być generowany przebieg o częstotliwośći 100Hz i czasie trwania stanu niskiego 70us. Chcę zmienić te parametry - gdzie to jest proszę mi powiedzieć??
$regfile = "AT26DEF.DAT"
$crystal = 10000000
'ustaw port b3, b2 jako wyjścia
Ddrb = &B00001111
'ustaw stan wysoki na b3, b2
Portb = &B00001111
Pllcsr = &B00000010
Pllcsr = &B00000111
Ocr1c = 255
'wypełnienie
Ocr1a = 128
'wypełnienie
Ocr1b = 128
'1k
Osccal = 119
'1k
Tccr1b = 72
'włączenie PWM
Tccr1a = &B00010001
Const _on = 1
Const _off = 0
Config Pina.0 = Input
Config Pina.1 = Input
Config Pina.2 = Input
Config Pina.3 = Input
Config Pina.4 = Input
Config Pina.5 = Input
Config Pina.6 = Input
Config Pina.7 = Input
Porta = 255
Config Pinb.0 = Output
Config Pinb.1 = Output
Pulse Alias Portb.0
Noise Alias Portb.1
Dim Xdelay As Byte
Dim M_xdelay As Byte
Dim Sustain As Byte
Dim M_sustain As Byte
If Pina.0 = 0 Then
Xdelay.0 = 1
Else
Xdelay.0 = 0
End If
If Pina.1 = 0 Then
Xdelay.1 = 1
Else
Xdelay.1 = 0
End If
If Pina.2 = 0 Then
Xdelay.2 = 1
Else
Xdelay.2 = 0
End If
If Pina.3 = 0 Then
Xdelay.3 = 1
Else
Xdelay.3 = 0
End If
If Pina.4 = 0 Then
Sustain.0 = 1
Else
Sustain.0 = 0
End If
If Pina.5 = 0 Then
Sustain.1 = 1
Else
Sustain.1 = 0
End If
If Pina.6 = 0 Then
Sustain.2 = 1
Else
Sustain.2 = 0
End If
If Pina.7 = 0 Then
Sustain.3 = 1
Else
Sustain.3 = 0
End If
Select Case Xdelay
Case 0 :
Xdelay = 65 '26
M_xdelay = 38 '26
Case 1 :
Xdelay = 68 '27
M_xdelay = 35 '27
Case 2 :
Xdelay = 70 '28
M_xdelay = 33 '28
Case 3 :
Xdelay = 73 '29
M_xdelay = 30 '29
Case 4 :
Xdelay = 75 '30
M_xdelay = 28 '30
Case 5 :
Xdelay = 78 '31
M_xdelay = 25 '31
Case 6 :
Xdelay = 80 '32
M_xdelay = 23 '32
Case 7 :
Xdelay = 83 '33
M_xdelay = 20 '33
Case 8 :
Xdelay = 85 '34
M_xdelay = 18 '34
Case 9 :
Xdelay = 88 '35
M_xdelay = 15 '35
Case 10 :
Xdelay = 90 '36
M_xdelay = 13 '36
Case 11 :
Xdelay = 93 '37
M_xdelay = 10 '37
Case 12 :
Xdelay = 95 '38
M_xdelay = 8 '38
Case 13 :
Xdelay = 98 '39
M_xdelay = 5 '39
Case 14 :
Xdelay = 100 '40
M_xdelay = 3 '40
Case 15 :
Xdelay = 103 '41
M_xdelay = 0 '41
End Select
Select Case Sustain
Case 0 :
Sustain = 63 '25
M_sustain = 188 '25
Case 1 :
Sustain = 75 '30
M_sustain = 175 '30
Case 2 :
Sustain = 88 '35
M_sustain = 163 '35
Case 3 :
Sustain = 100 '40
M_sustain = 150 '40
Case 4 :
Sustain = 113 '45
M_sustain = 138 '45
Case 5 :
Sustain = 125 '50
M_sustain = 125 '50
Case 6 :
Sustain = 138 '55
M_sustain = 113 '55
Case 7 :
Sustain = 150 '60
M_sustain = 100 '60
Case 8 :
Sustain = 163 '65
M_sustain = 88 '65
Case 9 :
Sustain = 175 '70
M_sustain = 75 '70
Case 10 :
Sustain = 188 '75
M_sustain = 63 '75
Case 11 :
Sustain = 200 '80
M_sustain = 50 '80
Case 12 :
Sustain = 213 '85
M_sustain = 38 '85
Case 13 :
Sustain = 255 '90
M_sustain = 25 '90
Case 14 :
Sustain = 238 '95
M_sustain = 13 '95
Case 15 :
Sustain = 250 '100
M_sustain = 0 '100
End Select
Pulse = 1
Noise = 0
'GŁÓWNA PĘTLA PROGRAMU
Do
Noise = _on
Waitus 1
Pulse = _off
Waitus 70
Pulse = _on
$asm
lds r30 , {Xdelay} '41
Giga1:
dec r30
cpi r30,0
brne Giga1
$end Asm
Noise = _off
$asm
lds r30 , {Sustain} '100
Giga2:
dec r30
cpi r30,0
brne Giga2
$end Asm
Noise = _on
$asm
lds r30 , {M_Xdelay} '41
Giga3:
dec r30
cpi r30,0
brne Giga3
$end Asm
$asm
lds r30 , {M_Sustain} '100
Giga4:
dec r30
cpi r30,0
brne Giga4
$end Asm
Waitus 9788
Loop
End