sobota, 15 sierpnia 2015

Sterowanie RS232

Program do obsługi portu COM. Aplikacja posiada 4 zakładki.
W pierwszej zakładce można zmieniać stany linii RTS, DTR, TXD , podłączając według 'Schem1' można sterować diodami. W tej zakładce można również sprawdzić stan linii DCD, RI, DSR, CTS (5V = 1).
Druga zakładka służy do wysyłania i odbierania tekstu (ASCII) oraz cyfr w systemie dziesiętnym, może służyć jako terminal. Żeby przetestować transmisję trzeba podłączyć dwa porty COM według 'Rys1' lub użyć np. takiego programu Configure Virtual Serial Port Driver. Wyświetla dane w Ascii, Hex i Dec.
Na trzeciej zakładce można sterować wyświetlaczem LCD poprzez odpowiednio zaprogramowany mikrokontroler. Jest zawarta pełna obsługa kodów sterujących dla układu Wyświetlacz LCD na RS- 232 (nie gubi znaków). Położenie kursora dla pierwszego wiersza jest od 1 -> 16 a dla drugiego od 33 -> 48.
Czwarta zakładka (beta) obsługuje połączenie 1wire dla cyfrowych czujników temperatury DS18B20 (według klasy z której korzystałem te też powinny DS1820, DS1822, DS18S20) według 'Schem2' a dla przejściówki z FT232R 'Shem3'. Miałem tylko 2 czujniki ale powinno do 15 czujników obsługiwać połączonych według 'Rys2' lub 'Rys3'.

Schem1
Rys1
Schem2
Schem3 (FT232R)
Rys2

Rys3 (parasite power)



Oto obrazki przedstawiające aplikację:

Ustawienia

Sterowanie i odczyt stanu linii

Wysyłanie i odbieranie tekstu / monitorowanie COM / Terminal

Wysyłanie cyfr w systemie dziesiętnym


Sterowanie LCD

Odczytywanie temperatury
Sterowanie diodami LED

Sterowanie LCD



Gotowa klasa dla C++ Builder pod obsługę 1-Wire (dzięki za pomoc użytkownikowi polymorphism z forum za pomoc w poprawie kodu pod C++ Builder), dodałem do klasy obsługę portów COM >9.