Wszystko powinno wyjaśnić to: Jeśli w buforze nie ma żadnego znaku funkcja zwraca zero. Można najpierw sprawdzić czy w buforze transmisji znajduje się jakikolwiek znak. W tym celu należy skorzystać z funkcji ISCHARWAITING() . Nie sprawdzasz wogóle czy znak jest w buforze, zatem dostajesz głupoty.
[url=http://forum.mojasymfonia.pl/viewto...
Witam. Po pierwsze pinguj adresy IP nie zmieniając wielkości bufora transmisji! Po drugie sprawdź połączenie antena-karta sieciowa. Po trzecie wyślij ping na bramę sieciową dostawcy. Po czwarte podaj konfigurację łącza(access point, router). Czy rozdzielasz w swoim domu internet bezprzewodowo? Jak na razie to wróżymy z szklanej kuli...
Mnie zastanawia jedna rzecz, skoro korzystasz z przerwań to po jakiego grzyba tam input? Zobacz jak mozna to rozwiazac: Odebrano: Disable Urxc ' wylaczenie przerwania na czas trwania aktualnego 'Jesli licznik znakow jest mniejszy od maksymalnego rozmiaru bufora to... If Licz_znaki < Max_znakow Then '...zwieksz licznik znakow, do buforu transmisji...
Blok musisz odczytać cały, ale możesz po każdym odebranym bajcie sprawdzać go, czy zgadza się z Twoim tekstem, więc nie potrzeba tak naprawdę dużych zmiennych i nie ma konieczności ładowania wszystkiego do bufora. Transmisja SPI ma tą zaletę, że master może dowolnie zmieniać prędkość transmisji lub nawet ją na chwilę spauzować. Karty SD są kompatybilne...
Witam odgrzeję kotleta bo nie chcę tworzyć nowego wątku. Czym spowodowane jest to, że po zainstalowaniu sterowników do fejsu nie można zmienić zaawansowanych właściwości portu USB? W moim przypadku gdy wchodzę w zaawansowane ustawienia mam "Użyj buforów FIFO" i dwa suwaki bufora odbioru i bufora transmisji. Brak możliwości wyboru buforów transmisji...
Obsługa przerwania ma być najkrótsza. Najlepsza analogia do życia, to gdy dzwoni telefon, to tylko go odbierzesz, porozmawiasz i koniec, nie będziesz nieruchomo stał, aż zadzwoni następny raz. Podobnie w procesorze są przerwania uzależnione od różnych zdarzeń, zmiany stanu zewnętrznego pinu, opróżnienia bufora transmisji wyjściowej, otrzymania bajtu...
O podwójnym buforze zapomnij w takim przypadku. Przerwanie od końca transmisji i rekonfiguracja. DMA2D?
Witam. RFM69W 433 S2 - transmisja dwukierunkowa - bufor FIFO - CRC - AES-128 - 433MHz Dobry zasięg w betonowych osiedlach.
Często w menadżerze urządzeń Windows widzę takie parametry jak: bity danych rozmiar bufora wyjściowego rozmiar bufora wejściowego szybkość transmisji Mógłby ktoś w jednym zdaniu opisać po każdym z nich? Najlepiej w łopatologicznym języku, bo specjalistycznego się już naczytałem i nie mi nie pomogło
Spróbuj zwiększyć bufor transmisji C:\Program Files (x86)\Arduino\hardware\arduino\avr\libra... #define _SS_MAX_RX_BUFF 64
Bez kodu programu, to tylko telefon do Wróżbity Macieja. Spodziewałem się takiej odpowiedzi, zresztą słusznej. Niestety kod jest niemały i rozbity na pliki. Dla cierpliwych i chętnych załączam cały spakowany projekt Atmel Studio 7.0 Generalnie za transmisję odpowiedzialne są takie funkcje: EDIT: Znalazłem przyczynę problemu - tryb uśpienia. Jeśli wyłączę...
ping -a <adres IP> m. in. poda nazwę netbios Sposób użycia: ping -a Tłumacz adresy na nazwy hostów. -n liczba Liczba wysyłanych powtórzeń żądania. -l rozmiar Rozmiar buforu transmisji. -f Ustaw w pakiecie flagę "Nie fragmentuj". -i TTL Czas wygaśnięcia. -v TOS Typ usługi. -r liczba Rejestruj trasę dla przeskoków. -s liczba Sygnatura czasowa dla...
W takich przypadkach mogą być przyczyny: - wirus który rozsyła pakiety do sieci, - złe łącze (pakiety są wysyłane a nie przychodzą potwierdzenia poprawne więc system ponownie ponawia transmisję aż otrzyma potwierdzenie) i tak za każdym razem - pakietem. Spróbuj sprawdzić jakość łącza zwykłym poleceniem Ping Sposób użycia: ping [-t] [-a] [-n liczba]...
Oczywiście, że ma. Zarówno bufor odbiornika, jak i bufor nadajnika. Jeśli w UDR jest już bajt danych, to kolejny zapis odbędzie się do bufora (automatycznie załatwia to hardware MCU). Stąd też zazwyczaj zapisując dane do UDR sprawdzasz flagę UDRE, czy masz miejsce w buforze. Flagę zakończenia transmisji sprawdza się rzadko, zazwyczaj jeśli po zakończeniu...
EV_TXEMPTY nie jest ustawiana po pzekazaniu do bufora nadawczego tylko po oproznieniu bufora, wiec po transmisji. linijka z transmisji w transmisji szergowej rs422/485 (niestety w c++) : WaitCommEvent( COMDEV( npTTYInfo ), &dwEvtMask, NULL ); if ((dwEvtMask & EV_TXEMPTY) == EV_TXEMPTY) { EscapeCommFunction( COMDEV(...
Spróbuj w ustawieniach portów com zmienić rozmiary buforów transmisji
Ja też mam trochę lamerskie pytanie... Oscyloskop (amatroski) = AD7863 + procek (jaki polecasz) + bufor (?) + transmisja po rs232... Warto kombinować ?
Liczba bitów na sekunde: 9600 bity danych: 8 parzystość: BRAK bity stopu: 1 sterowanie przepływem: BRAK Użyj buforów FIFO (wymaga zgodności z UART 16550): bufor odbioru: 4096 bufor transmisji:4096 czas opóźnienia: 16 dla vaga 12 dla opli to są konfigi wirtualnego com'a (tania kkl od mpaq) mam też oryginalnego vcds od Adako i tam takiej konfiguracji...
Oczekiwanie na flagę TXE nie gwarantuje że transfer się zakończył (bo co ma pusty bufor do idącej w tym czasie transmisji?) - do tego służy flaga BSY. 4\/3!!
Bufor cykliczny - tablica o długości N bajtów. Dwa wskażniki na elementy tegoż. Pierwszy wskażnik do odczytu (wo), drugi do zapisu (wz). Początkowo oba wskażniki ustawione na początek bufora. Zapis: Procedura przerwania po każdym odebranym bajcie zapisuje go w miejscu wskazanym przez wz. Następnie wz jest inkrementowany i jeżeli wskazuje na element...
Zrób tak jak przedstawia rysunek. Tranzystory zastąp buforami. Jak rozumiem wiesz co to bufor 3 stanowy /high/lo/hi-impedance/. NA tym rysunku jak podasz logiczne "1" z mikrokontrolera, tranzystor sciągnie linie sygnałową do masy , jak mikro posyła logiczne "0" to tranzystor stanowi "duży opornik ;)" podłącz te bufory aby właśnie tak działały i gra...
W takim razie czy mógłbyś polecić jakieś rozwiązanie, jak zrealizować USB bezprzewodowo? - bezprzewodowe HUBy USB są raczej rzadkością... A może adapter USB-RS232 (on zadziała jak bufor?) (transmisja bezprzewodowa) RS232-USB?
Ja mówiłam o filozofii programów czyli o sztuce tworzenia algorytmów. Niezależnie od sposobu realizacji wymiany danych między urządzeniami przerwanie powinno obsługiwać jeden znak i wspólpracować z jakimś buforem.
Zdaje się, że LOGO! trzeba najpierw podpiąć do PC, dopiero później załączyć mu zasilanie i powinien wyświetlić się na LCD jakiś komunikat (nie pamiętam treści). Trafiłem? ;-) pzdr
Jaki język programowania?
temat trochę stary ale moja odp. pomoże innym przeglądającym te forum : ustawic poprawnie trzeba port ! prędkość na 19200 ,sterowanie przepływem - włącz x on /x off , oraz zmniejszyć bufor transmisji na minimum 10 a nawet i mniej i musi smigać
Jesli transmisja ma być nieblokująca to polling odpada. Jak rozumiem można podłączyć modem tak, że po wykonaniu rozkazu dostaniemy przerwanie (również gdy coś się nie powiedzie). Wtedy wg. mnie trzeba zrobić bufor (np. cyrkularny) do którego będzie wpisywać pakiety główny program i inicjowac transmisję. Przerwanie będzie sprawdzało status, zdejmowało...
nie rozumiesz, że nie wysyłam to tylko do testu. interesuje mnie to co jest wysyłane kiedy TX jest pusty, i tylko to. Jest to konstatacja że jak jesteś slave (F303) to kiedy bufor transmisji jest pusty to wysyłane jest nieparzyste zapisanye do niego słowo 16 bitowe (akurat taki mam format transmisji) dla innej długości słowa nie testowałem. Nie szukam...
Nie wiem na ile jesteś w stanie ingerować w kod, ale... Cała obsługa transmisji po SPI powinna zostać przeniesiona do funkcji obsługi przerwania od SPI. Funkcje z pętli głównej powinny tylko przekazywać wskaźniki na struktury z danymi i callbackiem do "drivera" SPI. Driver SPI powinien atomowo zbierać te wskaźniki do swojego bufora i inicjować transmisję,...
Przepraszam, oto ustawienia portu http://obrazki.elektroda.net/29_12416226... oraz opcje zaawansowane Użyj buforu FIFO zaznaczone, bufor odbioru i bufor transmisji ustawione na wartości maksymalne.
Zrób to jako dwie pętle bo wielkość tabeli w bascomie to max 255 bajtów poza tym nie wiem czy bascom sprawdza zajętość bufora transmisji co za tym idzie może gubić bajty . Zatem w pętli dodaj opóźnienie potrzebne na czas wysłania informacji przez interfejs.
A czego oczekiwałeś - bufor jest pusty to dostajesz przerwanie - nie włożysz nic do DR to bufor jest cały czas pusty więc dostajesz kolejne (bo nic się nie zmieniło) - logiczne. Musisz przemyśleć sposób właczania i wyłaczania przerwania w zależności od sposobu realizacji bufora transmisji. Dlaczego do NVIC-a nie używasz funkcji i makr z CMSIS?
Przez port szeregowy możesz wysłać jednorazowo tylko określoną ilość znaków. Nie pamiętam specyfikacji ile znaków pewnie 128. Rozwiązanie problemu:1. Wykonujesz bufor transmisji np. D2000 - D2100 (z którego udała Ci się już transmisja) .2 Flagą którą odczytujesz np: A202.01 przenosisz dane np: funkcją MOV kolejno z zakresu twoich komórek w pierwszym...
żeby program mobi dziełał trzeba zmienić ustawienia w porcie com. W menadżerze urządzeń wybieramy port klikamy dwa razy , wybieramy ustawienia portu i klikamy na zaawansowane, przesówamy sówak "bufor odbioru" na 4 a "bufor transmisji" na 6. po tym wszystkim powinno działać
Tak naprawde interesuje mnie czy te linie kodu są poprawne: void USART_Transmit( unsigned char a) { while (!(UCSRA & (1<<UDRE))); //czekaj az bufor nadawczy bedzie pusty UDR = a; //wrzuc a do bufora //transmisja poprzez PD0
Witam Szanowni Państwo. Potrzebuję informacji na temat SJA1000. Angielskie pdf-y już mam przeczytane. Mój problem polega na fakcie iż po resetowaniu, wysłaniu danych do bufora transmisji ustawieniu bitu wysyłania (jak w opisówce) - dane nie są wysyłane - kończy się to błędem i wyłaczeniem szyny. Dodam iż pracuję w trybie BasicCAN Dziękuję
Wielkie dzięki raz jeszcze Panowie za podpowiedz,mam jeszcze jedno pytanie czy do odbioru danych z telefonu uzyć funkcji inkey,czy innej np: input i jak wyswietlić dane będące w buforze transmisji na wyswietlaczu LCD.Jeśli zechcecie mi raz jeszcze pomóc to super a teraz zabieram sie do opanowania waszych wskazówek.DZIĘKI.Pozdrawiam
Proszę bardzo lecz jetem pewien, iż nie wniesie to nic. Skoro tak twierdzisz, to po co w ogóle pytać? Masz błąd o którym Ci pisałem. Tyle że wtedy pisałem, że "warto na przyszłość", a teraz mówię że masz błąd. To: if (tflags & USART_FLAG_TXE) wykona się niezależnie od tego czy masz włączone przerwanie czy nie. A wiec występuje u Ciebie (jednak)...
Po wpisaniu czegoś do rejestru DR jego zawartość kopiowana jest do rejestru przesuwnego (jeśli nie trwa inna transmisja) i wtedy rozpoczyna się rzeczywisty transfer. Szczegóły w manualu. Tak apropo to ustawienie flagi TXE oznacza e bufor transmisji jest pusty i NIC WIĘCEJ. Wcale nie oznacza to fizycznego końca transmisji! Ponownie polecam manual i diagramy/opisy...
Zmień funkcję w przerwaniu: ISR(USARTUDRE_vect), postaraj się wmontować tam while, coś na kształt: [syntax=c] void USART_Transmit( unsigned char data ) { while ( !( UCSRA & (1<<UDRE)) ) UDR = data; } [/syntax] Nie czekasz nigdzie aż się bufor transmisji opróżni i wysyłasz cały czas coś.
Jeżeli chcesz wykorzystać tylko ten bufor to nie ma to prawa działać. Nie sugeruj się tym, że raz czy drugi to zaskoczyło. Jeżeli to ma być transmisja dwukierunkowa to musisz dodać drugi bufor, który podniesie sygnał z 3,3V na 5V na linii DI. Obecne rozwiązanie jest nie do przyjęcia. Dalej się będę upierał przy tym, że lepiej wykorzystać układ MAX3485...
Skorzystaj z opcji RTS/CTS.
Ustawiasz w uP transmisje na 9600 i czekasz aż dostamies komunikat RING. - Wysyłasz do modemu komende ATA i czekasz na komunikat CONNECT ... U MNIE CONNECT się NIE POJAWIA !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!... - Masz już zestawione połączenie i wszystko to co wpiszesz do modenu pojawi się w buforze transmisji uP. - Aby się rozłączyć wysyłasz z...
Nie analizowałem programu dogłębnie ale widzę w nim INPUT. Jak dobrze pamiętam INPUT zatrzymuje program. Dane przychodzące należy sprawdzać za pomocą: [syntax=basic4gl]zmienna = ISCHARWAITING() 'lub zmienna = ISCHARWAITING( #kanał )[/syntax] Funkcja zwraca wartość 1 gdy w buforze transmisji sprzętowego układu UART znajduje się oczekujący znak. (Z drugiego...
Jeden z układów MAX485 blokował odbiór danych na linii Rx. Modyfikacja układu pozwoliła na uruchomienie transmisji.
when the entire frame in the shift register has been shifted out and there are no new data present Z czego wynika, że przerwanie jest generowane, gdy w UART nic nie ma (czyli nic nie ma w rejestrze nadajnika i buforze sprzętowym). W przypadku ciągłej transmisji nie jest więc generowane TxC. Co zresztą nie miałoby sensu. Dzięki temu możesz rozpoznać...
Witam Robiłem reinstalacje systemu na laptopie. Na nim zainstalowany był program symfonia 2007 zrobiłem kopie plików oraz kopie zapasową firmy. Po ponownym przekopiowaniu na nowym systemie wszystko się uruchamia ale nie można utworzyć nowej faktury. wyskakuje błąd: Odczyt rekordu C:\start\Amfa.bin Błąd nr 97: Zbyt mały bufor transmisji Wystąpił błąd...
Witam. Szukam rozwiązania buforu FIFO dla nadajnika dla transmisji szeregowej. Opisu takiego buforu / budowy / działania. Dziękuje za wszelkie wskazówki.
Problemem jest opóźnienie i wielkość bufora BT . Po prostu upływa czas odpowiedzi i transmisja się sypie to samo jest przy niektórych przejściówkach USB rs232 . Jeśli program jest dość stary a transmisja wprost może nie udać się go połączyć po usb czy radio. poza tym twój moduł jak widać nie obsługuje chyba wszystkich znaków bo są różnice przed i za...
Z modułami ok. W programie tak napisane nie wiem czy to zamierzone czy nie, ale przy odbiorze nie czyści bufora po poprzednim odczycie.
Wyłącz echo w telefonie. ale jak mam to zrobic ? ATE0 nie dziala :| Czyszczenie bufora nic Ci nie da.Aby "opróżnić" bufor , wystarczy wyrównać lub wyzerować indeksy _rs_head_ptr0 i _rs_tail_ptr0 . pytanie jak to zrobic pod Bascomem ? Obecnie jest tak jak by to co wysyla telefon ladowalo sie do bufora w roznych miejscach , raz na pcozatku, raz w srodku...
Na początek taka uwaga: Driver Atmela bazuje na przerwaniach, w związku z czym wymaga globalnego zezwolenia na przerwania, czyli ustawienia bitu I w SREG. Z tego też powodu nie można używać go (w sposób przedstawiony w przykładzie obsługi PCF8563 Kod 3. .............. Owszem, tutaj również się program nie zawiesza. Ale też nic nie odczytuje. To, że...
Witam, Bufor nadawczy jest o rozmiarze jednego wysyłanego znaku (tak na prawdę jest to rejestr przesuwny samego UARTu). Zapisując dane do UDR jeśli bufor nadawczy jest pusty to od razu jest przepisywana do niego dana i rozpoczęcie transmisji. W innym przypadku jeśli w UDR są nowe dane a nie wszystko zostało wysłane to sprzęt czeka aż się wyślę i przepisze...
Problem jest taki, że diody "pokazują" dźwięk z 3-4 sekundowym opóźnieniem. Na początek przełóż strip.show(); za wewnętrzną pętlę for. Nie ma po prostu sensu wielokrotnie wywoływać przesył (który swoje trwa) dla jednej wartości height. A w pętli zostaną tylko mało czasochłonne operacje wpisu do tablicy w RAM (setPixelColor). Operacje w pętli loop,...
Czy nikt z Was nie miał takiego problemu? Może macie jakiś pomysł jak to rozwiązać. Dlaczego akurat przy takim zapełnieniu bufora dochodzi do zablokowania transmisji. W erratach NXP nic nie piszą o takiej wadzie procesora. Proszę Was jeszcze raz o pomoc.
Skorzystać z odbioru danych w przerwaniu od UARTA. Mały przykład dla ciebie: $regfile = "M32def.dat" 'Deklaracja typu mikrokontrolera $crystal = 8000000 'Czestotliwosc oscylatora $baud = 9600 Const Max_znakow = 11 'rozmiar bufora Dim Bufor As String * Max_znakow Dim Licz_znaki As Byte Dim Flaga As Bit Enable Interrupts On Urxc Odebrano 'przerwanie...
Router gdzie przychodzi światłowód to: Huawei HN8145V | ONT | EchoLife. Następnie kabel idzie na piętro gdzie router to Archer C2600. ediaTek MT7921 Wi-Fi 6 Wireless Network Adapter -------------------------- Tak to wygląda w Windows: Identyfikator SSID: TP-LINK_ISKRA_5G Protokół: Wi-Fi 5 (802.11ac) Typ zabezpieczeń: WPA2-Personal Producent: MediaTek,...
Właśnie dzisiaj też sie tym bawiłem. Mam konwerter od satela "unitek" y-105 usb serial. Na płycie masz sterowniki, podczas manualnego dodaj usuń programy zadajesz ten sterownik. Potem wchodzisz panel sterowania - system - sprzęt - menadżer urządzeń - porty comlpt - wyswietla się Prolific USB-to-Serial Comm Port (com4), wchodzisz do niego - ustawienia...
Ta funkcja jest wywoływana, gdy zostanie zakończona transmisja całego bufora, a Ty przerzucasz do bufora i każesz transmitować po jednym znaku, zamiast raz wywołać Transmit dla całego napisu.
Najprościej zasilić diodę poprzez bufor TTL, np. 74xxx06. Inna sprawa, że to bez sensu - transmisja odbywa się tak szybko, że zamiast migania diody zobaczysz tylko ciągłe świecenie. Trzebaby dodać jakiś monowibrator.
Niektóre z funkcji faktycznie zawierają pętlę oczekującą na zwolnienie magistrali: [syntax=c] while ( TWI_Transceiver_Busy() );[/syntax] Autorzy założyli, że można będzie użyć tej funkcji w dowolnym momencie, niestety powoduje to, że kiedy wywołamy funkcję, kiedy magistrala jest zajęta, to będzie ona czekała na zwolnienie magistrali, co wprowadza czasami...
Nie mam doświadczenia w przemyśle dlatego się nie będę dyskutował. Robiłem kiedyś układ sterowania diodami na 8 szt ATMEGA8 i tam właśnie zastosowałem jeden kwarc 8MHz i bufor. Przy transmisji RS na 57600 nie było problemu a odległość fizycznie skrajnych ATMEG była ok 1m.
Bajty. Interesował mnie generalnie zapis WiFi => SD. Projektu nigdy nie doszlifowałem bo z drukarką były inne problemy. Tu jest jakiś tak mały filmik, na którym nieudolnie próbuję pokazać szybkość w prawdziwym życiu. https://www.youtube.com/watch?v=hxnvsZrG... Po SPI nie ma opcji. To było SDIO i to chyba na 4 liniach. Całość była dosyć czuła na ustawienia...
tam mam ustawiony stos (zresztą standardowo).... dzięki chłopaki - czyli muszę niestety zmniejszyć trochę bufor odczytu dla transmisji rs232... pozdrawiam
W sumie jak miałeś napisany tak kod, że zawsze zdążyłeś dodać nowy bajt do bufora przed zakończeniem transmisji poprzedniego to przerwanie od TXC nie wykonało się ani razu (bo bufor nigdy nie był pusty przed zakończeniem transmisji bajta z shiftera). Dopiero po zakończeniu transmisji całego pakietu. Czyli Twój kod działał tak jak mój aktualny... mniej...
- Maksymalny pobór prądu 180 mA - Wymagana minimalna wydajność prądowa zasilacza 2 A Temat jest oczywisty, ale posłużę się cytatem kolegi -RoMan- z elektrody. " (...) Poza tym, znając charakter poboru prądu przez moduły GSM wiem, że ten maksymalny pobór prądu jest w formie krótkich, max kilkumilisekundowych impulsów, na które wystarczy energia gromadzona...
Co robi funkcja send_uintUSART2? Nazwa sugeruje, że raczej nie wysyła znaków. Pomysł z nadawaniem z aktywnym oczekiwaniem i odbiorem w przerwaniu zajeżdża amatorszczyzną, ale czasami działa. Za to brak zabezpieczeń przed przepełnieniem bufora odbioru to już poważny błąd.
Witam, Czy istnieje moduł lub jakiś sposób aby w Pascalu (FreePascal pod Linuxem) nawiązać połączenie z urządzeniem USB (2x endpoint in/out; bulk transfer; 256b bufor). Prędkość transmisji nie jest istotna, ilość wysyłanych lub odbieranych danych w granicach 100 bajtów na paczkę. Pozdrawiam, Damian
No coś znalazłem w help-ie przykład ale nie wiem gdzie podłączyć max232 bo niema pinu podanego . Mam nadzieje że idę w dobrym kierunku . Działa podłączyłem (z procesora do komputera) PD1 > 11 MAX 14 > 2 RXD (z komputera do procesora) to chyba będzie PD0 < 12 MAX 13 < 3 TXD . Ale działa nie za dobrze bo jakieś dziwne znaki mi wyskakują jak...
Witam. No więc w rozkazie rozpoczynania transakcji musi być zdefiniowana ilość pozycji (parametr P)...Jeżeli w rozkazie rozpoczęcia transakcji występuje P0 to wysyłamy po 1 pozycji aż do zakończenia transakcji (trzeci kluczowy rozkaz). Aby przebiegało tak jak Pan chce konieczne jest do rozkazu dołożenie sekwencji sprawdzającej. Wygląda to tak: ...........ESC+'\'+char($05)...
Złącze USB pomimo swojej zawrotnej prędkości do 480 Mb/s (dla USB 2.0) ma jedna podstawowa wadę: wysoki czas dostępu. Oznacza to że dane nie przesyłane są w nim natychmiast ale po upływie min 125uS w trybie Bulk i 8mS w trybie Interrupt. Niestety zwykle sterowniki pracują w tym drugim trybie. Powoduje to ze dane na wyjściu są mocno opóźnione bądź podzielone...
Linków do filmów brak. Na zdjęciach nie widać dość istotnych parametrów - flag aktywnej adaptacji i pracy w pętli zamkniętej. Chwilowe miganie błędów, to mogą być błędy transmisji. Możesz spróbować zmniejszyć do minimum bufor i opóźnienia wirtualnego portu szeregowego od interfejsu. https://obrazki.elektroda.pl/3577562600_... Jeśli...
Rozwiazania z rezystorami nie polecam - trzeba bardzo zwolnic transmisje i podatne to jest na zaklocenia z zewnatrz. A miejsca zajmuje tyle co scalony bufor.
PC wysyła wszystko co ma w buforze bajt za bajtem bez czekania. Można zwiększyć odstęp między bajtami, z tego co pamiętam to jest do wyboru szerokość przerwy 1, 1 1/2 lub 2 bity. A jak odbierasz dane? AVR'y nie mają buforu (no jest na 1 bajt, ale to nie bufor), najlepiej umieścić w przerwaniu wywoływanym przez USART podprogram który zapisze kolejne...
Można tylko strzelać. Obstawiam, że problemem jest niedostateczna ilość pamięci SRAM i nakładanie się zmiennych, które są nadpisywane. Śmieci na magistrali zapełniały ci cały bufor, normalna transmisja nie i dlatego nie obserwowałeś wtedy problemu. To tylko hipoteza, nie znam Bascoma więc ci nie poradzę jak ją sprawdzić, jeśli przejdziesz na C to będę...
Co do transmisji przez UART najpierw trzeba ustawić parę "rzeczy" ;) Poniżej wkleję kawałek kodu który transmituje liczbę 0 przez UART. tmod_set equ 020h ;ustawienie Timera 1 w tryb 2 th1_set equ 0F4h ;ustawienie szybkosci na 2400 bodow/sek. tl1_set equ 0F4h scon_set equ 050h ;ustawienie UART w tryb 1 i zezwolenie na odbior mov SCON,#scon_set ;zaladowanie...
Jeżeli chodzi o bufor odbioru i transmisji to jest ustawione na maksa. Ale tam nic nie ma o MRT i MWT oraz wartosc nie jest podawana w ms. Chyba ze coś źle robię, właściwości- ustawienia portu- zaawansowane.
http://obrazki.elektroda.net/3_126545837... Jak dołączyć do tego bufor (mam cd4050be)?
To dalej nie jest dobry kod. Co, wg Ciebie, sprawdza poniższy warunek? Zamiast zerować bufor, zapewne wystaczy poprawnie sprawdzać długość. Zwracając message przez wartość kopiujesz ją jeszcze raz.
Podejrzewam, że twoja funkcja USART0_Transmit_Word może zbyt długo czekać i bufor odbiorczy UARTu się przepełnia. Załóżmy, że powyższa funkcja wysyła znaki '\r' '\n' po każdym jej wywołaniu. Wówczas jeśli program otrzymuje tekst i po owym tekście #010, to cały komunikat trafia do wysłania i jest w porządku. Jeśli tekst zacznie się od #010, natychmiast...
Po kilku testach okazało się że nie trzeba kasować tablicy znaków, samo itoa robi to już automatycznie, do terminala wpisywane są odpowiednio jeden, dwa lub trzy znaki dla zakresu 0-255 oraz znaki przesunięcia do początku kolejnej linii (10,13) [syntax=c]unsigned char a; char tmp[10]; for (;;) { _delay_ms(100); ADCSRA |= (1 << ADSC); // start...
Właściwie wpinanie dodatkowych rs równolegle to rozwiązanie dobre, działa i łatwo to oprogramować. Ale sobie wczoraj troszeczkę pomużdżyłem i się zastanawiam czy nie można by tego zrobić na czymś w rodzaju wirtualnego coma. Chodzi mi o jakiś sterownik który by instalował coma którego nie ma w komputerze (zresztą nowoczesne komputery mają żadko wyprowadzone...
Chciałbym wykorzystać maksymalnie możliwość próbkowania ADC, jednak sama prędkość transmisji BT na to nie pozwala. Pomyślałem, o zrobieniu buforu na zebrane próbki i wysyłaniu ich na bieżąco po BT do komputera, A ja nie bardzo rozumiem jak ten bufor miałby zwiększyć prędkość transmisji BT? I raczej przemyśl założenia. Jaka konkretnie prędkość Cię interesuje?...
Zatem nie nadążasz odbierać z PC, nadpisujesz bufor ze znakiem wysyłanym do PC albo PC nie nadąża z odbiorem. Stawiam na drugi przypadek.
Błędów moim zdaniem całe mnóstwo, a pierwszy z nich - to alokacja bufora do transmisji SPI na stosie - zadeklaruj go na zewnątrz procedury i pewnie coś ruszy bardziej. Powinieneś użyć kodowania jednego bitu na trzech, a nie na ośmiu, wtedy bufor byłby niemal 3 razy mniejszy, a szybkość SPI byłaby ok. 2.4 MHz (np. 2.5 MHz, co można uzyskać przy częstotliwości...
Co pisze w plikach log na temat błędu transmisji. ps Czy na czas transmisji wyłączyłeś zaporę?
Kolego A może odbierasz poł transmisji starej i pol nowej ? Wyświetl sobie na LCD bufor odbioru i sprawdź co tam się dzieje. Ja przy transmisji na I2C miałem taki problem iż nie wiedziałem czemu po starcie wariuje mi generator sterowany po I2C, Okazało się po dlugiej walce z oscyloskopem i debugowaniem całego programu iż problem leżał nie w przetwarzaniu...
Ponieważ trzeci link zamieszczony przez genetix'a tłumaczy prawie wszystko i ponieważ mam troszcze mało czasu zamieszczam mały wstępik do tematu. Schemat połączenia modemu i up wygląda np. tak: ------------|..........|---------- ............|..........| ........GND.|----------|.5.GND ............|..........| .uP......Tx.|----->----|.3.Tx..MODEM....
sprawdzaj jeszcze czy bufor jest pusty.
Dodatkowe urządzenie to dodatkowe problemy musi spełniać kilka założeń żeby było uniwersalne a przy rs485 ma do spełnienia kilka zadań : 1. sterowanie transmisją 2. posiadać buforowanie 3. Wymaga więcej części niż kwarc za 3pln ;) Poza tym żadne z tych urządzeń nie działa bezwzględnie zawsze i bez końca . Dlaczego tak się dzieje to bardzo proste o ile...
Kiedyś z czymś takim walczyłem i problem był po stronie stronie PC. Pomogło jak zmieniłem ustawienia portów w Windowsie: Ustawienia portu - Zaawansowane - Bufor odbioru i transmisji. Problem wynikał chyba z tego kiedy PC zgłaszał przerwanie od seriala, ale w tej chwili nie pamiętam już dokładnie o co chodziło.
Zastosuj kodowanie kanałowe z wykorzystaniem kodu splotowego. Kod o sprawnosci R=1/3 może usunąć do ok 30% bez ponownej retransmisji danych. Wartosc ta może wzrosnać jeżeli zastosujesz bufor z przeplotem w nadajniku oraz rozplotem w odbiorniku. Polecam ksiazke "Podstawy cyfrowych systemów telekomunikacyjnych" Pozdrawiam!
Nadawanie+odbiór z częstotliwością 50Hz. Może jakiś bufor zapychasz? Miałem coś takiego przy CC2500. Czytałem mniej niż było w buforze i po chwili transmisja padała.
Ale po co od razu WatchDog do tego? Nie lepiej dać TimeOut funkcji Inputbin? A jeszcze lepiej dać jakiś bajt wyróżniający początek ramki i CRC na końcu ramki. Tyle że liczenie CRC musiało by być szybkie żeby procesor nadążył z liczeniem po zgubieniu synchronizacji transmisji (Wtedy musiał by przeliczać cały bufor wielokrotnie przesówając się o jedne...
Jeśli to będą płytki wstawiane w gniazda to od razu pomyśl o dodaniu buforów. Co do transmisji to SPI przecież praktycnzie każdy procesor obsługuje sprzętowo (w każdym razi eobie wymienione ATMegi). Wiec nie za bardzo widzę, gdzie masz problem?
Dzięki za wskazówkę. Przeszukałem zasoby Atmela pod kątem DMAC dla różnych rodzin i chyba znalazłem coś, co pozwoli mi ruszyć. XDMAC w V71 jest trochę bardziej rozbudowany (X to eXtended), ale przynajmniej rozumiem ideę jaka za tym stoi. Podoba mi się to, że mogę w miarę dowolnie połączyć układy peryferyjne i kanały DMA, przez co jednym źródłem mogę...
Dla mnie to kompletna abstrakcja. Według Twojego kodu, to najpierw odczytujesz 1 bajt danych. Później od razu chcesz odczytać drugi bajt danych, którego najprawdopodobniej jeszcze nie ma (komputer jest szybszy niż transmisja z prędkością około 30kb/s). Jeżeli chcesz uzyskać taki efekt, to przy sprawdzeniu wartości == 'x' ustaw sobie flagę, że już odczytałeś...
No ok, ale jak często chcesz wykonywać ten pomiar? Jak często potrzebujesz odświeżać wartość i jak dokładnie ona ma być mierzona? Bo moim zdaniem najprościej byłoby zrobić tak jak napisał 0xdead. Czyli robisz 100 pomiarów z wyrzuceniem wyniku do bufora przez DMA. Potem możesz sobie zrobić przerwanie albo od połowy bufora albo od końca transmisji DMA...
A skąd wziąłeś krasnoludka, który pilnuje, żeby GPS rozpoczął transmisję wiersza po zaprogramowaniu DMA i drugiego, który pilnuje, żeby wszystkie wiersze miały po 99 znaków? Ja też chcę takie dwa krasnoludki! Pardon, zapomniałem o trzecim krasnoludku - tym od zerowana bufora danych przed transmisją.
przetwornica bufor transmisji parametry transmisji protokolu transmisji
wzmacniacz multiswitch stare hydrofory głośniki przenośne ładowanie
zasilacz lm317 drukowanie dwustronne
Jak zdjąć obudowę wiertarki Compresor 18V? Jak zdjąć uchwyt wiertarski z Compresor 18V?