Witam.
mam problem z programem gdyż korzystając z Timera1 chciałbym w programie zmieniać prescale po wciśnięciu np. s1 na 8 a po wciśnięciu s2 na 1024, problem w tym że w najprostrzej wersji programu :
pinb.0 i pinb.1 ustawione jako wejście, stan normalny 1, są one zwierane do masy, ale mimo wszystko po wciśnięciu: s1 lub s2, wszystkich na raz lub żadnego to timer1 ma prescale ustawiony na tą wartość drugą, nawet w wypadku
gdy pinb.0 jest przyłączony do GND to timer1 nadal posiada prescale = 8
odziwo po załadowania kodu :
na wyjściach mam stany Portd.0 = 1 Portd.1 = 0 a program działa z prescale = 8
Więc moje pytanie brzmi czy jest możliwość programowej zmiany prescale podczas działania programu ? A jeśli da się to w czym może być problem ?
Z góry dziękuje za pomoc
mam problem z programem gdyż korzystając z Timera1 chciałbym w programie zmieniać prescale po wciśnięciu np. s1 na 8 a po wciśnięciu s2 na 1024, problem w tym że w najprostrzej wersji programu :
If Pinb.0 = 0 Then
Config Timer1 = Timer , Prescale = 1024
End If
If Pinb.1 = 0 Then
Config Timer1 = Timer , Prescale = 8
End If
pinb.0 i pinb.1 ustawione jako wejście, stan normalny 1, są one zwierane do masy, ale mimo wszystko po wciśnięciu: s1 lub s2, wszystkich na raz lub żadnego to timer1 ma prescale ustawiony na tą wartość drugą, nawet w wypadku
If Pinb.0 = 0 Then
Config Timer1 = Timer , Prescale = 1024
Else
Config Timer1 = Timer , Prescale = 8
End If
gdy pinb.0 jest przyłączony do GND to timer1 nadal posiada prescale = 8
odziwo po załadowania kodu :
If Pinb.0 = 0 Then
Config Timer1 = Timer , Prescale = 1024
Portd.0 = 1
portd.1 = 0
End If
If Pinb.1 = 0 Then
Config Timer1 = Timer , Prescale = 8
Portd.0 = 0
Portd.1 = 1
End If
na wyjściach mam stany Portd.0 = 1 Portd.1 = 0 a program działa z prescale = 8
Więc moje pytanie brzmi czy jest możliwość programowej zmiany prescale podczas działania programu ? A jeśli da się to w czym może być problem ?
Z góry dziękuje za pomoc