Konfiguracja portu szeregowego (COM):Standardowa ramka UART -> 8 bitów danych, 1 bit stopu, bez kontroli parzystości i przepływu
Prędkość można ustawiać w pliku eu07.ini. Ja używam 0,5Mbps (przejściówka UART-USB).
Jak działa transmisja:Transmisję rozpoczyna PC-et wysyłając pierwszy bajt danych. Mikrokontroler od razu odsyła pierwszy bajt danych.
Drugi bajt danych z PC - drugi bajt danych z uKontrolera itd.
Jeżeli uKontrolerowi skończą się dane do wysłania to tylko odbiera.
Jak to działa w praktyce: komputer nadaje całą ramkę danych. Mikrokontroler powinien niezwłocznie nadać dane do komputera. Mikrokontroler może wysłać wszystkie dane w momencie odebrania czegokolwiek od PC-ta (full-duplex). Nie wysyła się danych do PC-ta więcej razy niż PC-et wysłał do mikrokontrolera. Taki sposób transmisji zabezpiecza przed wysyłaniem danych jeżeli port szeregowy w komputerze nie został jeszcze otwarty.
Konfiguracja wejść (przycisków i przełączników):Przypisania wejść do funkcji dokonuje się w pliku
eu07_input-uart.ini. Umożliwia konfigurację sygnału jako impulsowego lub bistabilnego (przełącznika).
Konfiguracja wyjść (lampek kontrolnych, itp):Nie ma możliwości skonfigurowania tego rodzaju sygnałów. Są one na stałe przypisane do danego Bajtu i bitu (patrz dokumentacja w arkuszu kalkulacyjnym).
Wpisy do pliku eu07.ini:Do wygenerowania wpisów polecam aplikację
MWD SerialPort tester (link niżej). Umożliwia załączenie/wyłączenie obsługi nastawników, kranów hamulców (wejść), kalibrację mierników (manometrów i elektrycznych), konfigurację prędkości transmisji danych i inne.
Programy i przydatne pliki do programowania i testowania elektroniki do pulpitów:
Pod linkiem
https://drive.google.com/drive/folders/17aRJMr7fRE2PSOPi4jztCh_sjgfq0Xwz?usp=sharing znajdziecie kilka plików i program, które mogą przydać się przy budowie elektroniki do pulpitu:
- Program MWD SerialPort tester służy do generacji wpisów do pliku eu07.ini oraz testowania komunikacji z elektroniką - emulacja symulatora. Można w nim zadawać i odczytywać stany przełączników i kontrolek, odczytywać wartości nastawników i innych kontrolerów. Podczas pierwszego uruchomienia generują się pliki indicatorInfo.ini i switchInfo.ini, w których można przypisać nazwy do kontrolek i przełączników. Program wspomaga ramkę danych od Milek7, opisaną w pliku poniżej.
- Plik * Maszyna Uart.ods zawiera informacje na temat danych wysyłanych w obu kierunkach
- Plik libserialport-0.dll: można go podmienić z plikiem w folderze maszyny jeżeli komunikacja z moim programem działa, a Maszyna się nie włącza i generowany jest plik dump (mnie pomogło).
MWD SerialPort tester Zrzuty z programu dostępne tutaj:
https://drive.google.com/drive/folders/1kNK0Q2bLePwM6I0lvyZe6gXf6CnAO8GtWypuściłem wersję 1.2.2
1.0 (u mnie działa). Jeżeli są jakieś problemy proszę o stosowną informację w PW. Program zgodny z wersją MaSzyny21.04 i exe od Tmj.
Komunikacja od dłuższego czasu działa na standardowym exe, pomimo tego załączam linki do exe Tmj:
- od Milek7: https://ci.appveyor.com/project/Milek7/maszyna/build/artifacts- Tmj:
https://eu07.pl/forum/index.php/topic,28920.0.htmlexe od Tmj obsługuje już nową ramkę.
Linki do plików źródłowych na github:https://github.com/eu07/maszyna/blob/master/uart.hhttps://github.com/eu07/maszyna/blob/master/uart.cppLista zmian:
Aktualizacja 2021.05.10 2220
MWDSerialPortTester 1.2.2. Dodana obsługa manometru pantografu i porządki w kodzie.
Aktualizacja 2020.05.31 1130
Edycja postu: uzupełnienie informacji.
Aktualizacja 2020.05.12 2100
MWDSerialPortTester 1.0. Poprawa wyglądu i drobne porządki w kodzie.
Aktualizacja 2020.04.13 1320
Aktualizacja arkusza kalkulacyjnego o przekaźnik różnicowy (ground_relay). Exe Tmj powinno współpracować z nową ramką.
Aktualizacja 2020.04.10 1830
MWDSerialPortTester 0.2.2 poprawiono generację wpisów do pliku eu07.ini oraz dodano wpis uarttachoscale - mnożnik prędkości.
Aktualizacja 2020.04.09 2135
do programu MWDSerialPortTester dodano generację wpisów do pliku eu07.ini.
Aktualizacja 2020.04.08 1855
Powoli dokonuję zmian w tym wpisie. Będę go czyścił i redagował na nowo.
Exe z jakim współpracować będzie opisana ramka będzie od Milek7.