Witaj,
Używam programowej obsługi wejściowego bufora FIFO USARTa zaimplementowanego w Bascomie oraz następującej konstrukcji do jego obsługi umieszczonej w głównej pętli programu:
Wszystko działa fajnie tyle, że przy włączaniu urządzenia zmienna _rs_bufcountr0 (wskaźnik liczby bajtów w programowym buforze danych - wewn. zmienna Bascoma) potrafi być <>0 niewiadomo dlaczego. Podobnie jest (czasami) gdy zmieniam prędkość transmisji korzystając z instrukcji Baud. Dodam, iż nie przesyłam w tym czasie danych do procka (ma podłączony FT232 do wejść USARTa)... Dziwna sprawa - macie jakiś pomysł? A może zmienna nie jest zerowana przy starcie co byłoby dziwne i wyklucza jej zmianę przy zmianie prędkości transmisji czyli operowania wyłącznie na rejestrach konfiguracyjnych... robiw
Używam programowej obsługi wejściowego bufora FIFO USARTa zaimplementowanego w Bascomie oraz następującej konstrukcji do jego obsługi umieszczonej w głównej pętli programu:
'Konfigurujemy programowy bufor sprzętowy
Config Serialin = Buffered , Size = 128
Enable Interrupts
.........
'W pętli głównej:
If _rs_bufcountr0 <> 0 Then
Do
Dana = Inkey() 'Wczytujemy bajt z programowego bufora FIFO
'Tutaj wykonuję jakies działania na odczytanej danej
Loop Until _rs_bufcountr0 = 0
End if
Wszystko działa fajnie tyle, że przy włączaniu urządzenia zmienna _rs_bufcountr0 (wskaźnik liczby bajtów w programowym buforze danych - wewn. zmienna Bascoma) potrafi być <>0 niewiadomo dlaczego. Podobnie jest (czasami) gdy zmieniam prędkość transmisji korzystając z instrukcji Baud. Dodam, iż nie przesyłam w tym czasie danych do procka (ma podłączony FT232 do wejść USARTa)... Dziwna sprawa - macie jakiś pomysł? A może zmienna nie jest zerowana przy starcie co byłoby dziwne i wyklucza jej zmianę przy zmianie prędkości transmisji czyli operowania wyłącznie na rejestrach konfiguracyjnych... robiw