Żeby działała transmisja od komputera do kontrolera przy tak zbudowanym konwerterze, to wejście RxD w uK musi być wejściem z podciągniem (uaktywniony pullup), albo trzeba dołożyć rezystor na zewnątrz. Podepnij się z oscyloskopem/miernikiem/ledem z rezystorem do linii RxD, ustraw transmisję na 300 bodów i zobacz jak wygląda przebieg.
Zmień w kodzie definicję frq na 1000000 i spróbuj. Bo wtedy powinno być dobrze.
Średnik napewno zostanie wydrukowany na LCD plus te dwa "magiczne" znaki czyli LF i CR
W AS też można - a nawet powinno się - to definiować w opcjach projektu. To i parę innych rzeczy mi się podoba, ale ten kiepski edytor powodujw, że wolę programować w AS. Jeśli wiesz jak się to robi w AS 5.1 to podziel się wiedzą. Z góry dziękuję. tutaj jest jak zrobić przycisk do wywołania komendy avrdude A tak przy okazji. Wie ktoś jaką funkcją można...
Polecam poszukać pod hasłem atmega8 pinout w google lub pobrać pdf-a do procka. Na opisie wyprowadzeń są oznaczone sygnały programatora.
Jeśli użyjesz programowego uarta to możesz mieć je na dowolnych wyprowadzeniach , jeśli jednak chcesz korzystać ze sprzętowego uarta musisz korzystać z dedykowanych wyprowadzeń .
Prościej by było przekierować konsolę na RS232 i tak to oprogramować.
Jak chcesz sie upewnić wylutyj kwarca jak mega dalej wysyła to działa na oscylatorze wewnętrznym RC. ustaw fuse bity i bedzie ok
Płytka nie jest najlepsza, ale widywałem gorsze. Myślę, że przed wymianą płytki należy jeszcze spróbować w następującej kolejności: 1. Dobrać i dodać snubber na styki przekaźnika http://www.te.com/content/dam/te/global/... rozdział 4.5 2. Przekaźnik powodujący zakłócenia wywalić z płytki...
Dawno się już nic nie montowałem, ale na moich schematach są odwrotnie połączone sygnały, to znaczy 14 z Max łączy się z 2 na DB9, a 13 z MAX łączy się z 3 na DB9. Czyli odwotnie niz jest u Ciebie. Kolejna sprawa to BHP - włącz w szereg pomiędzy port i MAXA jakieś oporniki ograniczające (np 330-470). Jak coś pójdzie nie tak z Twoim układem to przynajmniej...
Sprawdz w dokumętacji jakie poziomy napięć przyjmuje ten modem... Jeśli tylko standard rs232 to musi być max lub jakiś inny ukłąd doapsowujący poziomy napięć... Jeśli natomiast modem przyjmuje TTL to można podpiąć bezpośrednio... Ale patrząc na to cacuszko jestem na 99% pewnien, że musi być standard rsr232...
irutkows: zegary to w atmega 4MHz FPGA 3,6864MHz. Na razie testuje na baud 9600 ale pewnie wskocze na 19200. Stale beda mi potrzebne pozniej, przeciez napisalem za co sie biore(kostka rubika na kolorowym wyswietlaczu z nokii 6100) a te 1010101.. to tylko dla testu. Wg mnie to przy zegarze 3,6864MHz dla zamieszczonego kodu będzie 3.6864E6 / (2 * 384)...
przerwania timerów mają wyższy priorytet niż przerwanie transmisji szeregowej. Jeśli wysłanie tych pięciu liczb trwa dłużej niz 25ms to na pewno w między czasie będzie przerwanie od obsługujące klawiaturę, jeśli ono Ci modyfikuje jakiś wskaźnik lub inną zmienną związaną z buforem wysyłania danych to tam bedzie powód gubienia znaków. Musisz tez przeanalizować...
Najpierw spróbuj może dodać: ...ale jak ustawię ręcznie bit UDRE w UCSRA który oznacza że bufor jest pusty, także nic się nie wysyła. To nie jest argument. Flag przerwań w AVR generalnie nie da się ustawiać programowo, niektóre można tylko wyzerować. Akurat UDRE można wyzerować tylko poprzez wpisanie bajtu danych do rejestru UDR, flaga ustawiana jest...
Nie lepiej zerować przez RS'a zmienną która zlicza impulsy ?
czyli tak na prawdę i tak potrzebuję programatora żeby wgrać bootloadera do ATMegi? Tak.
twój przypadek wygląda tak jakby procesor używał innego bauda jak mu każesz. po pierwsze sprawdz czy ATmega kożysta z zewnętrznego kwarcu (chodzi o fusebity) bo standardowo jak wyjeżdza z fabryki to chodzi wewnętrznym 1MHz. po drógie sprawdz konfigóracje uarta są w necie takie programiki do obilczania wartość rejstrów na różnych kwarcach.
string powinien kończyć się znakiem NULL czyli o wartości zero. Nie używałem uarta, czy gdzieś w Twoim kodzie jest funkcja / lub ją dodałeś że po odebraniu tylko 5 znaków zostanie dopisany znak NULL? jeśli nie ma tam takiego czegoś to nic dziwnego. Funkcja UART_putstr będzie wypisywać wszystko co napotka aż znajdzie znak NULL (zero). najprostsze co...
Czyli poziomy napięć -9V dla jedznki i +9V dla zera, a ATmega daje +5 V dla jedznki i 0 dla zera. No, raczej to nie zadziała...
Co to znaczy że testowałeś już różne ustawienia crystal? Musisz być pewien co masz ustawione - w innym wypadku to nie robota ;) Fabrycznie nowa pracuje na 1MHz. Napisz prosty programik [syntax=vbnet] $crystal = 8000000 Config PORTB.0 = Output : Led Alias PORTB.0 Do Toggle Led Waitms 500 Loop[/syntax] To chyba oczywiste że dioda powinna mignąć 60 razy...
To jest program pod ATmega32 ale powinien dzialac #include <avr/io.h> #include <stdlib.h> #define F_CPU 8000000 // 8MHz zegar procesora #define CYCLES_PER_US ((F_CPU+500000)/1000000) // cpu cycles per microsecond // #define UART_BAUD 19200ul //prędkość transmisji w bodach (tu 19200 bodów) #define UART_CONST (F_CPU/(16ul*UART_BAUD)-1...
To co zrobiłeś nie miało prawa zadziałać z wybraną płytką NG, ona ma ustwienie na kwarc 16MHz: c:\Program Files (x86)\Arduino\hardware\arduino\avr\board... ... ########################################... atmegang.name=Arduino NG or older atmegang.upload.tool=avrdude atmegang.upload.protocol=arduino atmegang.upload.speed=19200 atmegang.bootloader.tool=avrdude...
W helpie nie ma programu do odbioru? :)
Na przedstawionych schematach masz zamienione linie Rx i Tx.
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...
So double check everything... TWICE! Musi działać:)
http://www.atmel.com/dyn/resources/prod_... strony 140 i 143
ha! nie wpadłem na to, żeby zewrzeć z tej strony. Zwarłem 2 i 3 w moim kablu i mam echo! czyli 10% sukcesu już za mną.. To świadczy o tym, że kabel zlutowałem dobrze. Niekoniecznie. W dalszym ciągu mogłeś polutować 2-2 3-3. :) Tak czy inaczej teraz trzeba rozwiązać inny problem - dlaczego nie ma echa gdy zwieram wejście z wyjściem za maksem? Najlepiej...
Dlaczego tablica ascii ma tylko 6 pozycji? Potrzebujesz 7. Jawnie wychodzisz poza tablicę (w kodzie wystepuje ascii[6]). I taka uwaga na przyszłość. W funkcji set_values wysyłasz dane serialem. Procedura USART_Transmit czeka aktywnie na wysłanie - trwa dość długo. Wywołanie jej w procedurze obsługi przerwania z odbiornika powoduje za długie wykonanie...
proponuje cos takiego: #include <avr/io.h> #include <avr/delay.h> #include "io.h" void USART_Init( unsigned int baud ) { //ustawienie portu DDRD &= 0xFE ; DDRD |= 0x02 ; PORTD |= 0x03 ; /*set baudrate*/ UBRRH = (unsigned char)(baud>>8); UBRRL = (unsigned char)baud; /*enable receiver and transmitter*/ UCSRB = (1<<RXEN)|(1<<TXEN);...
Witam, zanim zabierzesz się za pisanie własnej obsługi przerwań do RS232 w Bascomie, to może najpierw spróbuj zrobić to w oparciu o dobrodziejstwa jakie daje ci Bascom. nie znasz poleceń INPUT , INKEY czy PRINT ???? do tego jeszcze może Config Serialin bo w powyższym kodzie odstawiasz niezły "miszmasz" i nie ma co się dziwić, że ci nie działa. Oczywiście...
W twoim programie jest tak: [syntax=basic4gl]If Wart_ac > 1000 Then Gosub Wykrywanie Elseif Wart_ac < 1000 Then Gosub Czujnik1przeciwnik Elseif Wart_ac1 < 1000 Or Wart_ac2 < 1000 Then ' ###### ta czesc petli nie reaguje na zmiany w ukladzie ### Gosub Czujnik12lini End If [/syntax] w jaki sposób 3 opcja ma zostać spełniona? Przecież jeśli...
no wiec tak, mam stacje dokujaca do siemensa sl45i( z innymi siemensami z "duzym" gniazdem tez dziala) bede probowal ja podpiac do uP oczywisce w kolejnosci avr -> max232 -> stacja dokujaca -> telefon. jezeli odpali komunikacja to znaczy ze jest za niski poziom tx w telefonie. a potem to sie bede martwil jak podniesc to napiecie. zajrzyj rowniez tu...
W 90% przypadków komunikacja po RS-232 będzie możliwa w/g logiki: Lo - >3,3V Hi - <0,7V
http://obrazki.elektroda.net/76_12556968... Witam, przedstawiam moduł 'usb-rs232 i/o port', jest to przejściówka usb-rs232 zrobiona na bazie projektu http://obrazki.elektroda.net/76_12556968... http://obrazki.elektroda.net/5_125569703... http://obrazki.elektroda.net/15_12556969... http://obrazki.elektroda.net/9_125569699...
Tak, myślałem o podłączeniu przez normalny RS232. Pokaż schemat, a nie jakieś wariacje na temat :) Może gdziesz masz źle zasilanie podpięte, masy itd. Bez schematu takich błędów nikt nie znajdzie. Oczywiście przy braku nośnej odbiornik może łapać śmieci. Stąd jeśli wysyłasz coś drogą radiową to należy to opakować w odpowiedni protokół - preambułę, co...
http://obrazki.elektroda.net/43_12786005... Atmega fusebit doctor, jak sama nazwa mówi, to urządzenie do naprawienia nieumiejętnie przestawionych fusebitów w mikrokontrolerach z rodziny AVR. Największymi problemami jest ustawienie nieprawidłowego źródła zegarowego (fusebity CKSEL), wyłączenie programowania SPI (fusebit SPIEN), lub ustawienie pinu...
Ostre reżimy czasowe, może się nie nadać, zależy jak z czasem. Proste ISP jest niezależne czasowo, RS232 itp. musi się trzymać czasu, 1-Wire tak samo, a nawet bardziej :)
Nie znam algorytmu programowania PICa, ale JDM + konwerter USB-RS232 może nie zadziałać. Tego typu programatory nie korzystają z portu RS232 w sposób jaki dla niego przewidziany (sprzętowa transmisja szeregowa), tylko "machają" bezpośrednio poszczególnymi liniami jak GPIO. Nawet jeżeli to ruszy, to i tak będzie strasznie wolne, bo wymiana danych przez...
Lutowanie TQFP jest banalne, szczególnie hotairem. Nakładasz na pady cynę w paście, niezbyt dużo, przykładasz scalak i grzejesz aż się pasta stopi. Napięcie powierzchniowe metalu samo ustawi scalak poprawnie. XMEGA A4U, czy nawet mniejsza, to nie strzelanie z armaty do muchy - sprzętowy interfejs USB naprawdę jest wygodniejszy i co ważniejsze w pełni...
Swoją drogą jest też programator SI-Prog, ja zrobiłem sobie wersję na RS232 i AVR-y da się programować, puki co miałem okazję majstrować z Attiny2313, AT90S2313 oraz Atmega8 i dość fajnie to działało. Jedyne czego potrzeba, to złącza d-sub9, kilku oporników, diod zenera oraz tranzystora. http://www.embedds.com/wp-content/upload... Nie...
Oczywiście, gdy chcesz wysłać napis, nie stosujesz zmiennej BYTE, prawda?
Po 1: Jaki to RS (232, 485)? Jak RS232 to nie da się tego łatwo zrobić. Do wielu nadajników nadaje się np RS485. Ewentualnie zrób sobie 3 programowe "RS" i odbieraj z każdego nadajnika oddzielnie. Po 2: Gdy RS485, to możesz sobie też zrobić prostą ramkę i poza bajtami TH i TL wysyłać adresy nadajników tak aby odbiornik wiedział od którego dostaje dane....
Sam widzisz, że filtracja zasilania prawidłowa to nie jakiś tam wymysł a podstawa. Zatem jak zrobisz sobie nową płytkę PCB, zaprojektujesz wszystko tak jak się należy ale co ważne prawidłowo poprowadzisz ścieżki zasilania bo tu niezbyt dobrze to widać ( a coś czuję pismo nosem że też jest coś nieteges ), zrezygnujesz z tych linii przerwań w końcu, puścisz...
MAX232 jest konieczny, przecież standard RS232 to nawet +/-12V, a mikrokontrolery nie lubią -12V na wejściu, dlatego MAX 232 zamienia +12 na 0V a -12 na +5V, albo odwrotnie, nie pamiętam, ale mniejsza o to, w każdum razie konwersja TTL<->RS232 jest niezbędna. Jak na moje oko to winny jes niedziałający konwerter poziomów na MAX'ie, może sam układ...
Jeśli twoje urządzenie ma dekodować sygnał chrominancji TV analogowej (PAL, NTSC), to ten kwarc jest w sam raz. Do wszelkich innych celów potrzebujesz albo kwarcu "transmisyjnego" (o ile masz mieć komunikację po RS232 z jedną z typowych szybkości), abo "okrągłego" (jeżeli masz np. USB lub musisz odmierzać czas w ludzkich jednostkach). "Transmisyjne",...
Witam, próbuje stworzyć aplikacje w Visual C# która miałaby wysyłać i odbierać dane z mikrokontrolera atmega8. Udało mi się podłączyć i napisać wstępnie program na avr, w realterm wszystko gra. Prosta aplikacja którą stworzyłem działa poprawnie przy wysyłaniu (przy wysłania liczby 5 zmiana stanu diody). Niestety nie mogę poradzić sobie z odbiorem. kod...
A czy PC i układ mierzący są zasilane z tej samej fazy? Najlepiej z tego samego gniazdka. Jeżeli nie jesteś tego pewny, to spróbuj dać optoizolację na RS232 i zobacz czy to coś pomoże. Czasami jest też tak, że istnieje duża różnica potencjałów między przewodami neutralnymi w dwóch różnych gniazdkach - spowodowana np. niesymetrycznym obciążeniem instalacji...
Ja bym się nie bawił w analogówke ... Sam zrobiłem stację meteo podłączoną do serwera , dane zbierane były do bazy danych mysql a stronka z odpowiednimi skryptami wyświetlała wyniki w postaci wykresów ( gnuplot ) oraz wskaźniki we flaszu bieżącą pogode. Zastosowałem mikrokontroler atmega8 pomiary temp czujnik DS18B20 pomiar wilgotności czujnik analogowy...
Ad1. Jak najbardziej. Jezeli chcesz coś tańszego od MAX485 poczytaj o SN75176. Ad2. Wszystko jest w nocie katalogowej :wink:. MAX232 i MAX485 pracują równolegle patrząc od strony Atmegi (a więc TxD i RxD idą na MAX485 i MAX232). Żeby rozdzielić sygnały (coby RS232 i RS485 nie działały jednocześnie) można wykorzystać uC z dwoma portami szeregowymi, zrobić...
RESET i INT jak są krótkie przewody / rzadko używane / małe prądy to żaden problem. Pamiętaj tylko o ew. zmianie napięcia. (możesz to zrobić w prosty sposób - na linię reset (jak rozumiem do MP3) wystarczy rezystor 10K (ew. 1k jak reset ma jakieś podciągnięcie i 10K nie starcza). Na linię INT (jak rozumiem z mp3 do sterownika) możesz dać zwykły tranzystor...
Witajcie Postanowiłem pobawić się RS232. Używam do tego przejściówki USB->FT232->RS232. Atmega8 ustawiona: 8MHz Baud: 9600 UBBR: 51 Po przeczytaniu Datasheet i innych tutków napisałem coś takiego: [syntax=c]#include <avr/io.h> #include <inttypes.h> void USARTInit(uint16_t ubrr_value) { UBRRL = ubrr_value; UBRRH = (ubrr_value>>8);...
Funkcja wysyłania działa mi dobrze. Funkcja odbierania niby dioda mignie jak coś odbierze, ale czy działa prawidłowo to nie wiem. W każdym razie gdy z PC wyślę coś dioda potwierdzi, że coś odebrałem, ale gdy wyśle to z powrotem to nic nie otrzymuje. Kod programu: rs232.h [syntax=c]#ifndef RS232_H #define RS232_H #ifndef F_CPU #define F_CPU 1000000UL...
Witam próbuje zestawić połączenie modemowe za pomocą amega8 ale za cholerę modem nie chce rozmawiać z procem. Z proca na rs-232 idzie tylko tx i rx. Zrobiłem zwarcie pinów 1,6,4 i 7,8 w DB9 ale nadal modem nic nie odbiera od uP. Z komputerem połączenie działa zarówno z uP jak i z modemem. HELP....
Próbowałem zrobić proste wysyłanie do komputera przez RS - a .Układ nie działa wiec postanowiłem załączyć schemat i program .Może mi ktoś to sprawdzić. Dzięki. ----------------------------------------... Zapomniałem dorysować masy do mega 8 ale napewno jet podłączona.
Witam Wykonałem układ na Atmega8 z komunikacją RS232. Chciałem podłączyć drukarkę kodów kreskowych i wydrukować etykietę. Port w uC i w drukarce ustawiłem na 1200, N, 8, 1. Drukarka milczy, nie drukuje. Na PC w Hyperterminalu ładnie wszystko odbiera i wysyłane znaki ascii się zgadzają. Znaki wysyłam w pętli po jednym znaku i czekam po każdym 50ms, może...
Witam Posiadam zestaw uruchomieniowy ATmega8 zl2avr taktowany 1MHz(fabrycznie) i chciałem napisac program przesyłajacy dowolny znak na PC, ma byc odczytywane w hyperterminal. Ale niestety nie mia transmisji zadanego przeze mnie znaku. W trakcie transmisji (wskazuje ją świecaca się dioda) kursor w hyperterminalu mryga szybciej, czyli wnioskuje ze cos...
Tak jak w temacie coś mi nie działa kod czy wiecie co jest zle [syntax=c] #define size_1 64 #define mask_1 (size-1) volatile char buffer_1[size]; volatile uint8_t head_1; volatile uint8_t tail_1; void transmitter(char znak) { head_1=(head_1+1)&mask_1; while(head_1==tail_1) { } buffer_1[head_1]=znak; UCSRB|=(1<<UDRIE); } ISR(USART_TXC_vect)...
rs232 atmega8 komunikacja rs232 atmega8 atmega8 rs232 bascom
honda accord accord komputer xperia dioda antena teleskopowy radio długość
prądy wirowe pomiar iiyama prolite b2403ws
Wiśniowski ST-2 – brama zamyka się, ale nie otwiera: diagnostyka fotokomórek, krańcówek, przekaźnika Simson SR – kierunkowskazy świecą odwrotnie, zamiana przewodów czarny/zielony