Jak zamienić transmisje z pętli prądowej na RS-232 to już wiem, wystarczył mi rezystorek 1K na pin 2 Rx, jednak problem tkwi w transmisji - jest to transmisja ciągła, a ja potrzebuje jedynie jedną wartość w momęcie wciśnięcia klawisza "drukuj", ze zwłoką, tak aby następny wydruk był możliwy po przejściu...
Dzień dobry Męczę się strasznie z NRFką. Program działa tak że co niecałą sekundę odpalana jest procedura transmisji. Po trzecim wysłaniu danych mam status 0x0E, ale zaraz po załadowaniu czwarty raz PAYLOADa, NRFka odsyła status 0x0F i tak już do końca co o mówi o tym, że bufor transmisji jest pełny....
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)...
Spróbuj zwiększyć bufor transmisji C:\Program Files (x86)\Arduino\hardware\arduino\avr\libra... _SS_MAX_RX_BUFF 64
Przez zwykły przewód też można przesłać sygnał audio, nawet na sporą odległość, trzeba tylko zadbać o odpowiednio niskie impedancje wejścia i wyjścia takiego toru stosując np odpowiednie bufory.
Nie napisałeś jaki to procesor. Przykładowo dla Atmega8/Atmega32 wystarczy gdzieś napisać UCSRB.TXEN = 0 Dla Mega328P UCSR0B.TXEN0 = 0 Mowa o Atmega16. Instrukcja UCSRB.TXEN = 0 rzeczywiście działa ale tylko do czasu, kiedy nie połączę się z drugą Atmegą. Tak wygląda początek programu...
Witam Ćwiczę aktualnie transmisję po SPI, dane są wysyłane w jednym kierunku, do wyświetlacza GLCD. Problemem jest długi odstęp czasu wysyłania kolejnych bajtów. Do testów stworzyłem coś takiego, taktowanie uP 8MHz, optymalizacje wyłączone, jedynie microlib działa. Funkcje alternatywne na SCK i...
Ze screena wynika, że daną idą w stary sposób. Ale skoro są oddzielone spacją, to możesz spróbować czegoś takiego: 1. Dodajesz sobie readonly kolekcje referencji na Textboxy, w kolejności takiej, w jakiej przychodzą dane. Jest to po to, żeby nie robić potem miliarda ifów żeby wpisać dane. 2. Ponieważ...
Witam Mam pytanie dotyczące transmisji RS232 w atmedze8 do komputera. Chodzi o wielkość bufora w USART. Realizuje komunikacje z komputerem w sposób: wysyłam w petli znak, mikroprocesor w odpowiedzi wysyła ciag znaków po 10, po odebraniu w komputerze wysyłam nastepny znak i tak 10 razy obecnie. Z moich...
Witam. Potrzebne mi urządzenie będące buforem przezroczystym transmisji po RS232, coś w rodzaju: [A]RS <---------------> RS[B] zamieniam na: [A]RS <-------> RS[BUFOR]RS <--------> RS[B] Bufor ma za zadanie robić za sniffer: 1. Przesyłać z najwyższym priorytetem dane...
Programowanie modułu BTM-222: Moduł BTM-222 to układ w pełni kompatybilny z interfejsem szeregowym USART. Moduł jest fabrycznie ustawiony na szybkość transmisji 19 200 bps, 1 bit stopu, brak parzystości. Nominalne wartości można zmienić podłączając układ do portu COM komputera. Operacja ta jest możliwa...
Potrzebowałem szybko napisać program, który realizowałby zarówno transmisję poprzez sprzętowy UART, jak i programowo poprzez przerwanie zewnętrzne i jeszcze jeden pin. Wyszła z tego wielka kicha, a dokładniej z odbiorem danych w przerwaniu. Przerwanie jest wykonywane cały czas - tak jak gdyby napięcie...
Witam kolegów. Pierwszy temat: potrzebuję odbierać poprzez UART ciągi znaków wysyłane z urządzenia. Urządzenie wysyła taki ciąg bajtów: GZ GZ A0 A1 Cm Sc -tu dane- EN gdzie: GZ GZ to jest stały początek zawsze taki sam, A0 A1 podaje kierunek transmisji, Cm Sc komendy według wzorca, -dane-...
ADM1491E jest buforem przewidzianym do standardów komunikacji RS-485 i RS-422, posiadającym zabezpieczenie anty ESD do ±8kV i nadającym się do szybkich transmisji (do 16Mbps) full-duplex. Układ ten jest zaprojektowany do zbalansowanych linii transmisyjnych i jest w pełni zgodny z normą TIA/EIA-485-A-98....
Witam Męczę od kilku miesięcy (z przerwami) łączność między modułami RF. Transmisja przebiega prawie poprawnie, tzn. pomiędzy poprawnie odebrane bity wstawiane są ciągi zer. Nie znalazłem nic na ten temat na forum. Nadajnik: ATmega88, zegar: wewn. RC 8 MHz RFM12B, wersja 868 MHz, antena: drut lambda/2 zasilanie:3,3...
Głównym powodem powstania była potrzeba wyświetlania informacji na dłuższą odległość i łatwość obsługi fizycznego aspektu, czyli ilości podłączeń. Aby przesłać i zasilać, wystarczą trzy linie albo dwie linie plus jakiś moduł transmisji bezprzewodowej. Kolejna przyczyna powstania to jednolity...
Kolega zrobi tak: Nadawanie: Organizujemy bufor kołowy (tablica w RAM np. 1KB i dwa indeksy - zapisu i odczytu). Procedura UartSend(unsigned char* txt, int size) kopiuje dane z txt do bufora zapisu. Po każdym bajcie podbija się indeks zapisu (i zawraca na początek bufora gdy dojdzie do końca)....
Witam, od dłuższego czasu też walczyłem aby zrobić ładny sprzętowy TWI-SLAVE. W C jeszcze jestem troszkę za słaby więc na początek zrobiłem to na podstawie różnych postów tu na elektrodzie w Bascomie. Działa prze-ślicznie :) jak narazie i rozwiązane mam w tej procedurze obsługi przerwania chyba wszystko...
Kończę pewien projekt i przy kosmetyce muszę poprawić pewne błędy. Błędy mam z komunikacją poprzez RS'a 232. Dla mastera utworzyłem własną ramkę danych mającą postać: Nr bajtu - wartość //opis 1 - 0x01 //numer urządzenia 2 - //komenda 3 - //dane 4 - 0x0D //znak końca ramki Slave...
Parzystość ,bit stopu,długość prawidłowa ? Większość błędów w pracy uarta to różne ustawienie parametrów wysyłanej informacji, źle ustawione źródło częstotliwości zegarowej (dzielnik lub RC) lub odebranie śmieci z bufora odbiorczego które znajdują się tam po resecie mikrokontrolera.Patrząc na to co...
Szanowni Forumowicze, Bardzo proszę o pomoc! Napisałem program realizujący transmisję UART na podstawie książki "Mikrokontrolery AVR Język C Podstawy programowania" (Mirosław Kardaś), ale nie działa on prawidłowo, a w zasadzie nie działa wcale. Od strony sprzętowej projekt zrealizowałem na płytce uruchomieniowej...
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...
(at)ellavita Tak jak kol. (at)NoweMillennium napisał - rozsyłanie z jednego nadajnika do kilku odbiorników to nie problem i będzie to działać. Natomiast problem jest w drugą stronę - wysyłania danych z odbiorników do mastera. Ponieważ wymagałoby to połączenia kilku wyjść, bezpośrednio taka konfiguracja...
Witam, mam dziwny problem z moim programem na '51(w C). Bawiłem się w transmisję szregową i utknąłem. Programik jest prosty: bufor odbiorczy na przerwaniu - wpisuje mu coś z klawiatury (HyperTerminal) on odbiera i umieszcza to w buforze, potem wypisuje funkcją printf to co tam jest. Problem w tym, że...
Witam! Mam następujący problem: przesyłam dane pomiędzy uP a PC w Delphi przy pomocy komponentu vacomm32. Prędkość transmisji wynosi 115200b/s, odebrane dane z uP zapełniają tablicę stringów. Do pewnego momentu wszystko działa (przesłanie ok. 4kB nie nastręcza problemów), lecz po pewnym czasie poszczególne...
witam serdecznie wszystkich buduje układ w którym moduły zbudowane na atmega8 maja ze soba rozmawiać po i2c, ale każdy ma być w osobnym urządzonku i połączone mają być przewodami. Odległości między modułami nie będą duże, przypuszczam że całą linia i2c będzie miała najwyżej 2m (może mniej) moje pytanie...
Witam. Dopiero uczę się programować transmisję po RS'ie. Napisałem program do procka który odbiera wysyłany tekst z kompa i zamienia wszystkie małe litry na duże, a następnie odsyła zamieniony tekst z powrotem do komputera. Program na kompie wygląda w ten sposób: char[] bufor...
Na stronie producenta: jest datasheet, zwięzły, opisane to co najważniejsze, jest graficznie przedstawiony algorytm nadawania i odbioru. Transmisja jest bardzo prosta, zależy kto w jakim języku pisze, ja robię w avr-gcc ale robiłem też w bascomie, przykład w avr-gcc - tylko kawałek kodu oczywiście,...
Dobrze. Da się inaczej. Wersja łatwa: Tablicę (string) zrobić globalną i sprawdzać czy poprzednia transmisja została zakończona przed wysłaniem. Wtedy wywołanie dbguPrintf() zakończy się od razu, za to oczekiwanie nastąpi przy kolejnej okazji, ale czasu procesora zmarnuje się mniej, bo w trakcie...
Robisz transmisję USART i nie wiesz co to jest UDR? To do licha, jak udało ci się zrobić tą transmisję? Tak, w AVR odbiornik USART ma 2-stopniowy bufor. Ale skoro po transmisji zostają ci tam nieodebrane bajty, to znaczy, że czegoś nie odebrałeś. Skoro nadajesz 100 bajtów, to 100 musisz odebrać, najwyraźniej...
Witam, zmontowałem sobie prosty układ do komunikacji z PC. Komunikacja następuje przez przejściówkę USB <>UART opartą o FT232R. Wszystko pięknie działa do momentu, kiedy zmieniam baud rate na <190 - mikrokontroler sygnalizuje, że taki baud rate jest możliwy do ustawienia, natomiast po zmianie...
Klepnąłęm kawałek kodu na STM32F0x dla obsługi transmisji uK=>PC. Jednak pojawił się dziwny objaw. Może ja nie widzę błędu.... Warto aby ktoś zerknął w ten kod: #define TBUF_SIZE_UART2 128 struct uart2_tx_buf_st { u16_t in; /* indeks zapisu */ u16_t...
Witam, zacząłem pisać program na zaliczenie tj. Zamek szyfrowy sterowany zdalnie z terminala i odrazu pierwszy problem, chodzi o ustawienie transmisji. Mam oto taki kod: [syntax=asm]$NOMOD51 ; wymagana dyrektywa kompilatora - ten procesor to nie 8051 $INCLUDE (REG517.INC) ; dolaczenie pliku definicji...
Czas zapisu danych z bufora do pamięci dla AT45xx to ok. 7ms. Dla porównania czas ładowania bufora dla SPI(at)16MHz to ok. (5+528+x)*0,5us = (266+x)us. Czyli możesz załadować 2 bufory, rozpocząć programowanie BUF1->MEM, a po zakończeniu rozpocząć programowanie BUF2->MEM. W ten sposób transmisja danych...
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: Wibrometr ma mieć dwie możliwości przesyłu danych na zewnątrz. Pierwszy to komunikacja bezprzewodowa w czasie pseudo-rzeczywistym (opóźnienie...
A komponent nie ma procedur obsługi zdarzeń?? Lepiej wrzuć comport1.read w taką procedurę. Nie wiem co to za komponent, ale może ma coś jak obsługa zapełnionego bufora odbioru? Ustawiasz bufor na 260 i robisz odczyt w zdarzeniu.
W RFM12 trasceivery ustawia się poprzez komendy SPI, wysyłanie następuje poprzez wybranie odpowiedniej komendy i wypełnienie bufora FIFO (również via SPI). Odbiór może następować poprzez polling (czyli mikrokontroler sterujący co jakiś czas "odpytuje" urządzenie czy odebrano dane) lub w trybie przerwania...
Witam ponownie w tym sęk że od pewnego czasu nie mogę pobrać nic z bufora. działało działało i nagle przestało. gdy odpalę transmisję danych - po chwili pisze brak połączenia. ping do bufora mam więc to na pewno nie siec. zauważyłem ze w katalogu program files\contect\telbaza2\db\hdb_001\file_d...
przetestowałem fx2pipe na virtualbox osiągnąłem transfer 8 Mbps a na zainstalowanym linux transfer byl około 38Mbps a to nie to samo co "ponoć wyciąga 39MB/s w stronę komputera" bo Mb != MB ;) Nie za bardzo rozumiem dlaczego nie skazany jest odczyt blokiem po 128KB ? Wyniki testów szybkości...
Problem jest następującej natury. Do interfejsu SPI jest dorobiony zestaw funkcji, który realizuje buforowaną transmisję poprzez programowe FIFO i DMA. Do bufora FIFO ładowane są dane typu wskaźnik na dane do nadania, wskaźnik na tablicę dla danych odebranych, dane umożliwiające machnięcie linią CS...
Uruchomienie SPI następuje automatycznie w momencie zapisu danej do bufora danych SPDAT. Uruchamiane jest wtedy wyjście SCK i dane z bufora w takt zegara wystawiane są na pin MOSI. Odczytując dane z SPI musisz pamiętać o wysyłaniu jakieś danej np. 0x00, aby uruchomić zegar SCK. W takt zegara kolejne...
Lepiej jest ustawić flagę iż ramka cała i do interpretacji a głównej pętli podejmować odpowiednią akcje. pewnie, że tak - no ale od tego to już tylko maleńki kroczek żeby zrobić po prostu odbiór do bufora cyklicznego w przerwaniu i tylko to. A odbieranie ramek już w dowolny sposób i widzi-mi-się...
W tym temacie zebrane będą informacje o modułach wykorzystywanych w radiowej transmisji danych z wykorzystaniem wolnych pasm nie wymagających licencji pozwoleń itp, przy założeniu korzystania z gotowych rozwiązań. Wątki na forum: [url=]Porównanie modułów 433MHz Velman Telecontrolli Aurel [url=]Uruchamianie...
Tak dla testu tylko wywal Config Serialout w nadajniku. Miałem kiedyś taki dziwny przypadek - ustawiłem sobie bufor wyjściowy dla przesłania króciutkiej ramki, a w odbiorniku cisza. Bez bufora wyjściowego działało prawidłowo. Do dziś nie wiem co było przyczyną.
Witam Wykonałem układ, który komunikuje się z PC przez moduł BTM-222. Komunikacja USART, asynchroniczna 38.400 kbps, 1 bit parzysztości, 1 bit stopu. Jeśli zadeklaruję na stałe, że wielkość bufora wynosi np. 30, i wysyłam z PC 30 znaków, to komunikacja działa bez zarzutu. Problem w tym, że chciałbym,...
Procesor to PIC32MX440F512H - już trochę leciwa wersja, przy tym 64 nóżkowa - akurat tutaj dali 1xSPI (co mnie od razu zdenerwowało jak zobaczylem datasheet), nowsze wersje mają ich więcej (ale mój PICKIT2 nie obsługuje tych nowszych). Sytuacja ta pokazuje, że pewne granice wynikające z ograniczeń...
Witam. Kilka dni temu zrobiłem format, z 32bit na Win 7 64 bit. Od tego czasu po instalacji wszystkich sterowników, java itd. Filmy na youtube zacinają się, a głos leci dalej. Jak obraz się "odetnie" to jest niezsynchronizowany z głosem i film leci dalej, do czasu aż znowu złapie "zacinkę". Co ciekawe...
Witam, Z powyższym problemem męczę się już bardzo długo. Naczytałem się o bicie URSEL(w 328p go nie ma),sprawdzałem przejściówkę USB->RS232 działała "na krótko" i przy połączeniu do modułu bluetooth HC05. Wyeliminowałem błąd "UART receiving framing error" z terminala RealTerm poprzez ustawienie...
Kilka pytań: - co to za sterownik - czy transmisja ma specyficzną ramkę - czy w paczce (ramce) nie ma przypadkiem długości bloku danych Sugestie: - ustawić odpowiednio długi timeout odczytu i ewentualnie wpowadzić opóźnienie po wysłaniu komendy do sterownika zanim zaczniemy odczyt - sprawdzić...
W zasadzie pomysł z aparaturą do zdalnego sterowania wydaje się niezłym rozwiązaniem. Można wykorzystać dwa kanały do przesyłania stanów logicznych jeden dla "0" drugi dla "1", co poprawiło by odporność na zakłócenia. Można by dodać jeszcze impuls początku końca transmisji wyzwalający odświeżanie po...
Wiec tak mam taki problem i kończą mi sie pomysly : 2 układy jeden z atmega8L zasilany na 3,3 V drugi atmega32L tez 3,3 V podłączyłem pierwwszy układ (atmega8l) kabelekem do komputera (kabel z wbudowanym max232 - zasilanym z portu z diodami zenera (kabel od siemensa)) i wszystko oki transmisja...
Ok z tego co przeczytałem to dwukierunkowy bufor można zrealizować w taki sposób, że gdy pin dwukierunkowy pracuje jako wejście to sygnał podawany jest na na pin dwukierunkowy pracujący jako wyjście poprzez przerzutnik D sterowany sygnałem zegarowym. Czyli oba piny połączone są ze sobą dwiema "ścieżkami"...
Teraz tak patrze dokładniej... czyli wychodzi na to że rejestr: First In / First Out Control Register będzie odpowiedzialny za moje bufory. To by się zgadzało z praktyczną realizacją. Póki co rozwiąże to prymitywnie poprzez liczenie liczby transmisji. W moim pollingu transmisja kolejnych znaków jest...
Niestety nie, ja myślę chyba jednak żeby zostawić tą transmisję, a winę za konieczność stosowania delaya zrzucić na kod obsługi wyświetlania tego co przyjdzie. Porobiłem troszkę testów i tak: ustawiłem bitrate na 230400 i zacząłem zmniejszać wartość delay i tak dla: 1300us - jeden krzak na wyświetlaczu(zawsze...
Winą są zależności czasowe ... powinieneś zbudować bufor najlepiej rotacyjny gdzie w przerwaniu dodajesz znak przychodzący, a wysyłając pobierasz z początku. Dodatkowo musisz pamiętać że masz tryb half-duplex (wspólną szynę), czyli jak rozpoczynasz transmisje wielu znaków do mikrokontrolera musisz go...
Częstym pytaniem jest jak zaprojektować half-duplexowy repeater dla sieci RS-485, który działałby niezależnie od prędkości transmisji. Różnorakie przykłady takich urządzeń opierają się na projektowaniu długich połączeń pomiędzy węzłami sieci, co pozwala na działanie jej w zakresie większym niż 1200 m...
Witam. Szukam rozwiązania buforu FIFO dla nadajnika dla transmisji szeregowej. Opisu takiego buforu / budowy / działania. Dziękuje za wszelkie wskazówki.
Witam, Napisałem program dobierający dane poprzez UART4 z wykorzystaniem DMA, komunikacja ma docelowo odbywać się z giroskopem. Pierwsza ramka danych ma jednak inną długość niż pozostałe. Czy można zmienić długość bufora DMA po odebraniu pierwszej ramki? Próbuję to zrobić w ten sposób, że przy injcalizacji...
Witam grono szanownych kolegów, Zwracam się z prośbą o sugestie i pomoc w pchnięciu zagadnienia uruchomienia podstawowej transmisji CAN między dwoma naszymi urządzeniami. Mam zaprogramowane 2 urządzenia na AT90CAN128 które połączyłem TxCAN->RxCAN i RxCAN-TxCAN. Nie używałem pomiędzy żadnych buforów,...
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...
Witam, To mój pierwszy post, więc proszę o wyrozumiałość ;) Chciałbym się dowiedzieć czy jest jakiś sposób, aby zmusić DMA w układzie SAMV71 do pracy w trybie bufora cyklicznego do transmisji danych przez SSC (I2S) z prędkością rzędu 1.5Mbit/s? Do tej pory korzystałem z uC od ST i tam to było banalnie...
Witam Bawię się ostatnio modułami RFM22B, ustawiłem nadajnik i odbiornik według przykładów ze strony producenta [url=]Link transmisja ruszyła ale gdy chciałem zmienić ilość przesyłanych danych (rejestr 0x3E w nadajniku, tryb FIFO) to się okazało że powstają ciekawe błędy a mianowicie dla ustawionej...
Witam! Mam system w którym mogą pojawić się dwa nadajniki i kilkanaście odbiorników.Wszystko działa po sieci energetycznej przy pomocy odpowiednich układów(dokładnie TDA5051A). Mam ramkę danych zrobioną, ale teraz chciałbym jeszcze zabezpieczyć programowo transmisję, aby dwa nadajniki nie zaczęły wysyłania...
Zgodnie z obietnicą zapytałem kolegę elektronika-radiowca. Przytoczyłem wprost najważniejsze części Jego wypowiedzi z komunikatora tak, jak je napisał pod presją bycia w pracy o kilka pokojów od gabinetu szefostwa. Proszę zatem Moderatorów o wyrozumiałość. Zasięg, jaki Mu podałem, to 200 metrów w otwartej...
Witam. Muszę zrobić komunikację pomiędzy mikrokontrolerem ATMEGA a wrzutnikiem monet MARS 560. Niestety jak na ta chwile znam tylko BASCOMa ale z RSem bawiłem się tylko gdy komunikowałem się z telefonem ale tam wsyztko było STANDARDOWE. Tutaj się dowiedziałem że transmisja odbywa się 9 bit i stad moje...
Cześć. Od jakiegoś czasu próbuję rozwiązać problem związany z komunikacją UART-USB przez port COM. Używam mikrokontrolera ATmega8A (wewnętrzny generator RC 8MHz), konwertera FT232RL i w tym momencie próbuję sprawić, aby stała się najprostsza możliwa rzecz, czyli wysłanie 2 literek na port. Mój projekt...
Jak odpalasz peryterium to zrób wszystko w najprostszej formie na pollingu bez buforów. Masz za dużo miejsc gdzie może nie działać. void USART_Transmit( void ) - to jest ekscentryczne i wysyłanie ze zmiennej globalnej - możesz uzasadnić takie coś?. Ciekawe jaki kod został wygenerowany. dlaczego nie...
Czytaj po jednym znaku w pętli do-while, przepisując już dane "ręcznie" do bufora, przy czym warunkiem dla while bedzie, że znak jest różny od '\n', bądź transmisja osiagnie maksymalną długość. Teoretyczny kod (może zawierać błedy i nieścisłości ;)) : unsigned char MietekBuff[15]; void main(void) { int...
TXB0106 jest 6 bitowym układem służącym do zmiany poziomu napięcia w układach logicznych. Automatycznie wykrywa on kierunek transmisji, co pozwala na wykorzystanie go do bezszwowego łączenia układów cyfrowych o różnym napięciu zasilania na jednej płytce pcb. Posiada on dwa porty - A oraz B, które...
Generalnie to pozyskuję dane z ESP8266-01, którym steruje Arduino Mega 2560. Do wifi wykorzystuję bibliotekę Dane przychodzą w formacie JSON. Zawierają wiele zmiennych plus nagłówek co daje około 300 bajtów. Z tych zmiennych potrzebuję raptem 5. Wtedy maks bajtów zmieściłby się w 64. Tak sobie...
Ponizej jest fragment ( jak mi sie wydaje - wlasciwy , ale raczej nie calkiem kompletny) implementacji bufora kolowego do protokolu Xon/Xoff, dzialajacego u mnie na 2051. Wprawdzie pisalem go w C , ale na ASM latwo go przerobic. Dodatkowo chyba dolozylem sterowanie linia RTS. Nie bardzo mam czas...
Kto wie jak wykorzystac kontrolke MSComm.ocx Moze jakis przyjład by ktoś podał. Jak mozna podgladac to co jest aktualnie na porcie. Najbardziej by mi zalezalo na wysylaniu i odbieraniu ciagów znakowych. Znalazlem gdzies na necie taki przyklad ale o cos mi nie dziala z tego wzdlegu ze nie chce...
Hej Mam problem z uruchomieniem transmisji szeregowej. Na moje oko cos jest nie tak w miejscu w którym sprawdzam czy UDR jest pusty. Jeżeli zrobię programową obsługę i własny znacznik stanu tego bufora to wszystko działa. Może ktoś zauważy co jest nie tak. Poniżej kod: void USART_init() { ...
RS232OUT: sbis UCSRA,UDRE rjmp RS232OUT tu się zapętla na śmierć wejdź tu: pobierz sobie kody źródłowe do tej książki (albo i kup ją sobie) ściągnij plik zip z kodami, potem go rozpakuj w katalogu P6 - Terminal masz plik uart_buf.inc i tam jest wszystko napisane i masz sprawdzoną...
No to zaczynamy po raz kolejny. Coś takiego jak stworzyłeś to niestety za szybko nie będzie działać. Mega z kwarcem rs 14 z groszami działa naprawdę szybko i można zrobić bardzo dużo w jedna sekundę. Do odbierania i wysyłania danych można sobie napisać własną procedurę - nawet w bascomie i jest ona...
Witam! Mam następujący interface z urządzeniem. Ramka danych: 1 bit startu 32 bity danych 1 bit parzystości 2 bity stop Prędkość nadawania bitów ramki 10Mbps Odstęp pomiędzy ramkami około 100-150us. Czy uC AT32UC3A jest w stanie łyknąć taką transmisję poprzez interface SSC (10MBps)? Proc...
$crystal = 8000000 $regfile = "M16def.dat" $hwstack = 128 Tu zmieniasz wg wlasnych parametrow '- deklaracja zmiennych dla usart ----------------------------------------... Index As Byte 'kolejny znak w buforze odbioru Dim Odebrano As Bit 'flaga ustawiona po odebraniu...
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...
Na AVR bez problemu można realizować transmisje o szybkościach rzędu setek kbps. Według mnie problem u ciebie polega na tym, że dane odbierasz pojedynczo (w procedurze obsługi przerwania odebrana daną wpisujesz do zmiennej - a co jeśli następny znak pojawi się szybciej niż zdążysz tę zmienna "obrobić"...
Hmm, No głowy nie dam że ten profil działa w czasie rzeczywistym. Nigdy nie spotkałem się jednak ze wzmianką nt. buforowania tego w jakis wiekszych buforach. No ale jest jeszcze profil K6 (inaczej headset profile) czyli profil do rozmowy przez zestaw słuchawkowy. TO juz idzie raczej bez opoznien....
Przed każdym pytaniem (cyklem) opróżnij bufor wejściowy (atlcool.h RemoveAll; buffin.RemoveAll) Dodatkowo podglądaj transmisję monitorem rs (np. portmon) Powinno być dobrze. Powodzenia i Najlepszego w Nowym Roku ! Dodano po 1 aha ! Jedyny dobry terminal to TeraTerm polecam. Pozdro
Zgadza się, w przypadku pesymistycznym mogę generować średnio dwa razy więcej danych (gdy wszystkie bajty danych + bajty w sumie kontrolnej są równe symbolom SOF,EOF lub CE), w przypadku średnim dla strumienia losowego zyskując średnio 3 bajty na każde 256. Jednak protokół ten spełniał moje wymagania...
Witam, Staram się wysyłać dane z mikroprocesora do programu na komputerze ale pojawia się problem, bo dane z mikroprocesora są wrzucane do jakby bufora i przychodzą, że sporym opóźnieniem. Problem ten nie występuje gdy sprawdzam odbieram wysyłane dane przez program Terminal do komunikacji z portem...
Nie rozumiem? W statusie transmisji nie masz żadnego ID, który mówiłby o tym do której transmisji jest ten status. Jak chcesz rozróżniać ID statusu? Zresztą funkcja wysyłająca będzie miała dostęp do indeksu aktualnie wysyłanej wiadomości i będzie ją ponawiała, aż wyczerpie liczbę prób po czym ustawi...
Temat był już poruszany ale zmuszony jestem go odświeżyć ze względu na USART w trybie SmartCard. Kod inicjalizacji DMA Celem jest wysłanie 5 bajtów i złapanie w przerwaniu USART Transfer Complete momentu wysłania ostatniego piątego bajtu - już po wysłaniu go z wewnętrznego Shift Reg Uzyskuję...
Posiadam program na 300 w którym wysyłana jest przez blok Tsend komenda np zrób zdjęcie z szybkościa wyzwalania ( 5hz) po czym odbierane są dane tego zdjęcia .Pisząc analogiczny program na 1200 sytuacja jest taka ze z szybkością wysyłania 5hz nadpisuje mi dane, przesuwają się taka jakby nie zdarzył odebrać...
Witam ostatniego czasu podlaczylem pod Serial1 (w Arduino Mega ) SIM800l. Gdy wysylam komende np AT do SIM800l otrzymuje dziwne informacje m.in ATAT OK. Dodam ze podlaczylem bezposrednio konwerter uart z Mega i informacje sa wysylane poprawnie czyli na otrzymuje jedno AT. Podlaczylem rowniez SIM 800...
To znowu ja... staram się teraz zrobić 2 bufory: nadawczy i odbiorczy - nadawanie i odbiór w przerwaniu. Jeśli ktoś ma opanowany ten sposób transmisji to proszę o sugestie i porady. Kod mojego programu zamieszczam niżej. Niestety nie działa tak jakbym chciał - nie wiem jak zainicjiować nadawanie. Gdy...
rav.k czy ty wiesz dokładnie o czym piszesz? Nie zmuszam kolegi do stosowania dwóch linii ale stosuje się je i tak bo żadko kto instaluje dwa kable a większość kabli jest oferowana minimum 2*2 więc jest możliwość użycia takiego rodzaju transmisji. Może czasami na krótkie odległości niektórzy stosują...
Kolego, najczęściej to urzadzenia zewnetrzne uszkadzaja procka a nie odwrotnie. Procek jest elementem bardzo niezawodnym jak mu tylko zabezpieczysz dobre stabilne i bez zakłóceń zasilanie. Ale jeśli chcesz dać pomiędzy procek a urządzenie układ pośredniczący to musisz sprecyzować wymagania. Czy...
Musi być jeszcze jakiś protokół (sprzetowy, albo programowy), przy pomocy którego uC zasygnalizuje PC, ze nie może odebrać danych... Jak nie ma, to PC wypchnie na RS wszystko co ma... To akurat niczemu nie zaszkodzi.Kiedys byl stosowany protokol sprzetowy,obecnie stosuje sie tylko zwykla asynchroniczna...
podstawowa konfiguracja to ustawienie poprawnej komunikacji rejestratora z centralą tzn prędkość transmisji parzystość itd. najlepiej sprawdź jak masz ustawione w rejestratorze i to samo ustaw w centrali . Rozmowy już powinny ci zchodzić z centrali reszto to już kwestia obsługi programu.
torszke bedzie to niezamierzona reklama - - budujesz taki czytnik - wybierasz format transmisji i np przez port szeregowy - odbierasz dane w teminalu (np term95 we w98 - albo terminal w Norotnie Commandera - albo cokolwiek innego) albo programujesz dowolnego procka - w zleżności od preferencji i mozliwości...
Sleep to sztuczne opóźnienie w programie (zawiesza działanie). np Sleep(100) daje 100ms opóźnienia. Przydaje się to często przy transmisji z różnymi urządzeniami. Ja ostatnio używałem tego, aby nie zapchać sterownika- urządzenia czyli jak wyślę mu naraz masę poleceń to potrafi się zagubić, bo nie nadąży...
Postanowiłem liczbę typu float rozbić na 4 bajty stosując rzutowanie na wskaźnik char. A następnie przesyłać bajt po bajcie do PC jednak mam problemy, ze złożeniem tego na PC bo ostatecznie odbieram inną liczbę niż wysyłam.Kody programów zamieszczam poniżej: #include <avr\io.h> unsigned...
Witam. korzystam z Uarta Atmega16.. wysylam instrukcje przez funkcje void wyslij_rozkaz(char * text) { while(*text) { UDR=*text; text++; loop_until_bit_is_set(UCSRA, UDRE); UCSRA|=_BV(UDRE); } UDR=0x00; } ...
No a jaką chcesz mieć prędkość transmisji i jaką częstotliwość taktowania procesora? Policz sobie ile trwa 1 bit w transmisji i zobacz jak się ma do takich 4 (chyba, trzeba by sprawdzić) taktów zegara, bo tyle zajmuje wejście do przerwania. Myślę, że Bascom dużo do tego nie dodaje. Proca pewnie puszczasz...
Ale w programie BillingMAN jest błąd. Samo ściągnięcie rozmów nie kasuje licznika. Trzeba w opcji "Narzędzia" zaznaczyć "Zerowanie wyświetlacza" Niestety opcja ta wyłącza sie po zakończeniu transmisji. Trzeba o tym pamiętać przy nastepnym ściąganiu
Input rzeczywiście nie zawiśnie nigdy w takiej sytuacji ponieważ wołanie takiego przerwania odbywa się po wystąpieniu chr(13) w buforze sprzętowym UART'a - tak więc zawsze będzie miał co odczytać z tego bufora - zakładając oczywiście jego poprawną konfigurację o czym pisał kolega wyżej. Ja jednak...
Skoro Ci się coś dzieje dziwnego pod linuxem, to podaj zrzut dmesg po tym jak Ci się terminal powiesi w trakcie transmisji. Druga sprawa to zakończenia linii, na linuksie standard to <LF> natomiast w win to <CR><LF>. Co do samej przejściówki to sam od lat korzystam z rozwiązań opartych...
W taki sposób, że zaraz po zakończeniu nadawania właściwej zmiennej, z powrotem startuje nadawanie znaków NULL. Tak więc moje rozwiązanie "wyłuskuje" wszystko z pomiędzy tych pustych znaków ;) [EDIT] A jednak mój sposób zawiódł. Nie tyle że nie działa, co po prostu przerwania od bufora są zbyt...
Właśnie mam już opracowany program pod Windows komunikujący się z modułami. Wykorzystałem następującą konstrukcję ramek: Każde 8 bit jest jakby jednym znakiem RS-232. Ramka ma stałą długość, więc mam nadzieję, że nie będzie potrzeby wprowadzania dodatkowych znaków typu '\n', czy '\r'. Nie wiem,...
No to zobacz tutaj: Co warto by zmienić - metodę Clear, po grzyba czyścić tak te textboxy ? Jak zastosujesz się do porady nr 1 z postu podlinkowanego to możesz to zrobić w pętli. Można to też zrobić inaczej bardzo elegancko, ale wymaga to trochę gimnastyki, opis znajduje się tutaj: . Jest tam...
[syntax=c] #include <windows.h> #include <stdio.h> #include <stdlib.h> int main(int argc, char** argv) { HANDLE hCom; //uchwyt portu DCB dcb; //konfiguracja portu BOOL fSuccess; //flaga pomocnicza BYTE RS_buf; //bufor danej ...
Niemożność zmiany rozmiaru tego mizernego bufora to rzeczywiście fatalna wiadomość. Napiszę w czym jest rzecz ale prawdopodobnie nie jest to wina tego ubogiego bufora ponieważ myślałem, że wynosi on 8 bajtów a nie 1 bajt. Posiadam konwerter uart-ethernet, który podłączyłem do ATmega8A (wykorzystuję...
Najprościej na stałe do masy, wtedy wszystkie bramki będą cały czas aktywne. Zwróć uwagę w jakich kierunkach pracują linie w transmisji SPI. Rezystory 180ohm to zawsze dodatkowe zabezpieczenie choć do poprawnej pracy nie są wymagane.
Urządzenie "gada" w HEXACH bez znaków końca linii. To ciekawe jakim cudem wysyła zero :?: Napisałbyś coś więcej o tej transmisji, jak i co wysyła Twoje urządzenie, bo tak w ciemno, to sobie możemy co najwyżej w nosie podłubać ... :D
Witam, posiadam internet w sieci UPC o prędkości 120mb/s który jest podłączony kablem do mojego komputera, jako tako z internetem nie mam żadnych większych problemów lecz ostatnio daje się we znaki problem z buforem. Chodzi tutaj o youtube'a oraz o transmisje na żywo, z portali typu twitch jak...
Jaka prędkość transmisji? Jeśli transmisja jednokierunkowa to dzielniki rezystorowe nie wystarczą?
Zwróć uwagę, że w F4 każdy kanał DMA ma 2 rejestry adresowe - można więc wykonać transmisję bez jakichkolwiek przerw, obsługując kolejne przerwania od kawałków danych w czasie transmisji. Mamy też przerwanie od połowy transmisji - możliwości przyspieszenia i zrównoleglenia jest naprawdę sporo.
7407 ma wejście TTL więc jednak trochę obciąża magistralę. Bez ingerencji elektrycznej w linię raczej będzie trudno. To może wyjaśnię, że chodzi o wystawienie na diody LED wszystkich stanów linii portu [url=]Expansion Port (Commodore 64). Mam nadzieję, że użycie 74HC540/541 nie wprowadzi bałaganu...
W celu upewnienia się że to nie wina sprzętu przerzuciłem sam kod obsługi UARTA na sterownik gdzie mam ATMega328P. Jednak efekt jest wciąż ten sam, po uruchomieniu transmisji w terminalu widoczne są napisy wysyłane przed pętlą while a gdy tylko wyślę np. znak ascii 65, dostaję komunikat o przepełnieniu...
Wątpię by dożył tego że go nadpisze. W kodzie jest Wait 1 więc to licznik sekund. Na szesnastoznakowym zmieści 9999999999999999s a to podzielone przez 3600 dla każdej godziny i 24 dla każdej doby daje 115 740 740 740,7407 dni :D Program jest kiepsko napisany. (at)grafii1 Może uC reaguje na...
w jakim celu przewidujesz mozliwosc negowania sygnalu? bo rozumiem, ze nie negujesz tresci (danych) tylko calosc, lacznie z bitami start/stop. moznaby jeszcze probowac taki trick: wpinasz bufor negowany i nie-negowany (trojstanowe) przed wejsciem UART i podpinasz je rowniez do intX. sygnal bramkujacy...
Jeżeli mogabym wtrącić się do dyskusji, to chciałabym zwrócić uwagę koledze KEN, aby zmienił algorytm w programie. Jak dobrze zrozumiałam, w obsłudze przerwania odbierane są całe pakiety (jako odpowiedzi na pytanie). Poprawan obsługa transmisji szeregowej powinna polegać na odbiorze jednego znaku i umieszczeniu...
Proponuję wyciągnąć procesor z podstawki i w miejsce lini RXD i TXD wstawić zworę(zewrzeć ze sobą). W ten sposób jak naciśniemy coś w terminalu to będziemy mieli echo tego co wyszło. Jeżeli i to niezadziałao to wtedy można sprawdzić czy aby napewno na MAX'ie jest prawidłowe 5V i czy dobrze podłączone...
Raczej zapomnij o pomiarze 10s. Osyl ma zapewne jakiś bufor (pewnie kilka kB) i tyle próbek wysyła, więc będzie to bardzo szybko. BTW to nie pisz dwóch postów jeden pod drugim.
Podaję przykładowy algorytm sprawdzania CRC po odczycie z DS1820. Kod zapisany jest w C ale myślę, że nie powinno być problemu z konwersją na bascoma. // kody rozkazów dla DS1820 #define SKIP_ROM 0xCC #define READ_SCRATCHPAD 0xBE unsigned char ds_bufor[9]; // bufor odczytu...
To ja może na początek dodam, że moja wiedza na temat propagacji sygnału radiowego jest znikoma. Co rozumiesz przez "anteny wew spólnej orientacji" ?? Tzn, że sa równolegle do siebie ... mówiąc po polsku :) Technicznie w aplikacji jest napisane BER=10-3 (jak się nie mylę), tylko nie...
Witam! Mam dokładnie taki sam problem jak kolega 12345adrian . Jakie jest wyjście z tej opresji? Pozdrawiam, Łukasz. P.S. Jak bedzie trzeba to podam kod żródłowy :D Dodano po 3 Oto kod źródłowy: .include "m128def.inc" ;wektory przerwan .org $0000 jmp reset ...
Witam! Na poczatku troche ogolnikowo, bo moze problem jest dla kogos oczywisty, a ja po prostu pominalem jakas kwestie. Wykorzystuje mikrokontroler jako uklad 'odbijajacy' znak, ktory odbierze, czyli zrobilem popularne 'echo'. Lacze sie oczywiscie przez COM`a. Odrazu mowie, ze korzystajac z hyperterminala...
????? To znaczy jak? Sorki, ale nie jestem zbyt doświadczony i dopiero teraz zaczynam widzieć na co sie porwałem. Choć wydaje mi się, że daleko doszedłem a właściwie to juzż jestem przy końcu (tak mi sie wydaje) ... SIGNAL (SIG_UART_RECV) { tablica Przykład jest dobry , ale ... . Należy...
a może warto rozproszyć zasilanie i rozłożyć bufory po obiekcie ... w miarę możliwości ... żeby skrócić przewody zasilające, jak chcesz puścić wszystko z 12V DC ...
Ja aktualnie też się bawie UART-em w ATtiny 2313. Schemat kabla masz identyczny jak u mnie. Wysyłam dane 8 bitowe z 1 bitem stopu i bez bitu parzystości przy predkości 9600 na kwarcu zewnetrznym 8 MHz- czyli taka konfiguracja jaka jest przy odpalaniu terminala. Układ wysyła mi cały czas znak AAAAAAAAAAAAAA...
Dlaczego tego w pętle nie dałeś, choć by for next. Wtedy cały listing zajmował by 5 linijek, no może 10 a nie taki tasiemiec Na dokładkę , to kol. raven000 chyba zapomniał ,że eepromy buforują dane do zapisu i trzeba kontrolować adres , żeby się bufor nie "przekręcił" ;) Ta procedurka , raczej...
The getchar function reads a single character from the input stream using the _getkey function. The character read is then passed to the putchar function to be echoed. (...) The scanf function reads data using the getchar routine. Tyle jesli chodzi o opis z dokumentacji. Wynika z niej, ze echa...
Charakterystyczną właściwością bufora cyklicznego (kolejki FIFO) jest to, że wskaźniki początku i końca (odczytu i zapełniania) przemieszczają się niezależnie - każdy w swoim tempie. Stąd w Twoim programie indeksy powinny być niezależnymi zmiennymi globalnymi/statycznymi. Przypisanie liczniku=usartbufferlicznik...
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...
Czy interesuje cię gotowa biblioteka w TP (i nie tylko). Firma Moxa dołączała to kiedyś do swoich kart RS. Mam gdzieś gotowy sterownik pod Dos-a, obsługa coma jest banalna (sam podpina się pod przerwania, tworzy bufor, można założyć pułapkę na określony znak lub liczbę odczytanych danych,...full wypas)....
Tak jest to całkowicie normalne połączenie... Rzadko kiedy używa się pozostałych linii... Komputer wie, że coś jest w buforze odbiorczym... Generowane jest też przerwanie... Z tą ramką to trochę nie tak... Standardowa ramka dla rs232 ma 8-bit... max to 9... Natomiast pewnie chodzi o pakiet czyli...
Wystarczy spojrzeć na schemat radia i wszystko będzie jasne, jeśli w radiu nie ma bufora pomiędzy procesorem a gniazdem to masz po procku, to chyba jasne, ta szyna nie jest idiotoodporna. A tego radia było przynajmniej 4-5 wersji na róznych procesorach. bodaj schematy dwóch wersji są na Elektrodzie. SławeK
Fajnie by było gdy byś przykładowo napisał co takiego przesyłasz.........jakie dane?? Mógłbym to przy okazji sprawdzić u siebie. A tak przy okazji z kodu wynika że pomimo tego czy jakiś znak jest czy nie w buforze to co 500ms "czyści" Ci sie wyświetlacz, spróbuj zamiast inkey() użyć waitkay(). Bo waitkay()...
Myślałem nad tym ale ...... Instrukcja CONFIG SERIALIN Przeznaczenie: Konfiguruje sprzętowy układ UART by używał bufora wejściowego. (c) Zbigniew Gibek, 2002-2005 (c) MCS Electronics, 1999-2005 Jest procedura , która pozwoli mi na dowolny pin wysłać dane w standardzie uart ? Żeby sprzętowy...
Czy wysyłając znak z PC'ta wysyłasz jeden bajt i czekasz czy wysyłasz cały ciąg? Jeżeli wysyłasz szybko więcej znaków to bufor uC (a tam nie ma FIFO) zostanie przepełniony. Sprawdź flagę UCSRA DOR - Data OverRun. Pozdrawiam PS Korzystniej byłoby obsługiwać przychodzące znaki w przerwaniu i pisać...
- Bez bufora , kiedy przy odbiorze bajtu jest on z miejsca przetwarzany i przesłany przez spi działa - wszystko super sprawnie do pewnego czasu . Po ktorejs "paczce " danych gdzies jest wyciek ( prawdopodobnie zbyt szybka transmisja i bezpośrednie przetwarzanie ) i gubie bajty czego efektem jest katastrofa...
sek w tym ze nie do konca wiem gdzie leży problem bo zaprojektowany sterownik działa dobrze ze starszym sterownikiem a po podłączeniu sterownika GLP zaczynają sie problemy i dlatego pytam czy sterownik moze wysyłać co kilka paczek "pusta paczke" cos w stylu resetu bufora czy jest to ewidentne uszkodzeniu...
Wiesz co? - ktoś ci odpowiada na pytanie, wskazuje ci oczywisty błąd, a ty z uporem maniaka twierdzisz dalej to samo: Rozumiem że jest błędna ale wg mnie powinna działać chociaż jest z lekka prymitywna.Stworzyłam ją bardziej do testowania . Zamiast wymyślać nowe teorie , zajrzyj kolego chociażby...
No trochę nie po polsku napisałem. Już poprawiłem post. No to mało widziałeś skoro takiego nie widziałeś. Przecież za 5,6,7,8,9,10-cio bitowe, więc i 16 czy 32 bitowy też się znajdzie. Oczywiście nie mówię że są popularne. A do tego ja napisałem wyraźnie że taki przesył jest realizowany programowo....
Nie pisałem nic na Rs485 ale mam kilka uwag do programu. Zacznij najpierw od poczytania w helpie bascoma, co robi dokładnie instrukcja Inkey() a dowiesz się że odbiera 1 bajt (jeden znak) z bufora. Sprawdzanie więc warunku B = "zaswiec" nie ma najmniejszego sensu. Nie wiem też po co przełączasz tyle...
Jesli ramka ma max 20 bajtow to zadeklarowac pole o tej dlugosci, w przerwaniu odbierac kolejne bajty i je zapisywac. Dodatkowo jeden bajt jako flaga, ze cala ramka zostala odebrana (w przerwaniu trzeba porownac odebrana informacje o dlugosci ramki z iloscia faktycznie odebranych bajtow). Ta flaga w...
D+,D- sa jako para roznicowa, zeby elimiminowac nakladajace sie zaklocenia. Wykorzystanie tylko jednej linii jest w pewnych sytuacjach OK. Jesli masz mozliwosc dodania konwertera to tym lepiej, tylko czy warto komplikowac? Chociaz jesli nie mozesz bezposrednio podlaczyc do USB ze wzgledu na zasilanie...
Nie znam procesora ktorego uzywasz ale mam podejrzenie, ze procesor posiada jednobajtowy bufor sprzetowy i sygnalizuje wyslanie bajtu natychmiast po wpisaniu go do tegoz bufora mimo, ze dopiero "zabiera sie do roboty". Moja rada to: przed resetem odczekaj czas potrzebny do wyslania 1 bajta (pamietaj,...
Najprościej uodpornić przesył danych można zwiększając prąd płynący w skrętce dając rezystory do masy na wejściu odbiornika i ewentualnie jakiś bufor wysoko-prądowy (np. 74AC245) na wyjściu.
Wszystko powinno poginac na buforach kolowych , powinien istniec regularny parser tego co przylazi ok, bufor cykliczny wydaje sie byc ciekawszym rozwiazaniem :) Zrobie dwa wskazniki jeden do odczytu drugi do zapisu. * Wskaznik do zapisu pokazuje nam gdzie zapisac kolejny znak, po czym jest...
jak wspomniał TMF z pull'up'ami będzie to działać (mogą być te w wbudowane w uC). Przez długie czasy narostu przy małych pull-up'ach prędkości mogą nie być rewelacyjne. Ja tam zawsze wole kupić jakiegoś 74hc (bufor 3-stanowy, multiplekser). Koszt śmieszny, lutowania mniej. Pozdrawiam Za pomocą...
1. zadziała 2. ftdi ma wewnętrzny bufor, minimalne opóźnienie zawsze będzie.
Witam, Mam problem z procesorem ATMega8 oraz transmisja uart. Skopiowałem z datasheet'a kod pozwalający wysyłać dane za pomocą rs232. ... Kod jest banalnie prosty. Tak, że prościej się chyba nie da. Problem polega na tym, że już na poziomie AVRStudio przy debugowaniu "zawiesza" się w pętli...
Odmierzanie czasu 1,5 znaku (max przerwa między znakami wewnątrz ramki) i 3,5 znaku (minimalna przerwa między ramkami) musi działać niezależnie od obciążenia Slave. Czytaj: przerwania, lub sprzętowy timer, lub jedno i drugie. Slave zawsze musi wiedzieć, co się dzieje na magistrali - kiedy jest początek...
Witam! Zbudowałem pewien sterownik na mikroprocesorze Atmega8. Sterownik ten obsługuje mostek H, sterowanie odbywa się przez podczerwień i pilota RC5. Zaprojektowałem go w ten sposób, żeby w przyszłości móc wykorzystać UART ( dodałem złącze na PCB do wolnych pinów uC ). Teraz przychodzi potrzeba...
SPI może nie chcieć działać gdy niczego nie odczytujesz, bo ma zapełnione bufory. Nie wiem też czy włączyłeś w NVIC przerwanie od DMA. Posprawdzaj flagi dla SPI i dla DMA - jeśli zapalony jest jakiś błąd, to spróbuj go wyeliminować. 4\/3!!