1% błąd to żaden problem dla USART więc powinno działać.
witam nie znam ATmega i biblioteki, która obsługuje RS (bawię się PIC i ASM) ale wygląda mi to na nie dobraną prędkość transmisji procek "gada" wolniej niż terminal -wysyłaj z procka cały czas 68 (44hex) i zmieniając prędkość w terminalu sprawdź czy otrzymasz D -lub doczytaj dokładnie o ustawianiu prędkości, bitach kontrolnych i stopu w bibliotece do...
Do rozwiązywania takich problemów najlepiej kupić za ok 35 zł analizator stanów logicznych kompatybilny z Saleale (dostępnej w tej cenie na znanym portalu aukcyjnym) . Wtedy można podejrzeć komunikację za pomocą komputera. Oprogramowanie analizatora jest w stanie interpretować wysyłane znaki, o ile wskażemy mu prędkość transmisji.
można gonić nawet z większymi prędkościami. W pdfie masz tabelke z prędkościami UARTA, kwarcem i odpowiednią wartością UBRR - dobierz wedle uznania.
thorin00 :idea: -> dokładnie tak jak piszesz - Osamu Tamura dokładnie to opisał, że dla ATtiny45 maksymalne prędkości transferu RS232 to 4800 i ani "grosza" więcej. Aby uzyskać większe prędkości trzeba zbudować taką przejściówkę na ATmega8 lub ATmega48/88 itp ... napisał również z czym to się wiąże. Otóż w tym malutkim procku ATtiny45 nie ma sprzętowego...
Dla 1 MHz przy pojedynczej prędkości 9600 bodów to za dużo.
W STMach jest jeszcze "systick", tylko nie wiem czy w Arduino da się pod niego podłączyć. Zazwyczaj jest to przerwanie wyzwalane co 1ms i bardzo wygodne do pchania tam rzeczy które nie muszą lub nie powinny się wykonywać z prędkością 70MHz. (at)margas60 używałeś wcześniej RS232 (portu szeregowego) do łączenia się z mikrokontrolerami?
Czy prędkości transmisji oraz jej rodzaj nie powinny być takie same po obydwu stronach kabla ? Czyli w PC i Atmega ?
Zgaduję że zbudowałeś [url=http://diy.elektroda.eu/konwerter-u... rs232 na attiny2313 Obsługuje on tylko prędkości 2400, 9600, oraz 38400. Atmega Fusebit Doctor "nadaje" na 4800 - więc niestety nic z tego.
Skoro procek hasa ci jak mówisz na 1MHz to spójrz sobie łaskawie na ostatnią stronę rozdziału USART noty PDF swojego albo dowolnego procka AVR. Tam gdzie masz tabelki z częstotliwościami taktowania i błędami dla poszczególnych prędkości RS232. I spójrz sobie na pierwszą tabelę z brzegu dla 1MHz właśnie bo ona cię interesuje oraz na prędkość 9600 którą...
Jeśli, Atmegi zasilane są osobnych źródeł zasilania to obie masy połączyć, tak? Tak. Jeśli chodzi o prędkość to wydaje mi się że obydwa uc powinny być taktowane takim samym zegarem a z prędkością nie należy przesadzać.
W drugiej fazie blokujesz programowanie szeregowe i wtedy ratuje Cię tylko programator równoległy. Z tego co wyczytałem z kartach katalogowych, to w procesorach ATmega nie ma możliwości zablokowania programowania szeregowego przez SPI. Notes: 1. The SPIEN Fuse is not accessible in Serial Programming mode.
Uważam że coś pomiedzy powinnieneś wstawić - inaczej ciągle będziesz walczył z niepownym działaniem całości (szczególnie jak to komercyjny projekt). Drugie wyjście to napisanie soft-UART-u dla tego wolniejszego - myśle że atmega powinna się wyrobić
Oled w niektórych bibliotekach ma bufor RAM 1k, a to cały RAM w Atmega8 i nawet jeśli nie jest cały buforowany to raczej tu bym szukał przyczyny w dziwnym zachowaniu uC. Ciężko byłoby rozjechać synchronizację dla prędkości 9600, a ewentualne błędy dla 8 i 16MHz są takie same i wzajemnie się znoszą, choć oczywiście lepiej mieć kwarc zewnętrzny. Spróbuj...
Właśnie miałem podobne zjawisko w Atmega162. Okazało się że preskaler zegara CLKPR jest fabrycznie ustawiony na max (dzielił przez 8 ). A i tak jakieś dziwne się cuda dzieją, Atmega na zapytanie z 9600 odpowiada prawidłowo....ale już z jakąś dziwną prędkością :(. No nic szukam dalej.
Masz błąd w funkcji usart_init(). Brakuje Ci ustawień starszegi bajtu danych UBBRH oraz jednej najważnejszej rzeczy nie ustawiłeś ramki danych tzn bitów stopu, kontroli parzystości oraz wielkości ramki :) Funkcja usart_init() powinna wyglądać mniejwięcej tak: void USART_Init() { /* Ustawianie prędkości*/ UBRRH = (unsigned char)(UART_CONST...
Źle powiedziałem. Jest tak samo, jakbym wygrywał coś na niepodlaczoną płytkę. Czy ten twój adaptor Rs232 to może jest zbydowany na chiśkm tanim klonie FTDI (?), taki jak niżej na fot: https://obrazki.elektroda.pl/9190307700_... Jeżeli tak (!), to takie zachowanie jest zupełnie normalne z automatycznie instalowanym do nich driverem......
Dzięki za pomoc i za zainteresowanie kolegi. Sys XP, napisałem programik z Visual Basic-u, przedstawia on pulpit z przeciskami. Nie wiem jak mogę skonfigurować RS232 w tym programie. Mam namyśli jak nacisnę np. przycisk D-1 to na porcie RS232 zostanie wysłany komunikat z prędkością 9600Kb/s . Odbiorę to za pomocą uC Atmega16-8 jeśli ktoś będzie mi chciał...
mam podobny problem z RS232. W skrypcie mam prędkość 9600 , kwarc 8MHz. A na HT jak ustawie prędkośc 1200 to dopiero odbieram dane prawidłow. Na terminalu w Bascom jest wszystko OK. Procek mój to Atmega 8535.
. Czy to wina ze nie mam podpietego zewnetrznego kwarcu ? Tak ale o odpowiedniej częstotliwości. Datasheet dla twojego procka zawiera tabelkę błędów z jakimi komunikujesz się po usart dla różnych prędkości zależnie od częstotliwości procka. Jednym z magicznych kwarców jest np 11.0592 który pozwoli tobie na pracę aż po 115200 z bodajże zerowym błędem...
Compiler ---> zamiast w ciemno zmieniać kwarc na szybszy (a nie o to tutaj chodzi) poczytaj sobie dokładnie notę aplikacyjną PDF do procka, którego używasz. Zresztą w każdej nocie ATMELA do procka, który posiada UART - są fajne tabelki. Aby uzyskiwać poprawne transmisje dla większych prędkości i nie tylko warto stosować tzw "kwarce przyjazne dla RS232"...
Zestawiłem układ testowy składający się z Atmegi8A z zewnętrznym osc. 8Mhz i drugi układ z ATtiny 2313 i zewnętrzny osc. 4MHz. Oba układy połączone RS232 z prędkością 9600. Odpowiednie programy załadowane do obu uC. ATmega wysyła po RS co sekundę wartość licznika. ATtiny odbiera ta wartość i zapala wyświetlacz 7 segmentowy (tylko wizualizacja odbioru...
Maksymalny pakiet danych, [bajtów: 1 920] przynajmniej takiej wielkości tworzy mi plik txt na komputerze gdy z terminala kopiuje raport. Myślałem nad atmega lun ftdi , ale to za wysokie progi na moje amatorskie nogi by od zera coś wynaleźć ;-)
Zaczynasz nie z tej strony. Najpierw wyznacz sobie zakladana predkosc transmisji np 115 kb a potem zrob stosowny wpis w rejestrze UBRR ATMega. Potem ustaw w terminalu takie same parametry transmisji i juz :-)
Dane z RS odczytuję za pomocą terminala BASCOMA, lub za pomocą programu COM TEST. W obu przypadkach jest to samo... właśnie zrobiłem coś, zmniejszyłem prędkość do 4800 i działa, potem zwiększyłem do 19200 i też działa, a potem zwiększyłem do 38400 i też działa. Na tych prędkościach działa bez zarzutu, czyżby kwarce w przejściówce i atmedze nie współgrały...
Kilka prostych zasad: 1.Dobierasz maksymalnie wolny kwarc, który wystarczy, żeby procesor wykonał swoje zadanie. (wolny kwarc - bo czym wolniej tym mniejszy pobór prądu i mniejsza podatność na zakłócenia) 2.Jeżeli niektóre urządzenia (np. USART do realizacji RS232) wymagają odpowiedniej prędkości kwarcu dla odpowiedniej prędkości transmisji to bierzesz...
jęśli nie potrzeba Tobie duzych prędkości to polecam banalnie proste w Bascomie(USART-RS232) nic nie mieszasz w modułach podajesz zasilanie i działa:) TX-4MSIL - stosunkowo mały zasięg nie nadaje sie do transmisji wyłacznie do sterowania wł/wy (zasieg umnie w domu od 2m-10m) w ogrodzie bez przeszkód wiecej niz 70m- bo tylko tak maly mam ogród przed...
Witam. Siedzę już drugi wieczór nad tym tematem. Komunikuję się z modułem GSM SIM800L po sprzętowym RS232. Moduł gada tylko przy prędkości 115200 - nawet specjalnie nabyłem kwarc 11.0592MHz żeby wyeliminować błędy transmisji. W czym mam problem: Atmega czyta pierwszą transmisję o gotowości z gsm'a, wszystko ok. po wysłaniu komendy AT moduł odpowiada:...
Ostatnio testowałem komunikację 2x atmega (odbiór i nadawanie 6 zmiennych word) przy prędkościach 57600 na odległości 100m (kabel utp), wszystko śmigała bez problemu na zwykłym uart jak i rs232 . Osobiście zainstalowałem rs485 ale to z powodu że kabel jest "ruchomy" więc będzie możliwość zakłóceń. tomek_602 co do " służy do połączenia ze sobą tylko...
Witam Odbieram pakiet danych (dokładnie 11 bajtów) przez sprzętowy RS232 z prędkością 38400 (uP ATMEGA 128L kwarc-8MHz) w Bascomie: Config Serialin = Buffered , Size = 7 . . . Odb = Ischarwaiting() If Odb <> 0 Then For L = 1 To 6 Y(L) = Inkey() Waitms 7 Next L Y(1) = Asc(y(1)) Y(2) = Asc(y(2)) Y(3) = Asc(y(3)) Y(4) = Asc(y(4)) Y(5) = Asc(y(5))...
w tej chwili to programuje troszke po omacku, na podstawie znalezionego w necie kodu. korzystam z ponizszego: #include <avr/io.h> #define CPU_Hz 8000000 // częstotliwość zegara w Hz #define OSC 8 // częstotliwość zegara w MHz #define BAUD 9600 // prędkość transmisji po RS232 #define MYUBRR CPU_Hz/8/BAUD-1 /// **** fukcje dla RS232 **** void UART_init(unsigned...
Witam ponownie. Doszedłem do następujących rzeczy: 1) jeśli ustawę prędkość transmisji BAUD na 9600 to Realterm poprawnie odbiera znaki dla zaznaczonej prędkości trans 1200 2) jeśli ustawę prędkość transmisji BAUD na 1200 to Realterm poprawnie odbiera znaki dla zaznaczonej prędkości trans 150 9600:1200=8 1200:150=8 Prędkość transmisji w terminalu musi...
To może się okazać bardziej skomplikowane, niż się wydaje. Wszystko zależy od tego, jaki jest algorytm wyświetlania w tym częstościomierzu. W każdym razie, w najprostszym przypadku można próbować coś w tym rodzaju: 1. utworzyć tablicę na 7 cyfr wyświetlacza. 2. ustawić timer na generowanie przerwań z prędkością > 100 razy na sekundę. Lepiej nawet rzędu...
Ja posiadam kwarc 11.059 z słyszałem że zastosowanie takieog powoduje że będy w trancmisji są 0.00% To nie jest prawda !!! Błędy w transmisji będą (prawie) zawsze !!! Po prostu, dla konkretnych prędkości transmisji dobiera sie optymalne czestotliwości kwarców. Dla BAUD = 19200 jest to właśnie ten kwarc 11 z kawałkiem. Tu jest link do programu który...
Problem w tym że wszystkie książki rozpisują się dość obszernie na temat komunikacji przez RS, ja mam małe wymagania chce nawiązać komunikacje i zczytywać stany rejestrów (na początek) a do tego potrzebuje zdaje się bibliotek UART i odpowiednio skonfigurowanego prorgamu - określenia rodzaju i prędkości transmisji itp dlatego potrzebuje gotowego porstego...
Witam Dalej nic z tego nie wyszło. Próbowałem na wewnętrznym oscylatorze z rożnymi prędkościami i różnym baud. Ustawiałem flagę Osccal na 0 następnie zwiększałem o jeden i sprawdzałem kiedy na terminalu nie będzie krzaczków jednak nigdy nie wyświetliło żadnego normalnego tekstu. Ciągle znaczki. Na koniec próbowałem ustawić fusebity takie jak zaproponował...
Wielokrotnie była o tym mowa - w ATMega generator RC nie ma wystarczającej stabilności, aby bez dodatkowych procedur kalibracyjnych wykorzystać go do transmisji UART. Oczywiście może to działać, ale zapewne efekt będzie taki, że raz działać będzie, a raz nie. Gdzie się takich bzdur naczytałeś Tomku po wpisaniu w odpowiedni rejestr wartości kalibracji...
Po pierwsze, nie wiadomo, co kryje się pod pojęciem "sterować silnikami". Nie wiadomo, jakie to silniki, czy trzeba sterować prędkością i kierunkiem itp. Za to z góry postanowiłeś, że musi to byś ATmega, niezależnie od tego, czy się do tego zastosowania nadaje. Ciekawe podejście do projektowania...
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 sporo szybsza i działa rewelacyjnie. Deklarujemy przerwania...
Witam ponownie !!! Jeszcze jedna mała nie ścisłość: void USART_Init( unsigned int baud ) { UBRR1H = (unsigned char) (baud>>8); //ustawienie prędkości UBRR1L = (unsigned char) baud; UCSR1B = (1<<RXEN) | (1<<TXEN); //włączenie nadawania iodbierania UCSR1C = (1<<USBS) | (3<<UCSZ0); //format ramki: 8data, 2stop bit } Jest to...
Projekt z Protelu 2.0. - elementy o numeracji 150 to zasilacz i w tym kondensatory filtrujące, - elementy o numeracji 100 to RS232 + wizualna kontrolą transmisji, - elementy o numeracji 200 to RS485, - elementy o numeracji 50 to uC z kwarcem (reset w uC nie jest wymagany i można go pozostawić w powietrzu), - elementy o numeracji poniżej 50 to multiplexery...
Ogólnie mam 3 pytanka. 1. Czy ten kod w komunikacji AVR-PC zwróci mi 'T' czy popełniam jakiś błąd? Przede wszystkim źle napisany kod i tu popełniasz błąd. Poza tym jak chcesz efektywniej działać z modemem to wyłącz sobie echo poleceniem ATE0, bo do niczego ci to nie potrzebne a tylko będzie ci (skoro początkujesz jak widzę z pisaniem w ogóle programów...
to holux 1000B, standardowo przeznaczony do pracy przez BT ale na jego złączu są też dane tyle ze w logice TTL, czyli _wydaje_mi_się_ że można go na wprost podpiąć do atmega. Zresatą jak napisałem, jeśli podepnę PC przez konwerter rs232/ttl i wysyłam mu dane z rożnymi prędkościami to nie zawsze mam echo, lub to co widzę jest przekłamane. W zasadzie...
W Helpie Bascoma masz przykłady jak w podstawowy sposób obsługiwać i RS485 i RS232 więc może zacznij od tego ? Gdybym ja miał Helpa po polsku lub ew. angielsku to byłbym zbawiony... Wiesz może gdzie mozna takowego zdobyć? Może ta ATmega644p to lekki przerost formy nad treścią bo to olbrzymi procek jak na te potrzeby Czy ja wiem czy przerost formy nad...
klops_mops ---> masz dwa wyjścia żeby ci nie mrugały te wyświetlacze w czasie PRINT'a ;) - innymi słowy mówiąc aby procedura wysyłania RS232 nie zakłócała procedury multipleksowania 1. prostszy sposób - zwiększ tą kocią prędkość RS232 na jakąś ludzką - chociaż 9600bps to już praktycznie nie powinno ci mrugać a jak dasz każdą większą to już będzie coraz...
Arduino, Atmega, Pic...Poszukujesz sterownika Pwm ze sterowaniem poprzez RS232 lub RS485 i do USB.Tak na szybko, myślę że jakiś sterownik z Avt pewnie można by zastosować.
tak dla ścisłości - wewnętrzne to są wbudowane ale oscylatory a nie rezonatory, za co "płaci" się pewną małą nidogodnością jaką jest to, że nie generują one tak stabilnej częstotliwości taktowania jak właśnie rezonatory zewnętrzne. Jednak do znakomitej większości szczególnie amatorskich ale i zaawansowanych projektów taka dokładność wewnętrznych oscylatorów...
zobacz ten temat http://www.elektroda.pl/rtvforum/topic65... do komunikacji potrzebny jest Max 232 , do programowania STK200 połączenie które zamieściłeś jest dość ryzykowne , chodź można również tak programować , ale nie możesz równocześnie z tego samego portu bezpośrednio sterować L298 napisz dokładnie do czego to ma służyć i po co aż Atmega...
W UART_Transmit nie ma nic takiego co mogłoby powodować gubienie tych znaków a wygląda tak: Dodano po 10 Właśnie zmniejszyłem częstotliwość przerwania do obsługi klawiatury do ok 30 razy na sekundę i zwiększyłem predkość transmisji do 19200 bps i jest dobrze cały string jest przesyłany w komplecie :) Dzięki bartosz.tarnowski
Witam. Mam problem z połączeniem się z ATmegą 2561. Wcześniej wszystko chodziło dobrze do czasu aż wgrałem poprzez avr studio program do obsługi USART0. Użyłem do tego programatora USBisp z wgranym STK500v2. Nie ustawiałem żadnych Fusebitów (domyślne AVR Studio). Teraz nie mogę się połączyć z nim w żaden sposób. Próbowałem również przez ISPProg i STK200....
To co to za proc? Z jakim zegarem? To musi działać nawet na kwarcu 1Mhz(avr) i z prędkością 57,6Kb/s. Jak coś to wrzucaj do pamięci ram mikrokontrolera bo może to transmisja po i2c zwalnia(atmega >=8?) - tylko do testów. Spróbuj jeszcze sprawdzić ten drugi sposób z odliczaniem do dwóch znaków i i przetwarzaniem na żywo(po drugim znaku)
Po wykorzystaniu inputbin za pierwszym razem jest ok, ale za drugim, trzecim i czwartym pojawiają się też krzaki, tylko że tym razem po drugim przesunięciu pojawiają się krzaki w 1 i 2 kwadraciku, za drugim w 3 i 4, a za trzecim najpierw 5 i 6, a potem przesuwają się automatycznie na 7 i 8. Po piątym przejechaniu zaczyna się to od nowa, czyli na początku...
Co do kodowania. Jak to są ważne dane - poufne to jak najbardziej - a jak jakieś 'śmieci' to nie ma sensu. proponuję doczytać co to jest "kodowanie manchester" :D Wracając do tematu: kodowanie manchester bardzo skutecznie uodparnia transmisję danych na wszelkie rozjazdy pomiędzy częstotliwością nadajnika i odbiornika co w przypadku radia jest dość...
w nocie aplikacyjnej ATmega8 masz taką sekcję: "Examples of Baud Rate Setting" tam zobaczysz sobie na jakie prędkości transmisji możesz sobie pozwolić przy danej częstotliwości taktowania procka. Weź jednak pod uwagę pewne rozbieżności jeśli używasz oscylatora a nie kwarca zewn. Jeśli piszesz, że działa ci dobrze na 4800 to zrób tak - najpierw ustaw...
Witam Wystarczyć powinien wskaźnik stanów logicznych. Proponuję ustawić małe prędkości będzie lepiej widać zmiany led. Wysyłać coś z PC (cokolwiek) i zobaczyć czy mamy reakcję na wyprowadzeniu Rx. Jeżeli będą dochodzić pakiety to gdzieś jest niezgodność konfiguracji. Pozdrawiam
Witam Czy ktoś składał YAMPPA3 na ATmega8515,bo ja go właśnie skończyłem i mam problem .Wgralem program testowy D2 błyskała jak w opisie z EP, ale brak komunikacji przez RS232 bo podobno ATmega8515 ma właczony wewnętrzny oscylator 1Mhz i nie zgadzają sie prędkości uarta. A jeszcze zmieniłem ustawienia FUSE i od tego czasu programator Yapp juz nie widzi...
Witam ponownie. Mam mały problem do przeskoczenia i nie mogę sobie z nim poradzić. Krótko: -ATmega32 liczy impulsy z enkodera, po otrzymaniu znaku '?' odpowiada ':' bajt_starszy+'0' bajt_mlodszy+'0' '#' . W terminalu działa pięknie. -ATMega128 uart0 wysyła zapytanie '?' o pozycję enkodera. W terminalu działa. Uart1 ma za zadanie wysłać odebraną wartość...
Prąd pobierany przez mikrokontroler można zmniejszyć poprzez zmniejszenie prędkości zegara rdzenia - "CLKPR – Clock Prescale Register" (strona 35). Dane najlepiej było by zbierać w porcjach po 512B, tyle co sektor karty pamięci. Sam sposób przechowywania danych jest uzależniony od cech próbkowanego sygnału - jeśli wszystkie próbki są niezależne,...
http://obrazki.elektroda.net/1_126476553... Witam :) Prezentowany w tym temacie projekt jest realizacją pewnej idei - elektronicznego długopisu ściągi z wbudowanym wyświetlaczem, pamięcią itp. Długopis powstawał w czasie od września do grudnia 2008. Projektu nie będę rozwijał, niedokończonego kodu nie udostępnię. Kontynuacji nie będzie, ale...
Do obliczenia prędkości obrotowej i rozróżnienia kierunku to wystarczy mi wyjście A i B, a wyjście C mogę zostawić nieużywane? W ogóle to po co mi 3 wejścia w enkoderze skoro do rozpoznania kierunku wystarczy mi wejście A i B? No zapomniałem dodać, że na Atmedzę ma działać jeszcze: - komunikacja po rs232 z PC - czujnik temperatury DS18B20 (1-Wire) -...
Trochę z innej beczki :) Czytając o problemach z konfiguracją tych modułów, znalazłem HM-TR433/TTL - transparentne moduły RS232/RF. Czy stosował je ktoś? Czy naprawdę wygląda to tak ładnie jak w nocie? Bo jeśli tak, to wolę dopłacić i uruchomić układ w 2h, niż kupić taniej a później tydzień zmarnować na uruchamianie. Danych dużo nie będzie, jakieś 4-6B...
32.768kHz to chyba 32768Hz, więc chyba tyle należy wpisać, nie? Skąd te 32768700 się u Was bierze? A te 3.2768 mHz to co to ma być? Ten kwarc może i służy do zrobienia RTC, ale nie radzę ustawiać go jako główne źródło taktowania, bo zablokujesz sobie możliwość programowania przez SPI jak masz jakiś dziwny programator (nie pozwalający na zmniejszenie...
Witam, mam mały problem. Napisałem program mający za zadanie wysyłać przez USART w pętli znak. Wgrałem program podłączyłem wszystko na płytce stykowej przez max232 z portem COM w komputerze, odpaliłem RealTerma. Jednak po włączeniu Atmegi zamiast oczekiwanego znaku zapełniającego konsolę w Realtermie ekran zapełnia się napisem (nul). I nie wiem czy...
Witam Otóż mam taki problem, muszę odbierać dane z Atmegi na komputerze, po RS232 i USB. Do RS-232 mam MAX-232, a do USB mam FT232. Wszystko pięknie chodzi pod konsolą (putty). Problem natomiast pojawia się przy używaniu bibliotek RXTX (których używam do komunikacji), o ile przez COM1 (gdzie mam RS-232) wszystko pięknie chodzi, to na porcie COM3 (gdzie...
Poza tym możesz użyć uarta sprzętowego i programowego to też załatwia sprawę No to wstępnie to jest najlepsze rozwiązanie. Ale ATmega 328PB też zamówię chyba że znajdę we Wrocławiu. No ok, a jak zrobić ten dodatkowy UART w programie? Poszukam na necie, jak byście coś mogli pomóc gdzie tego szukać to był bym wdzięczny. Programowy UART na Uno będzie...
Znalazłem Tylko że muszę użyć układ scalony MAX232 do "pogodzenia" napięć PC i TTL. I to wszytsko ale jak przesyłać dane. Do transmisji danych w ATmega8 musisz użyć USART (Universal Synchronous and Asynchronous serial Receiver and Transmitter) w trybie asynchronicznym. Łączysz pin wyjściowy oznaczony w ATmega8 jako TXD z wejściem RXD w porcie szeregowym...
M8 ładnie przy tej prędkości 19200 śmiga na 4 lub 8MHz generatorze wewnętrznym. Jak nie zmieniałeś Fusebitów to działać nie będzie - oryginalnie taktowana jest 1MHz i błąd transmisji jest za duży.
- Gdzieś wyczytałem że atmega ma wewnętrzny oscylator 3MHz. Zerknąłem na szybko do dokumentacji i rzeczywiście jest tam rezonator RC jednak do konfiguracji zewnętrznego kwarcu trzeba poustawiać fusebity, jeśli była by taka możliwość to chciałbym zrealizować połączenie tylko na wewnętrznym rezonatorze bez używania zewnętrznego kwarcu, nie wiem tylko...
Posiadam czytnik RFID, który ma wyjście TX. W standardzie jakim, 3,3V/5V/RS232 ? Jeśli odebrany kod zgadza się z wpisanym na sztywno to oczekiwanie np. 1 sekundę, jeśli nadal jest ten sam odczyt (transponder nie został zabrany z czytnika) wtedy coś się dzieje (powiedzmy zmiana stanu na którymś pinie). A czy czytnik nie wysyła czasem kodu 1 raz (po...
A i jeszcze jedna rzecz. W ATmega8 mam zewnętrzny kwarc 8MHz. Czy w ATmeg128 muszę też go zastosować dla poprawności transmisji? ja nie wiem w ogóle po co ci ten kwarc w Atmega8 - skoro ona ma tylko obsługiwać transmisję RS232 i LCD + jakieś jeszcze tam drobiazgi. Noo - chyba, że chcesz koniecznie jakieś wyższe prędkości transmisji RS232 np 115200bps...
Dane radiowo zwykle przesyła się w postaci ramek. Każda taka ramka poza właściwą porcją danych zawiera również różne dodatkowe informacje. W przypadku dźwięku musisz strumień danych podzielić na określone porcje. Dodać dodatkowe bajty wymagane przez część radiową, dodać sumę kontrolną, dodać adres odbiorcy, dodać znaczniki czasu pozwalające odtwarzać...
LTC485 daje na wyjściu od 1,5 do 5V, tu jest 2,2V więc by się zgadzało. Można to potwierdzić mierząc napięcie między nóżkami 6 i 7 tego układu, w tym wypadku powinno być to właśnie 2,2V. Ten 7660ACPA (czyli ICL7760) to inwerter/powielacz napięcia, elektrolit przy nim to zapewne 10uF. Atmega pewnie przełącza nadajnik/odbiornik układu 485 (podaje odpowiedni...
Za pomoca isp programmera i paru kabelków wgrywam 4kB w 3 sekundy niecałe wraz z weryfikacją na bieżąco (standardowo jak klikne erase, and program all robi jeszce jedna weryfikacje i to trwa około 6 sekund całość). Procek atmega 128. Więc nie rozumiem kompletnie gdzie skąd te problemy z prędkością. Żeby ładować program przez 2 minuty to sie trzeba nieźle...
bua -> tu nie chodzi o oscylatory które mają częstotliwość nie będącą liczbą całkowitą - tylko o podział na tzw "przyjazne dla RS232" czy nie. Najprościej jak sobie zajrzysz do noty PDF dowolnego AVR'a i na ostatniej stronie działu poświęconego tematyce UART zobaczysz kilka tabelek w których będziesz miał rozpisane błędy transmisji dla różnej wielkości...
Witam. Chciałbym za pomocą procesora wysyłać smsy za pomocą telefonu siemens A52 komendami AT. Podłączyłem go wstępnie do kompa przez oryginalny przewód i niestety coś jest nie tak :/ cały czas w odstępach 0,5s komórka wysyła do terminala znak http://obrazki.elektroda.pl/4066497000_1...
http://obrazki.elektroda.net/42_12648689... Na temat projektu avr-cdc z [url=http://www.recursion.jp/avrcdc/]htt... napisano już wiele i jeszcze więcej - nie będę się rozpisywał o samej idei - można zajrzeć chociażby do wątku [url=http://www.elektroda.pl/rtvforum/to... prosta niezawodna przejściówka...
Witajcie. Mam połączone ze sobą dwie atmegi za pomocą RS232, komunikacja jednokierunkowa. Jako master działa M128 taktowana kwarcem 16MHz, a jako slave M8 również taktowana kwarcem 16MHz. Komunikacja służy do wysłanie z jednej atmegi do drugiej tablicy danych składającej się z 408 bajtów (408 różnych zmiennych w zakresach 0-255). Komunikacja działa...
Witam! Próbuję nawiązać połączenie miedzy ATmega16A a terminalem na laptopie. Używam przejściówki USB - RS232 na chipie Prolific. Podczas transmisji otrzymuję inne znaki niż te które wysyłam. Nie są to losowe znaki, gdy wysyłam "f" zawsze otrzymuję "&" niezależnie od kierunku transmisji (na uP wyświetlam wynik transmisji na LCD). Usart skonfigurowany...
Witam Zmontowałem (prawie) sterownik do C.O. i wystąpił problem. Otóż urządzenie nadaje do komputera poprzez RS232 swoje aktualne parametry w postaci: Print c(1),c(2),c(5) ..................... I tu wszystko jest OK. Ale problem jest w drugą stronę. Przy instrukcji: input Rsin odczytuje tylko dwa pierwsze znaki (czasem 3 lub...
Lepiej będzie w przerwaniu ustawiać jedynie flagę, a w głównej pętli programu odczytywać stan TWSR i wysyłać komunikaty? I tak się nie wyrobisz, chyba że bardzo zwolnisz zegar I2C/TWI. Normalnie I2C działa na 100kHz, więc z prędkością zbliżona do maksymalnej dla RS232 (takiego typowego). Po prostu nie zdąrzysz nadawać po RS. Oczywiście ustawienie flagi...
Zmieniłem prędkość na 1200b. No to już jest naprawdę wolno. I co ? I nic - nadal gubi znaki. Mam taki pomysł. Pierwszy znak zawsze przychodzi poprawnie. Dlaczego ? Cholera wie... Więc - ustawiamy SERIALIN z opcją BYTEMATCH=ALL. Czyli już po pierwszym znaku wywołuje procedurę SERIAL1 BYTERECEIVED. Teraz -po pierwszym znaku wyłączamy wszystkie timery....
Witam ponownie po dłuższej przerwie wróciłem do dalszej pracy nad układem. Mam nadal problem z połączeniem do ds1820 przez 1wire. Próbowałem kilka metod wykrywania układu i żadna nie działała zawsze zwracało mi Err=1. Do ds'a mam podpięty rezystor podciagający a VCC podpinałem za równo pod napięcie jak i na masę i nic niestety to nie dawało. Co do połączenia...
Hej mam do was pytanie odnośnie długości kabli do komunikacji atmegi. Urządzenie docelowe ma wisieć wysoko i będzie sterowane przez atmegę zaś atmega będzie obsługiwać karte SD, RS232, RS485 i bootloader USB na układzie FT232RL. Aby ułatwić dostęp do tych lini będzie zastosowana (o ile będzie się dało) duża puszka w dostępnym miejscu żeby podpiąć laptopa...
Mam problem z zapisem ustawień do GPS. Wysyłam z ATmega644 dane o zmianie prędkości po RS 232 oraz chcę przyspieszyć pojawiające się dane (standardowe ustawienia 1Hz) i nic się nie zmienia. Przeczytałem notę katalogową GPS: http://download.maritex.com.pl/pdfs/PMTK... Odbiór danych działa mi bardzo dobrze ( ale wolno )....
nie miałem doświadczenia póki co z ATmegami, ale pewnie są to dość podobne układy do '51, poza dodatkowymi bajerami. Jeżeli mają być wysyłane paczki po 32B, to szybkość transmisji musi byc większa od 256bit/s. Wtedy przy tej prędkości teoretycznie paczke Ci prześle w 1s ( o ile dobrze licze, poprawcie mnie jeśli coś źle napisałem;) ). Max w RS232 to...
Przejściówki USB LPT mają inne adresy niż sprzętowy port LPT, są znacznie wolniejsze bo nie otrzymują rozkazów "niemalże" bezpośrednio z procesora jak jest to w przypadku portu sprzętowego. Nie mierzyłem prędkości tych adapterów, i do końca nie daję gwarancji jaka będzie ich kompatybilność z frezarką, aczkolwiek na pewno nie jest do końca tak jak kolega...
Jakiś czas jestem posiadaczem przejściówki USB-RS232 (w środku zamiast scalaka jest jakiś zalany glut). O takiej: http://obrazki.elektroda.pl/2788755800_1... W systemie zgłasza się to jako: http://obrazki.elektroda.pl/5117695100_1... http://obrazki.elektroda.pl/8231457100_1... Przejściówki tej używam często...
Witam, Moja przejściówka USB - RS232 okazała się być jakimś chińskim szajsem więc nie mogę chwilowo sprawdzić poprawności kodu. Czy ktoś mógłby rzucić okiem i stwierdzić czy poniższy kod ma szansę funkcjonować? ATmega jedynie odbiera jeden bajt po RS'sie i w zależności od tego czy jest to 1 czy 0, ustawia cały port C w stan aktywny bądź niski. Mikrokontroler:...
AVE... Projekt estetyczny i ładnie zrobiony. Tylko jedno pytanie: czy koniecznie trza było ten port D tak wyprowadzać w jednej linii z pozostałymi? Dla mnie to trochę marnowanie przestrzeni. Ma znaczenie. (...) Gdy chcemy korzystać z RS232 potrzeba kwarcu 7.3728 MHz Czy na pewno jest konieczne używanie takiego kwarcu? Układ generowania zegara dla transmisji...
Tak wygląda program z buforowaniem. Napisałem go wcześniej ale efekt był tak sam a szukajac informacji spotykałem się z tym, że UDR był nadpisywany zaraz w przerwaniu od RX. [syntax=c]ISR(TIMER0_OVF_vect) { // naliczanie TimeCounter++; if ((ReciveStep>1)&&(TimeCounter... FrameSize=ReciveStep; ReciveStep=0; TransmitStep=0; UDR=SendingData[0];...
[syntax=basic4gl]$regfile = "m128def.DAT" $crystal = 14745600 $baud = 115200 'prędkość 1 USART-a $baud1 = 115200 'prędkość 2 USART-a Print "nadaje na COM1" 'nadawanie na Tx0 Open "COM2:" For Binary As #1 'nadawanie na Tx1 Print #1 ,"nadaje na COM2" [/syntax] I to wszystko żeby wysyłać...
Witam, To co ja pisałem to nie jest kwestia teoretycznych rozważań, pierwszy raz na poważnie zabrałem się za napisanie własnej obsługi dowolnych DSxxxxx tutaj: http://www.elektroda.pl/rtvforum/topic14... W międzyczasie spokojnie działa mi oczywiście RS232 z prędkością 115200 ale też każdą inną i jak zawsze w moim projekcie jeszcze kilka innych...
Smoczy, po twoim poście stwierdziłem, że sprawdzę fusy, i o dziwo był tam 1mhz, zamiast 8mhz, które wydawało mi się, że są. Zmieniłem więc na 8, prędkość 9600. Po zmianie zaczęło działać odbieranie znaków. Niestety nadal nie wysyła... Schematu nie ma, układ połączony jest następująco: USB -> konwerter USB/RS232 na ft232 -> max232 -> atmega. Jestem prawie...
Witam, Usiłuję zmusić ATmegę128 do komunikacji z komputerem przez RS-232. Niestety mam z tym duży kłopot. Procesor chodzi z kwarcem na 16MHz, a transmisja do komputera ma się odbywać poprzez wbudowany w procesor USART z prędkością 115,2kbps. Transmisja ma być w zasadzie ciągła do póki są dane do wysłania (a będą cały czas) i jedynie procesor będzie...
No jeśli to ma sterować jakieś silniki, a nie wiadomo co ty tam dalej dasz po drodze to jednak jakiś koralik sobie załatw (to L1) ;) Zasilanie +5V do samego FT232RL możesz dać bez najmniejszego problemu. A resztę swojego układu razem z mikrokontrolerem zasil z jakiegoś zewnętrznego źródła skoro mają też być zasilane silniki - no bo chyba nie chcesz...
Potwierdzam: STK200 + XP + mega128 - kupa błędów i poprawne zaprogramowanie co piąty, dziesiąty raz. rozw. 1: jeżeli Twój program ma możliwość wyboru prędkości programowania - zmniejsz ją. Przy ISPprog to pomogło. Płytki mam na 11 lub 16Mhz. W ISPprog ustawiłem 2Mhz i błędów jest o wiele mniej (za to wrzucanie 60kb do flashu trochę trwa...). rozw. 2:...
Ja tworzyłem komunikację szeregową (rs232 na poziomach już TTL) w jedną stronę na elementach RT4 i RR6 i dopiero przy małych prędkościach tzn 1200 mniejszych nie próbowałem bo w tym zastosowaniu musiałem mieć conajmniej taką prędkość, to po powtórzeniu ramki 100krotnie dopiero była odbierana w miarę poprawnie.
Obecnie mam ATMEGA8535 i pamięć DataFlash AT45DB161D. Cały ten blok układu pracuje prawidłowo. Tak wogóle to urządzenie służy mi do zapisywania komunikatów cośw stylu ISD i narazie układ zapisuje mi dźwięk z mikrofonu do pamięci. Teraz chcę to rozbudować o wgrywanie komunikatów z komutera. Co prawda kiedyś robiłem już programy na kompa ale z transmisją...
1. Programowanie programowaniem, ale nie pociągniesz kabla z samym wyświetlaczem kilkanaście metrów (na piętro). Najlepiej byłoby zbudować drugi prosty układ z samym mikrokontrolerem, LCD, klawiatura i portem rs232. Przez port rs232 łączysz układ główny (na parterze) z układem podrzędnym (na piętrze). RS232 z dobrym kablem spokojnie kilkanaście metrów...
Napisałem "obciążona" a jest "podciągnięta". 4k7. Napisałem, że sygnał z czujnika idzie cały czas. cyt: Podłączasz się przejściówką USB<>USART na 9600bps i po resecie napisze "Debug started". Poprzedni kod mógł niczego nie wysyłać jeśli nie mógł się dogadać z czujnikiem. Teraz, jeśli linia komunikacji z czujnikiem będzie zwarta do masy (pamiętaj...
atmega atmega rs232 atmega rs232 rs232 atmega
nissan qashqai obroty silnika uniwersalne sterowniki karty graficznej schemat układu kierowniczego
internet mobilny internet mobilny
Jak zbudować wiatę z dachem jednospadowym? Zagięty wężyk w Siemens EQ9 a wolny przepływ kawy