W sumie nie wspomniałeś jaki to rdzeń, ale np. na niektórych ARMach trzeba uważać co się robi. Tak można zawsze: [syntax=c]char *pc; int buf[100]; pc = (char*) &buf[x]; *pc = y;[/syntax] A tak nie zawsze: [syntax=c]int *pi; char buf[100]; pi = (int*) &buf[x]; *pi = y; [/syntax]
Jeżeli używasz starszego programu do odczytu taryfikacji, nie Bilingmana, to jest tam w menu opcja "stanowisko główne", jej zaznaczenie powinno skutkować zerowaniem bufora. Jeśli używasz Bilingmana, to ... nie pamiętam czy program powinien zerować bufor, niestety człowiek raz na miesiąc coś tam zczyta z jednej NCT (tu było by widać efekt) i jakoś nie...
Bo program będzie akurat w tej chwili w innym przerwaniu o wyższym piorytecie Szukasz rozwiązania na około dla problemu który stworzyłeś sam? Złe założenia do algorytmu ot co.... w razie W jest DMA.... Ale nadal ciekawi mnie jakie przerwanie będzie trwało dłużej niż 200us co jest wiecznością dla STMa.
Przywroc do ustawien fabrycznych z zachowaniem danych.
Odbiór danych o nieznanym rozmiarze przez DMA jest bardzo problematyczny... Ponieważ włączyłeś tryb "circular", to w zasadzie jedyna opcją jest późniejsze składanie danych w dodatkowym buforze - będziesz musiał skopiować to co jest na końcu bufora DMA i potem to co jest na początku - tak aby dane znów były w poprawnej kolejności. DMA realizuje po prostu...
Ja to sobie podzieliłem na równe wymierne części, to tylko taki przykład z tym 0xFFFF. Odbieraniem zajmuje się właśnie DCMI, po wywołaniu "DCMI->CR |= DCMI_CR_CAPTURE;" wszystkie dane po kolei są przejmowane na rejestr danych w DCMI. Bez wykasowania flagi CTCIF7 program zostaje na zawsze w przerwaniu. Jak u Ciebie wyzwalany jest odbiór danych ? DMA...
to czytaj az nie bedzie więcej danych. Tak zflushujesz bufor. Jaki to problem?
Po wczytaniu danych do bufora znaków 'incomingPacket', wpisuje znak '0' za ostatnim wczytanym znakiem - jest to tzw. terminator łańcucha tekstowego.
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...
Dokładnie jak kolega wspomniał powyżej. Poza tym, dodam tylko od siebie, że trochę kolega autor tematu namieszał z różnymi typami danych. W zdarzeniu nadejścia znaku ASCII ( OnRxChar ) czyta kolega dane do bufora zbudowanego z tablicy byte? To "niewielka" niekonsekwencja :) Sugeruję zdecydować się na konkretny typ danych (znaki albo bufor danych) i...
Co do faktu wysylania tych ponad 60k bajtow przez USB do kompa, to taka jest wielkosc buforu implementowanego przez sterowniki D2XX. Pamietaj, ze uzycie funkcji FT_Read (..) powoduje odczyt danych z buforu na komputerze a nie w FT245BM (dane z chipu FT245 sa wysylane wtedy gdy nadazy sie okazja wynikajaca z dzialania innych urzadzen USB - sprawdz to...
polega na przekazaniu przez uzytkownika takiej ilosci danych wiekszej niz przyjety bufor do funkcji, ktora nie sprawdza ilosci tych danych czego konsekwencja jest nadpisanie innych zmiennych itd.
Przecież wyraźnie widać, że STM odbiera 8 bitów, a w Realterm jest ustawione 7 bitów. Stąd różnica i obcięty najstarszy bit. Poza tym, dane się zgadzają. Format danych musi być ten sam. STM to pewnie 8N1, Realterm 7E1.
u mnie to działało,ale nagrywarka paliła płytę około 40 minut i niby była prędkość max czyli coś koło 16,ale tak naprawdę waliła może 2x - wypalała kawałek,czekała na paczkę danych,ładowała bufor,wypalała i tak non stop-płyta działa bezproblemowo
UART w końcu trochę działa. Aby zapobiec awarii, musiałem dodać vTaskDelay(3) po UART_AppendByteToReceiveRingBuffer w pętli. Ale jeśli jest dużo danych, bufor UART zostanie przepełniony, co spowoduje przepłukanie wejścia i zresetowanie kolejki. W przypadku BMP280: działa dobrze na C3 i pinach 0 i 1, ale 2 i 3 nie działają. Może jakiś problem z pullup/pulldown?...
napisany bez bibliotek, miałby objętość o 80% mniejszą niż z nimi. No i .....? Czy w jakiś sposób był lepszy? Czy mikrokontrolerowi robi różnicę czy FLASH jest w 3 czy 58% pełen? 1. (HAL) Obsługa przerwania i zapisanie danych do bufora kołowego (w przerwaniu?) 2. (AL) Odczytanie danych z bufora kołowego, prezentacja wyników Te problemy rozwiązuje RTOS....
A, rzeczywiście, ten uart_puts() jest do wysyłania napisu zakończonego bajtem 0, trzeba go przerobić, i może inaczej nazwać - może uart_putba()?[syntax=c]void uart_putba(const uint8_t *dane, size_t ile) { unsigned i; for(i=0; i < ile; i++) uart_putc(dane[i]); }[/syntax]Ostrzeżenie dotyczące 'const' - skoro rzutujesz dane na 'const', to wypada dopisać...
Jak są tylko sporadyczne błędy podczas odczytu na programatorze to masz dużo szczęścia, bo wcale nie zrobiłeś emulatora pamięci EPROM 27256 (bo nie EEPROM) tylko emulator pamięci EPROM na stałe wybranej. Na wtyku emulacyjnym (złącza JP2 i JP3) masz tylko wejścia adresowe A14-A0 oraz wyjścia danych O7-O0, a zupełnie pominąłeś sygnał wyboru pamięci CE/...
Jeżeli będziesz miał dane dla EEPROM w pliku HEX (mowa o PICach), to Willem zaprogramuje Ci ją. Podobnie wygląda sprawa ze słowem konfiguracyjnym. Jeżeli w HEX ich nie ma danych dla EEPROMu, to i w buforze też ich nie będziesz widział a Willem wpisze FF. Jeżeli brak danych w HEX, to wprowadź ręcznie do bufora lub w polu słowa konfiguracyjnego odpowiednie...
(at)piotrek1313 "Skan" HDtune jest całkowicie bezużyteczny. Pokazuje tylko dyski, nadające się do utylizacji. Wniosek taki, aby nic ważnego nie podłączać do TV. Ewentualnie przygotować specjalny dysk do tego TV i tylko jego podłączać jako "bufor" danych.
comport.readstr nie odczytuje calego bufora ,tylko tyle danych ile podasz mu w drugim parametrze, chyba ze podasz mu count z procedury czyli caly bufor. comport tworzy bufor (sam masz wplyw na jego wielkosc) i opiera sie na winapi, wiec wie ile danych zabuforowal. jezeli chodzi o onrxchar ,to nie wie czy cala ramka zostala przeslana poprostu informuje...
Na moje oko to nie ma prawa działać poprawnie. W tym kodzie praktycznie wszystko jest źle. Funkcja callback jest wołana po odebraniu danych do bufora, wcześniej przekazanego przy wywołaniu Receive. Ty nie bierzesz danych z bufora, do którego zapisała je obsługa przerwania z HAL, za to kolejno wielokrotnie odczytujesz RDR, nie wiedząc, co właściwie z...
Czyli Twój pseudokod to jest taka jakby kolejka FIFO? No niezupełnie. To co przedstawiłem buffer_is_empty() zwracająca prawdę lub fałsz) należy sobie dopisać. Sprawa jest dosyć prosta np. w przypadku USART. Wystarczy dodać bajt do bufora, później - jeśli bufor nie jest pusty - pobrać bajt i wysłać. W przypadku I2C sprawa jest o tyle skomplikowana,...
Teraz mi się przypomniał warunek wysyłania PSH - ustawia się go w pakiecie, który zawiera ostatnią porcję danych z buforu nadawczego (nie licząc tych, które potencjalnie mogą przyjść). Czyli w przypadku gdy mss jest większe od rozmiaru buforu flaga ta praktycznie zawsze będzie ustawiona i opisana sytuacja nie miała by miejsca, dla większego buforu nadawczego...
Nie podałeś jak wygląda funkcja uart_puts() Zapewne ciąg rozkładany jest w niej na znaki i wysyłane są pojedynczo. Mam podobne funkcje i u mnie to wygląda tak: [syntax=cpp] void USART_Transmit( unsigned char data ) { while ( !( UCSRA & (1<<UDRE)) );//Poczekaj na pustym buforze/* Wait for empty transmit buffer */ UDR = data;//Umieszczanie danych...
Witam. Poszukuję jakiegoś oprogramowania do obrobienia danych z bufora taryfikacyjnego "Telebufor" Modus. Generalnie chodzi o możliwość jakiegoś odczytu danych i posegregowania ich; inne możliwości.
Pytanie tak troche nie wiadomo o co... Mozesz precyzyjnie?
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
mov wX, [wY+wZ] adresowanie pośrednie z offsetem. Wcześniej musisz do wY załadować adres RxBuf, a do wZ - RxPtr offset (bajtowy!) w tablicy. Co do wykorzystania zmiennych z C w assemblerze, to - jak już zauważyłeś jest to problematyczne, ale gdy próbowałem to zrobić, to nie było problemu... Lektura dokumentacji do kompilatora C30 wystarczyła. 4\/3!!
Nadajnik możesz to zrobić w oparciu o timer, na którym ustawisz sobie określony zegar - np. te po rz ądane 250 kHz. Być może musisz ustawić 500kHz - aby wyłapywać nie tylko czas cyklu, ale i jego zbocze narastające i opadające. Potem budujesz sobie kolejkę danych (bufor fifo) - która stanowi podstawę dla timera - do "machania określonym pinem". Wysłanie...
Niestety jako początkujący użytkownik Deplhi mam pewne problemy z odebraniem danych z portu COM. Mój program działa na zasadzie wysyłania do mikrokontrolera znaku z PC z ilością odczytywanych komórek pamięci danych. Przykładowo jeśli wysyłam 'A' odczytywana jest jedna komórka, 'L' dwanaście komórek itd. Ta funkcja programu działa prawidłowo. Problem...
Jeśli używasz stosu USB z CubeMX, to: 1. Oprogramowanie urządzenia niekoniecznie jest poprawnie skonfigurowane, np. słynne już błędne ustawienie VBUS sensing lub bzdurny rozmiar bufora danych w CDC. 2. Funkcje wysyłania danych muszą być wołane z przerwania o tym samym priorytecie, co przerwanie USB - inaczej urządzenie się powiesi z powodu błędnych...
Witam, Szanowni Forumowicze, Chciałem zapytać czy taki pomysł na sterowanie PCi aby utrzymywać 3 niezależne strefy parametrów: I strefa ssanie - parametr wiodący ciśnienie ssania II strefa tłoczenie i skraplanie - parametr wiodący ciśnienie skraplania III strefa temperatura wewnętrzna domu i temperatura cwu - parametr wiodący temperatura z alternatywnym...
Skonwertować możesz przy użyciu sscanf podając jako wskaźnik na ciąg znaków miejsce, w którym powinna się zaczynać dana liczba. Ale najpierw musisz się upewnić, że odebrałeś pełne dane. Zapisuj je w tablicy, a nie w pojedynczej zmiennej char.
jak zadeklarować te zmienne? A np. tak dim Bufor as string * 16 ' 16 - maksymalna długość odebranych danych dim Bufor_znak as byte dim Bufor_flaga as byte
Jeśli zmiana rozmiaru buforów powoduje że program przestaje działać oznacza to że prawdopodobnie kończy się pamięć na stosie. Kilka rozwiązań jest. 1. zwiększyć stos 2. zdefiniować bufory jako static albo zmienne globalne wtedy nie trafią na stos 3. jeżeli idea projektu na to pozwala podzielić odczyt na mniejsze paczki i zapisywać po trochu(używając...
Po to są bufory cykliczne (czy kołowe), żeby uniknąć takich problemów - do bufora sięga tylko wątek ISR i wątek pobierający dane z bufora: przy odbieraniu danych w ISR wpisujemy znak na pozycji wskazywanej przez indeks wejściowy i ustawiamy ten indeks na następną pozycję; przy pobieraniu danych z bufora zabieramy znak z pozycji wskazywanej przez indeks...
1. Zaalokować jakiś bufor, na przykad wielkości 2^12 w obszarze zmiennych globanych. 2. Wczytać parametry. Dla zadania domowego specjalizowana biblioteka to overkill więc zakładamy, że argc[1] to nazwa pliku, argc[2], wielkość pliku 3. Otworzyć plik wejściowy - fopen w trybie binarnym 4. W pętli do EOF lub zerowej ilości odczytanych bajtów: 4a wczytać...
Transmisja pakietów jest dość powolna przy dużych wartościach SF, więc sposób modulacji będzie wpływał na czas od przygotowania danych do wysyłki, do pojawienia się danych w buforze odbiornika. Może być to nawet 500ms dla 100B i więcej dla wolniejszych transmisji: [url=https://www.elektroda.pl/rtvforum/t... zasięg mają modemy LoRa...
Sprawa jest wyjątkowo prosta problem ma podatnik - który nie może rozliczyć się z fiskusem bo nie ma raportu okresowego. By był pełny raport okresowy musi być wykonywany raport dobowy (raporty dobowe) - suma raportów dobowych daje raport okresowy. Ten obowiązek spoczywa na podatniku jak źle obsługuje kasę to ma problem. Jeśli wbijał na kasę ale nie...
Parametry 0A i B8 wymagają uwagi: 0A - Liczba prób rozpędzenia talerzy dysku. Atrybut ten przechowuje całkowitą liczbę prób rozpoczęcia rozpędzenia talerzy dysku (do osiągnięcia pełnej prędkości obrotowej). Wzrost wartości atrybutu oznacza problemy z podsystemem mechanicznym dysku. B8 - Atrybut ten oznacza, że po przesłaniu przez bufor danych, ich parzystość...
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...
Sprawdź temperatury podczas kopiowania (crystaldiskinfo je poda). W sumie smart z obu możesz przedstawić. Przy dużych ilościach danych bufor może się kończyć i wydajność leci. Albo temperatura wzrasta i dochodzi do throttlingu. Albo któryś dysk ma uszkodzenia. Albo kombinacja tych czynników.
Twój projekt jest ciekawym przykładem minimalizmu sprzętowego, ale musisz uwzględnić dynamiczny problem arbitrażu szyny danych przy wprowadzaniu przełączników DIP. Kluczowym wyzwaniem jest tutaj zsynchronizowanie dostępu Z80 do magistrali z ręcznym wprowadzaniem danych. Najprostsze podejście to implementacja przełączników w formie zewnętrznego bufora...
A może masz gdzieś funkcję obsługi tego przerwania? Dodano po 4 Dodam, że korzystam z programowego bufora cyklicznego, który w przerwaniach odbiera dane od UDR. Jedyne co mi przychodzi na myśl to to, że przerwanie tak szybko się wykona (odebranie danych do bufora i skasowanie flagi RXC), że część programu: while ( !(UCSRA & (1<<RXC)) ); nawet...
U mnie działa tak więc kod jest prawidłowy ! #include <windows.h> #include <stdio.h> #include <stdlib.h> #include <time.h> #define cbOutQueue 35 //rozmiar bufora danych wyjściowych #define cbInQueue 35 //rozmiar bufora danych wejściowych int __fastcall Write_Comm(HANDLE hCommDev, DWORD nNumberOfBytesToWrite); int __fastcall...
Korzystanie z PetitFS aby było szybkie to tylko i wyłącznie odczyt do bufora w pamięci RAM po 512 bajtów. Każdy odczyt mniejszej ilości bajtów to i tak odczyt sektora 512 bajtów a potem wyszukiwanie w nim tylu bajtów ilu potrzebujesz. Więc zastanów się jeśli ty próbujesz odczytywać po 1 bajcie to i tak aby odczytać 512 tych bajtów, aż 512 razy zostanie...
Tak te funkcje powinny wyglądać: [syntax=c]void uart_putc(unsigned char data) { // Oczekiwanie na zakończenie nadawania while (!(UCSR0A & (1 << UDRE0))); // Wysłanie danych UDR0 = data; }[/syntax] [syntax=C]unsigned char uart_getc() { // Czy w buforze są dane? while(!(UCSR0A & (1 << RXC0))); // Dane z bufora return UDR0; }[/syntax]...
(...) mmand ); Serial.print(command , HEX); Serial.print(" "); } Serial.println(); } void displayOxygenPercentage(float percentage) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("Tlen: "); lcd.print(percentage, 1); // Wyświetlenie jednego miejsca po przecinku lcd.print("%"); } Rozumiem, że chcesz zintegrować logikę wykrywania początku ramki danych...
Temat jest chyba beznadziejny, dlatego może odwołanie do ostatniej deski ratunku coś da. (at)ElektrodaBot Jak zwiększyć rozmiar bufora danych odbieranych przez interfejs szeregowy /dev/ttyUSB0 w Linux bez wykonywania rekompilacji jądra?
Dokładnie to chce zrobić takie oto ustrojstwo. Mam sprzetowy interfejs diagnostyczny (działajacy z protokołem CAN, tak aby było konkretniej w rozmowie). Jest on podłaczany po urządzenie i zapewnia komunikacje miedzy diagnozowanym sprzętem a komputerem na którym jest oprogramowanie do obróbki danych. jako ze czasami musze pracować na wyjazdach i nie...
Układ wyświetlacza komunikuje się przez SPI. Czy czytałeś datasheet sterownika tego wyświetlacza? Ma on 3 tryby adresowania vertical, horizontal i page addresing. Możesz w pamięci ram stworzyć bufor, który modyfikujesz w zależności od zmiennych danych wejściowych, a potem wysyłać go do wyświetlacza. Sposób modyfikowania tego bufora zależałby od tego...
Na początek popraw błędy w kodzie. Ilość zdekodowanych ramek zwiększaj dopiero wtedy gdy nie wystąpi błąd w dekodowaniu, a nie od razu po MP3Decode (to tak na przyszłość). Poza tym gdy zwolni się jeden z buforów (ENDTX = 1), wpisuj nowe wartości tylko do rejestrów następnego bufora DMA, a nie do obu ( AT91F_SSC_SendFrame( AT91C_BASE_SSC, 0, 0, outBuf,...
Witam zwracam się z pewnym problemem. Mianowicie chcę utworzyć DB pełniącego funkcję buforu. Kiedy s7-300 odbierze dane skopiuje je do kolejnego miejsca w DB, składającego się z tablicy elementów UDT[1..150], kiedy przyjmie 151 daną paczkę umieści ją na pozycji 1. Mój problem polega na tym, że nie wiem w jaki sposób mogę wykonywać operacje na pointerze...
Moim zadaniem jest wyeliminowanie konieczności użycia linii P1.6 mikrokontrolera i odpowiednie zmodyfikowanie poniższego kodu. Wiem, że można na czas zmiany wskaźników wpisać do bufora danych wskaźnika liczbę 0. Próbowałam użyć do tego celu rozkazu MOV, ale w żadnej konfiguracji jaką próbowałam nic się na płytce nie wyświetla. [syntax=asm]SEG_ON EQUP1.6...
Nie znam Bascoma, nie używam go i nie planuję. Ja bym użył wskaźnika na początek pliku i zapisał dane z offsetem po zakończeniu akwizycji. Tworzyłbym też plik samodzielnie zamiast kombinacji z pustym plikiem na PC. Proponuję szukać w helpie do Bascoma jak zdefiniować wskaźnik na początek pliku albo bufor dla danych z pliku i jak je później nadpisać.
Najlepiej jakby każda wartość wkładana do kolejki była wskaźnikiem (albo strukturą, która ma wskaźnik etc.) na dane. Jest to chyba najwygodniejsze/najprostsze w obsłudze. Żeby nie alokować pamięci non-stop i wciąż można zaadoptować Twój pomysł. Tzn stworzyć bufor raz (nawet nie musi być w takim przypadku dynamiczny) i przekazywać do kolejki strukturę,...
Teraz zbierasz w kodzie tylko bajt danych, aby obsłużył pakiet musisz założyć bufor #include <SoftwareSerial.h> SoftwareSerial LIN(0, 1); // Dlaczego nie czytasz danych na pinach 2 i 3? const int BUFFER_SIZE = 64; // rozmiar bufora char linBuffer[BUFFER_SIZE]; // Bufor danych int bufferIndex = 0; // Indeks bufora void setup()...
Niezbyt to przemyślane. To nie może brzmieć dobrze. Odtwarzanie walnij do jakiegoś przerwania a odczyt niech sobie siedzi w programie głównym. Wtedy odczyty nie będą wprowadzamy ogromnego Jittera do sygnału. Dajesz bufor powiedzmy 512B. Robisz odczyt bufora i włączasz przerwanie. Przerwanie co raz odczytuje jedną próbkę i zmniejsza wskaźnik pozycji...
Nie jest to takie proste jak piszesz. Tak? a może jakieś konkrety? Jak podłączy się bezpośrednio i oscyloskop ma bufor i funkcje obróbki uchwyconych danych, to można się coś dowiedzieć. Masło maślane, każdy cyfrowy ma bufor, fft jakbyś nie wiedział to głęboka obróbka danych, więc wyjaśnij co chciałeś napisać bo jak na razie to same truizmy powtarzasz.
Tylko jak to zrobić żeby poczekać w mSocket na całość danych a na końcu zapiąć do bufora zgodnie z tym co jest w pierwszym poście? Tak lepiej nie rób, szczególnie jak oczekujesz aż 300kB. Bo bufory socketa są jednak ograniczone, może wyjść tak, że odbiornik każe nadajnikowi się zatrzymać i nigdy nie dostaniesz tych danych.
Juz bylo cos podobnego - przed odczytaniem danych sprawdz bufor, czy odpowiednia ilosc danych sie juz w nim znajduje.
Tak wogóle masz za mało pamięci operacyjnej. 128MB RAM to wg mnie za mało. A jeśli masz Win XP to tym bardziej. Dołóż pamięci i powinno się poprawić.
Najprościej to rozwiązać tak jak napisałem w podlinkowanym temacie. Cały problem polega na tym, że jeśli wyślesz liczbę 123 to nie masz pewności, że przyjdzie ona w całości, możesz to odebrać jako dwie liczby - 12 i 3. Wszystkie tablice w c# są dynamiczne. Jeśli chodzi o zmienianie rozmiaru to tak, właśnie chodzi o kolekcje, ale one nie rozwiążą Twojego...
W cytowanych programikach wykorzystuje sie tablicowy model liczenia sumy crc. Jest to zrobione po to aby zwiekszyc szybkosc wykonania operacji. A te tablice to wlasnie wartosci crc. Do procedury podajesz dane w postaci wskaznika do bufora z danymi i ilosc danych ,ktore chcesz zliczyc. Inne sposoby liczenia sumy crc znajdziesz w Elektronice Praktycznej...
Transfer czego? Danych do bufora? Na HDD? Czy ograniczyć połączenie internetowevia aplikacja?
Nie bardzo wiadomo o co Ci chodzi. O strumieniowe przetwarzanie danych, o bufor karuzelowy, fifo etc? :)
Zapomnialem jeszcze o tym że FT232 ma bufor danych który należy zmniejszyć. To jest screen który utworzyłem na potrzeby innego forum. https://obrazki.elektroda.pl/6684326400_...
Tak jak pisałem już kiedyś pamięć można podłączyć po jakiś mikroprocesor, odczytać i wysłać zawartość do komputera. Drugi możliwy sposób to, jeśli masz programator obsługujący pamięci eprom, przedrutować wyprowadzenia tak, aby odpowiadały np 27128 i go odczytć. Tylko że wtedy może trzeba będzie dodać bufor dla linii danych, bo ten PAL nie ma żadnego...
Cześć, Zaczynam prace nad budową wibrometru. Zamierzam wykorzystać któryś z uK ATmega oraz układ ADXL345 lub bardziej wypasiony LSM9DS0, na przykład taki: https://www.adafruit.com/product/2021 Wibrometr ma mieć dwie możliwości przesyłu danych na zewnątrz. Pierwszy to komunikacja bezprzewodowa w czasie pseudo-rzeczywistym (opóźnienie bez większego znaczenia)....
Akurat w tej instrukcji sam ustawiasz wielkosc bufora (bo to nie jest bufor portu tylko twoich danych). jezeli czytasz w onrxchar to ilosc danych w buforze portu masz w zmiennej Count
No trzeba i to bardzo. Poczytaj w konfiguracji SPI rejestr CR2 bity 0 i 1 ! I jeszcze jedno. Czy zmienna "dane" zawiera adres do bufora danych? MxAR powinno zawierać adres bufora a nie dane z tego bufora.
Niestety owa schodkowość wynika z dokładności danych przechowywanych na portalu SolarEdge, powyżej pewnej wartości wytworzonej energii jest ona gubiona, przy zachowniu określonej liczby cyfr znaczących. Alternatywnym rozwiązaniem jest samodzielny pomiar wytworzonej energii przy pomocy licznika energii i wysyłanie na portal Nie do końca jest ta odpowiedź...
Freddie Chopin, FIFO jest dobrym rozwiązaniem, myślałem, że uda się to zrobić w prostszy sposób. Niestety muszę przebudować wszystkie funkcje z tym związane, bo chcę zamienić aktualne rozwiązanie czyli dwie zmienne tablica i licznik danych w buforze na strukturę z tablicą, wskaźnikiem na ostatnio odczytany element i licznikiem danych w buforze. Mam...
Funkcja ReadFile w jakiś sposób przekazuje ilość odczytanych bajtów (do sprawdzenia w dokumentacji). Należy brać pod uwagę tylko tą ilość danych...
Możesz zapisać do pliku w formacie [url=http://pl.wikipedia.org/wiki/CSV_(f... następnie po prostu otworzyć EXCEL-em. Jeśli nie potrafisz w VB oddzielić osobnych danych, możesz kazać ATMedze wysyłać jakiś separator, np: ";" <=> "uart_putc(59);" <=> "uart_putc(0x3B);". Wystarczy umieścić to za ostatnim if-em przed linijką: "itoa(i,buffer,10);".
Super! Tylko co to jest to na początku tego wykresu? To jest jakoś tak, że po każdym odebraniu danych rysujesz bufor od nowa (nawet jak zmieniła się jedna wartość w tablicy, czy każda klatka to całkowicie nowy bufor?). Zastanawia mnie trochę te mrugnięcie w opcji bez opóźnienia. Czy to jest jakiś problem ze sprzętem? W sensie kabelki na stykówce nie...
Ciężka sprawa nie z RAMem tylko konwencją zapisywania danych w buforze...robiw
Odkryłem to :D Dane zgrywane z urządzenia do komputera były ładowane do bufora wejsciowego o pojemności 1024 B (taki bufor zdefiniowałem w programie). Przed każdym pobraniem danych bufor był czyszczony - wypełniany znakami NULL. Jednak nie zawsze cały bufor (1024 B) był całkowicie zajmowany przez dane przesyłane z urządzenia - transmisja asynchroniczna....
Cześć, pierwszy raz piszę tutaj. Mam czujnik obecności kupiony na AliExpress przez pomyłkę (przynęta na kliknięcie?) i chciałbym go sflashować, ale jest to bardziej testowe uruchomienie dla czegoś innego, ponieważ mam już kilka z nich w Zigbee. Jakiś czas temu sflashowałem kilka 8266 i było to całkiem łatwe, ale to wygląda na bardziej zniechęcające...
1/ lpt to kontroler równoległy (działa pod bazami 0x378 0x278), a kontroler uart(rs232) jest szeregowy więc niewiem poco nawiązywać do lpt.. 2/ z tego co pamiętam to at90s2313 posiada uart.. opis jak go zaprogramować można znaleźć w dokumentacjach.. 3/ co do programowania rs232 od strony komputera w turbo pascalu - niewidze przeszkód jeśli nieużywasz...
Rozumiem wiec, ze masz gdzies w EPROMie tablice z 54 jednobajtowymi elementami pdu: 07911356131313F311000B918416325476F80000... Jesli tak jest to jej komorki powinny wygladac tak: Dodano po 21 Moj GG jest dostepny ponizej :) ale tylko wieczorem.
Ewentualnie, przyjąć zasadę: po wysłaniu danych zakładamy, że bufor odbiorcy jest zapełniony, do czasu, aż odbiorca najpierw przyśle sygnał "bufor zajęty", a następnie "bufor wolny".
Tak jest to możliwe, do obróbki danych wybierjąc Conteca musi to być bufor BU i wersja TelBazy 2.8 Są teraz w promocji zestawy: Program Telbaza 24 + bufor BU Mikro 512 - 790,- netto Program Telbaza 32 + bufor BU Mikro 512 - 990,- netto Program Telbaza 64 + bufor BU Mikro 512 - 1260,- netto
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...
void main_VirtualComSendData(uint8_t *text) { char *temp = text; uint8_t nbytes = 0; while(*temp != 0) { Sama funkcja po stronie stm'a - nie wysyła danych jeśli pierwsza wartość w buforze to 0x00. Spróbuj zamiast obliczania długości ciągu znaków wartość tą przekazywać do funkcji main_VirtualComSendData.
Kolejkować trzeba transakcje - robisz bufor w którym trzymasz dane do wysłania, potrzebujesz jakieś funkcje dodające bufor do kolejki i badające jej status. Po nadaniu danych z bufora, znajdą się w nim dane odebrane. Całość może działać w oparciu o przerwanie SPI.
witam. buduje systemy na rs485. niestety zadna z komend bascomowych nie była mi przydatna. używam przerwania do odbioru i sam obsługuje własny bufor z ustawieniem flagi informujacej iz właśnie w buforze jest odebrany "ważny" pakunek danych '------------------------ Rx_serwer: Rxdata = Udr1 Rem zabezpieczenie przed przepełnieniem bufora If Rx_count...
Zarzuć ten pomysł. Na taki pomiar będą miały wpływ: - Umieszczenie danych w buforze dysku (fizyczny cache dysku) - Umieszczenie danych w buforze systemowym (cache dysku w systemie) - Aktualne położenie głowicy - Fragmentacja pliku - Położenie pliku na dysku - System plików - Rozmiar klastra dysku - Współbieżność z innymi operacjami dostępu do dysku...
A które urządzenie jest jako Master ? Bo jeżeli AVR to niema żadnych problemów, bo zegar wysyła master. Gdyby był jako Slave to przy 2 bajtach też nie powinno być problemu bo jak już ktoś wspomniał jest jeszcze rejestr przesuwny do którego dane są ładowane jak bufor jest jeszcze zajęty. Po odczytaniu danych z bufora dane z rejestru natychmiast przepisywane...
Przejściówki wnoszą opóźnienie, w pewnych warunkach absurdalnie duże. Dane na UART przychodzą bajt po bajcie, ale nie można ich bajt po bajcie wysyłać przez USB - maksymalna przepustowość USB wyniosłaby wtedy 1000 B/s. Przejściówka ma bufor danych od kilkudziesięciu B do kilku kB i czeka z przesłaniem danych na jego wypełnienie lub inne kryterium, np....
Natomiast w drugim przypadku jeżeli dodatkowo w pętli umieszczę funkcję LCD_Start_DMA, aby wysyłać pobraną ramkę na LCD, to samo pobieranie danych z DCMI do bufora w sdramie trwa 61ms nie wliczając w to czasu potrzebnego na wysłanie tych danych z bufora na LCD. To już jakieś czary, bez kodu nic nie odczarujemy.
Tak, ale czy w przypadku, który podał kolega Szelus nie jest właśnie tak, że operujemy na wskażnikach do danych w buforze, a nie na kopiach tych danych w strukturze ? To by wyjaśniało, dlaczego zawartość pierwszej struktury jest nadpisywana przez kolejne zapełnienie bufora danymi dla drugiej struktury. Wskażniki w obydwu strukturach wskazują na dokładnie...
Ok, teraz wszystko działa jak należy ;) dzięki :) Dodano po 42 To jednak nie koniec kłopotów :P Gdy chciałem doprowadzić tego USARTa do bardziej użytecznej formy pojawił się pewien problem, wygląda to tak jakby flaga TXE była non-stop ustawiona przerwanie chciałem obsłużyć tak: [syntax=c] void USART2_IRQHandler (void) { if (USART2_SR_RXNE_bb) { //wczytanie...
Witam, jakiej uzyc funkcji, aby zapisac dane odczytane z bufora do pliku w C++ lub WinAPI (dane w buforze znalazly sie po wyslaniu ich przez posrt szeregowy). I drugie pytanie w jakis sposob rozwiazac problem ograniczonosci rozmiarow wysylanych plikow wynikajacych z rozmiaru bufora. Jakas petla, ktora bedzie po kazdym wypelnieniu i odczytaniu danych...
W buforze odbioru są tylko dane wysłane przez czytnik. Należy zwrócić uwagę, że bufor wejściowy wypełnia się niezależnie od funkcji odczytu znaków. Jeżeli np. czytnik wysyła dane (ileś bajtów) cyklicznie, to jeżeli nie jest wywoływana funkcja odczytu znaków bufor wejściowy będzie stopniowo się zapełniał. Funkcja 4403 powoduje odczyt i usunięcie iluś...
Hmm, nie wiem dlaczego koledzy tak bardzo odradzacie obsługę LCD w przerwaniach. Ja to mam tak zrobione w wielu projektach. Przerwanie do obsługi LCD pojawia się co określony czas (czas potrzebny na zatrzaśnięcie danych do LCD), w przerwaniu "lecą" dane z bufora do LCD bez żadnych opóźnień. W pętli głównej wysłanie danych do LCD wiąże się z zapisem...
OK, dzieki - tak, czy inaczej wyglada na to, ze BIOS jest uwalony. Nawet jak programuje stary zrzut (poprawna wielkosc), wyskakuje niezgodnosc danych miedzy buforem i chipem.
1) co chcesz wysyłać do tego GSM? Jeśli to ma być transmisja danych typu to CTS i RTS będzie ci potrzebne i taka obsługa transmisji która sprawdza gotowość modemu do przyjęcia kolejnych danych. 2) jeśli to będą małe porcje danych np. SMS to możesz spokojnie sobie te sygnały darować bo modem ma swój bufor danych. Medem ma swój uP który, zaręczam ci bije...
W tym temacie: http://www.elektroda.pl/rtvforum/topic23... nie rozumiem pewnych rzeczy: 1. Samo programowanie, dla mnie obce nie jest. Ale: Nie wiem o co chodzi z tym d0-d9. Czy ktoś mógłby mi to wytłumaczyć? Dodano po 40 Witam ponownie :) Zrobiłem tego robota a właściwie ramie oraz sterownik. Nadal mam problem z napisaniem programu dla...
zapis danych buforu sterownik buforu schemat buforu
schemat przewodów paliwa komunikaty avast wariuje klawiatura
inwerter wyspowy dewalt dcb107
Dekoder nie uruchamia się po przerwie w dostawie prądu Błąd EE w urządzeniach elektronicznych - co oznacza?