Witam,
napisalem programik ktory wykorzystuje funkcje mid(). Wszystko w symulatorze na komputerze dziala dobrze. Natomiast jesli ten program wrzuce na procesor to ta funkcja nie dziala.
o to kod:
Dim J As Integer
Dim Tab() As Xram String * 8
Dim P As Xram String * 8
Strobe2_ Alias P1.5
Data2_ Alias P1.6
Clock2_ Alias P1.7
Dim I As Integer
do
For I = 1 To 5
Tab(1) = "1010101"
Reset Strobe2_
For J = 1 To 7
P = Mid(tab(1) , J , 1)
If P = "1" Then
Set Data2_
Else
Reset Data2_
End If
Set Clock2_
Reset Clock2_
Next J
Set Strobe2_
Next I
loop
co dzila zle to to ze caly czas jest ustawiony port data2_ ( p1.6) w stanie 1 (5v). Czyli nie dziala reset tego portu..
Czy ktos wie czemu tak sie dzieje ?
Moze sa jakies sugestie zeby to inaczej napisac?
pozdrawiam
Jaculka
Aktyw Forum
Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.
Sprawdź punkty Zarejestruj sięfunkcja mid() nie dziala na procesorze.. :/
Moderatorzy:Jacek Bogusz, robertw, k.pawliczak, Moderatorzy
Dim Tab_1 As Byte
Dim I As Byte
Strobe2_ Alias P1.5
Data2_ Alias P1.6
Clock2_ Alias P1.7
Tab_1 = 170
Reset Strobe2_
For I = 0 To 7
Data2_ = Tab_1.i
Set Clock2_
Waitms 1
Reset Clock2_
Next
Set Strobe2_
nie analizowałem wnikliwie twojego programu , ale wydaje mi się że powinieneś zrobić to na bitach , a nie na stringach
pozatym są inne sposoby na szeregowe wysłanie danych przez port ( bo oto ci chyba chodzi)
pozdrawiam
Dim I As Byte
Strobe2_ Alias P1.5
Data2_ Alias P1.6
Clock2_ Alias P1.7
Tab_1 = 170
Reset Strobe2_
For I = 0 To 7
Data2_ = Tab_1.i
Set Clock2_
Waitms 1
Reset Clock2_
Next
Set Strobe2_
nie analizowałem wnikliwie twojego programu , ale wydaje mi się że powinieneś zrobić to na bitach , a nie na stringach
pozatym są inne sposoby na szeregowe wysłanie danych przez port ( bo oto ci chyba chodzi)
pozdrawiam
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 44 gości