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ęŁadowanie HEX pod Win 98 i Win 2000
Moderatorzy:Jacek Bogusz, robertw, k.pawliczak, Moderatorzy
-
- -
- Posty:21
- Rejestracja:21 mar 2004, o 18:51
- Lokalizacja:Iwonicz Zdrój, woj podkarpackie
- Kontaktowanie:
Zauważyłem dziwny problem, mianowicie jak ładuję HEXa do procka pod Windows 2k układ nie dział mi poprawnie. Na PC odbieram jakieś "chińskie" gryzmoły.
Pod Windows 98SE problem nie wystepuje, odbieram wszystko prawidłowo. Dodatkowo transmisja odbywa się "jakoś" szybciej.
Dodam, że ładowany jest ten sam plik HEX i takie same są ustawienia transmisji.
Drugie pytanie dotyczy maksymalnej prędkości RS232c udostepnianej pod wyzej wyienionymi systemami. Win 2000 oferuje maksymalnie 128 kb/s, W98 cos okolo 920 k/s. O co tutaj chodzi ??
Pod Windows 98SE problem nie wystepuje, odbieram wszystko prawidłowo. Dodatkowo transmisja odbywa się "jakoś" szybciej.
Dodam, że ładowany jest ten sam plik HEX i takie same są ustawienia transmisji.
Drugie pytanie dotyczy maksymalnej prędkości RS232c udostepnianej pod wyzej wyienionymi systemami. Win 2000 oferuje maksymalnie 128 kb/s, W98 cos okolo 920 k/s. O co tutaj chodzi ??
-
- -
- Posty:175
- Rejestracja:10 paź 2003, o 20:44
- Lokalizacja:Białystok
- Kontaktowanie:
Nie porównuj obsługi portów w W2K i 98 bo to dwie różne sprawy. W2K robi to za pośrednictwem HAL-a, a co za tym idzie dostęp do portu jest tylko przez Win API. W Windowsie98 jest możliwy dostęp bezpośredni (tak jak w DOS-ie). W sytuacji, gdy konstrukcja programatora i algorytm programowania wymagają dokładnego doboru czasów, najlepiej jest korzystać z systemów umożliwiających pracę z portem w trybie direct.
-
- -
- Posty:175
- Rejestracja:10 paź 2003, o 20:44
- Lokalizacja:Białystok
- Kontaktowanie:
Tak jak w jednozadaniowym dosie to nie ma w żadnej windzie. Owszem, seria 9x umożliwia dostęp do rejestrów sprzętowych przez 'dosowe' wstawki asemblerowe co w programie wygląda tak samo - ale w rzeczywistości wstawki te są też przetwarzane przez kernel - z wyłącznym przejmowaniem kontroli nad sprzętem nie ma to nic wspólnego. Do precyzyjnego ( i powtarzalnego ) odmierzania czasów żaden system wielozadaniowy ( jednoprocesorowy ) raczej się nie nadaje - to sama w sobie sprzeczność. To zresztą forum elektroniczne - takie zadania realizujemy przez dodatkowy inteligentny hardware ) - tylko softwarowcy są skazani na system i porty PCNie porównuj obsługi portów w W2K i 98 bo to dwie różne sprawy. W2K robi to za pośrednictwem HAL-a, a co za tym idzie dostęp do portu jest tylko przez Win API. W Windowsie98 jest możliwy dostęp bezpośredni (tak jak w DOS-ie). W sytuacji, gdy konstrukcja programatora i algorytm programowania wymagają dokładnego doboru czasów, najlepiej jest korzystać z systemów umożliwiających pracę z portem w trybie direct.
Pozdrowienia
Jurek Szczesiul
Rzeczywiście, wielozadaniowość w Wingrozie, pomimo zapewnień fachowców z Redmont, zawsze była mrzonką. Znacznie lepiej radziła sobie z tym np. Amiga. W tej chwili, można dość dobrze obsłużyć porty spod Unixa (z Linuxem włącznie).
Podczas pracy z portami nie jest istotny fakt, czy ma się całkowitą kontrolę nad sprzętem, ważne, by kontrola ta była wystarczająca, a to daje możliwość bezpośredniego odwoływania się do portu (właściwego rejestru). W przypadku W2K mamy do dyspozycji tylko funkcje.
Często korzystam z programatora JDM (PIC16...). Efekt jest taki, że pod W98 programowanie zawsze kończy się sukcesem, pod W2K (i Win API), rzadko. W tym przypadku problem może wynikać z trudności w wygenerowaniu właściwego napięcia programującego, ale to też świadczy o kompletnym braku nadzoru nad czasem dostępu do portu.
Podczas pracy z portami nie jest istotny fakt, czy ma się całkowitą kontrolę nad sprzętem, ważne, by kontrola ta była wystarczająca, a to daje możliwość bezpośredniego odwoływania się do portu (właściwego rejestru). W przypadku W2K mamy do dyspozycji tylko funkcje.
Często korzystam z programatora JDM (PIC16...). Efekt jest taki, że pod W98 programowanie zawsze kończy się sukcesem, pod W2K (i Win API), rzadko. W tym przypadku problem może wynikać z trudności w wygenerowaniu właściwego napięcia programującego, ale to też świadczy o kompletnym braku nadzoru nad czasem dostępu do portu.
-
- -
- Posty:175
- Rejestracja:10 paź 2003, o 20:44
- Lokalizacja:Białystok
- Kontaktowanie:
Nie tylko API - są też sterowniki umożliwiające dostęp do przestrzeni I/OW przypadku W2K mamy do dyspozycji tylko funkcje.
Często korzystam z programatora JDM (PIC16...). Efekt jest taki, że pod W98 programowanie zawsze kończy się sukcesem, pod W2K (i Win API), rzadko. W tym przypadku problem może wynikać z trudności w wygenerowaniu właściwego napięcia programującego, ale to też świadczy o kompletnym braku nadzoru nad czasem dostępu do portu.
pod w2k/XP ( np. free DriverLynx ).
IMHO dużo tez zależy od tolerancji protokołu. Z powodzeniem używałem ISP ( 8252,avr ) 'napedzanego' sterowanymi wyłącznie API pinami portu RS - zarówno pod 9x jak i XP. Ten sam układ pozwalał także na obsługę I2C ( master transmitter/receiver ). Ale fakt, że zależności czasowe nie są tu zbyt wyśrubowane - jak gdzieś wskoczy przełączanie wątku to nie rozwala od razu transmisji.
Pozdrowienia
JS
-
- -
- Posty:175
- Rejestracja:10 paź 2003, o 20:44
- Lokalizacja:Białystok
- Kontaktowanie:
I tak masz więcej doświadczeń praktycznych - prawdę powiedziawszy Lynx'a nigdy do konkretnych rzeczy nie używałem. IMHO za wiele chyba nie ma co od takiej uniwersalki oczekiwać. Pewnie dałoby się i z windy dużo więcej wycisnąć pisząc dobre dedykowane drivery - ale to nie na moje amatorskie programowanieAkurat Lynx'a używałem do szybkiej transmisji przez port równoległy w trybie EPP .. Ale i tak te sterowniki nie wnoszą żadnej nowej jakości w porównaniu z API. Dla zrealizowania w miarę ciągłej łączności kompa z "resztą świata" w czasie rzeczywistym, jednak preferowałbym Linuxa.
Pozdrowienia Jurek S.
Hmmm ... własne sterowniki ? Aż takim pasjonatem nie jestem ...
Mimo to, w momencie dotarcia do kolejnej przeszkody systemowej, trochę żal czasów assemblera i ośmiobitowców ...
Chyba jednak zrobię sobie JDM2. Trochę wkurza konieczność przełączania na Win98, gdy trzeba zaprogramować kolejnego PIC-a ...
Mimo to, w momencie dotarcia do kolejnej przeszkody systemowej, trochę żal czasów assemblera i ośmiobitowców ...
Chyba jednak zrobię sobie JDM2. Trochę wkurza konieczność przełączania na Win98, gdy trzeba zaprogramować kolejnego PIC-a ...
-
- -
- Posty:21
- Rejestracja:21 mar 2004, o 18:51
- Lokalizacja:Iwonicz Zdrój, woj podkarpackie
- Kontaktowanie:
Programuję aplikację ADuC812 przez RS232c. Do tego jest podpięty MAX232 wraz z 4 kondensatorami.
Co do prędkości, to poprzez karty bądź konwertery mozna uzyskać znacznie większe prędkości transmisji nie uzyskam, bo zostaję przy RS dostarczonym wraz z płytą główną.
Jak mam rozumieć zagadnienia Win32API oraz bezpośredniego dostępu do portów spod Windy 98?
Czy pisząc program na PC w oparciu o API (W2k) będe miał problemy z jego działaniem pod W98 ? Z tego co wiem W98 równiez posiada API i aplikacje napisane pod W2k działają pod W98.
Co do prędkości, to poprzez karty bądź konwertery mozna uzyskać znacznie większe prędkości transmisji nie uzyskam, bo zostaję przy RS dostarczonym wraz z płytą główną.
Jak mam rozumieć zagadnienia Win32API oraz bezpośredniego dostępu do portów spod Windy 98?
Czy pisząc program na PC w oparciu o API (W2k) będe miał problemy z jego działaniem pod W98 ? Z tego co wiem W98 równiez posiada API i aplikacje napisane pod W2k działają pod W98.
-
- -
- Posty:175
- Rejestracja:10 paź 2003, o 20:44
- Lokalizacja:Białystok
- Kontaktowanie:
Stosujesz tradycyjne rozwiązania komunikacji - pisz spokojnie używając API - podstawowe funkcje są takie same dla różnych Windowsów. Wywody o bezpośrednich dostępach dotyczyły możliwości ominięcia API w celu uzyskania większej, szybszej i bardziej precyzyjnej kontroli nad hardwarem portu.Programuję aplikację ADuC812 przez RS232c. Do tego jest podpięty MAX232 wraz z 4 kondensatorami.
Jak mam rozumieć zagadnienia Win32API oraz bezpośredniego dostępu do portów spod Windy 98?
Czy pisząc program na PC w oparciu o API (W2k) będe miał problemy z jego działaniem pod W98 ? Z tego co wiem W98 równiez posiada API i aplikacje napisane pod W2k działają pod W98.
Pozdrowienia Jurek S.
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 45 gości