Tak. Tylko mniej świadomość że procek będzie odrywany od pracy wieloma nieprzydatnymi impulsami. Ewentualnie po pierwszym impulsie na INT, wyłącz przerwania na czas drgań. Jak teraz masz podłączony kontrakton ? INT podciągnięty pod +5V ? Jak INT wyzwalasz ? W docelowym projekcie koniecznie czujnik kontraktonowy zamień na jakiś halotron albo transoptor...
1% błąd to żaden problem dla USART więc powinno działać.
Nie da się tego precyzyjnie wyliczyć. Dekodowanie impulsów z enkodera na M328 odbywa się programowo - np. tak, że impulsy z jednego kanału generują przerwania (nie jest to idealne rozwiązanie, ale na początek nie komplikujmy). W efekcie to jak często mogą się one pojawiać zależy od czasu jaki MCU spędza w funkcji obsługi tego przerwania, ale także od...
Po pierwsze w programie możesz (powinieneś) zmienić linijkę Config Lcd = 20 * 2 na: Config Lcd = 16 * 2 (przecież taki masz wyświetlacz) Zakładam że procesor potrafisz programować (wybrać typ, ustawić fusebity (!!!) do odpowiedniej prędkości itp.)?
Zastanów się co masz na nóżce ADC0 podłączonej przez potencjometr do masy? Wg mnie jakbyś nim nie kręcił to zawsze 0V.
Programowałeś fuse-bity do pracy z zewnętrznym kwarcem ? Coś mi się wydaję ze pracujesz na wewnętrznym oscylatorze 1MHz. Możesz to sprawdzić zmieniając prędkość terminala.
Witam, miałem podobny problem z arduino (identyczne komunikaty z avrdude). W moim przypadku okazało się, że prędkość transmisji trzeba ustawić na 57600.
Nie opisałeś co jeszcze ta Atmega128 ma robić, ale jeżeli tylko to co piszesz, to będzie się nudzić i to bardzo. Zresztą możesz ją przyspieszyć - działasz dopiero na 1MHz.
Atmega 162 - 8MHz (bez dzielenia przez 8) prędkość 9600 Atmega 32 - 8MHz (fuse przestawiony na 8) prędkość 9600 Oba były sprawdzane za pomocą termianala na PC i przy tej predkości echo wracało takie jak zostało wysłane. Kable są skrosowane.
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...
Zmniejsz prędkość ISP. Powinna ona wynosić co najmniej F_CPU/4, ale przy kwarcu 16MHz oraz prędkości 4MHz dla ISP też miałem problemy. W brew pozorom transmisja nie trwa długo przy małych programach, żeby używać maksymalnej prędkości ;)
No tak. To może być za duża prędkość.
Podłącz ten silnik tak jak podała Alana. Czy ty nie widzisz różnicy? I popraw ten program, bo tak się nie steruje silnikiem. Przy sterowaniu falowym, sekwencja jest całkiem inna. Jak będziesz miał poprawny kod, to załapiesz jak się steruje prędkością.
Jaką chcesz uzyskać prędkość transmisji Atmega ile VCC?
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...
Ten bit nazywa się CKDIV8 i dzieli zegar przez 8 a nie 16;] Jeżeli procek ma działać z częstotliwością 16MHz powinieneś go wyłączyć.
Czy da się zmienić w programie prędkość transmisji RX-TX z 1800 bps na 9600bps? Komunikacja radiowa 433MHz pomiędzy attiny 13A a Atmega 8A.
Użyj RS485 - prędkość do 1Mb/s, zasięg do 500m i niewielki koszt. IIC przy odległości 2-3m może generować błędy przy większych szybkościach.
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.
kiedyś też się męczyłem i doszedłem do tego $baud = 9600 Config Com1 = Dummy , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0 Config Serialin = Buffered , Size = 64 Config Serialout = Buffered , Size = 64 Print "COM1 INT : DONE" $baud1 = 9600 Config Com2 = Dummy , Synchrone = 0 , Parity = None , Stopbits = 1...
Odpowiedź w pełni wyczerpująca i z prędkością naddźwiękową :) . Dzięki.
Witam. Próbuję opanować USART w ATMega 8. Wewnętrzny oscylator 1MHz. Z komunikacją nie mam większych problemów. Jednak zastanawia mnie ustawianie prędkości transmisji. W moim programie ustawiłem prędkość transmisji na 9600bps. Rozumiem że 9600 bps oznacza wysłanie 9600 bitów w ciągu sekundy (jeżeli źle rozumuję to proszę o poprawienie mnie), a więc...
ten warning nie działa myląco. Przecież przed zaincludowaniem pliku nagłówkowego definiujesz swoje F_CPU, ale nie będzie ono widoczne w pliku nagłówkowym wyświetlacza. Rozwiązaniem jest pisanie w każdym pliku definicji F_CPU. Ale tak się nie robi bo jest to mega bez sensu i nigdy tak nie rób. Żeby ustawić stałą F_CPU globalnie, trzeba to zrobić w pliku...
Wszystko pięknie, ale jaką częstotliwością jest taktowany mikroprocesor i jaką prędkość transmisji stosujesz?
A na pewno masz baud na HC-05 ustawiony na 9600 ? bo krzaczki wskazują na to, źe prędkości są różne. Z tego co pamietam, to domyślnie ma on 38400. Podłącz sie bezpośrednio do HC-05 z jakiegosc terminala na kompie i za pomoca komend AT sprawdź prędkość. Pozdr
Witam Mam takie pytanko może dziwne ale stosując układ FTDI tworzy on wirtualny port szeregowy RS i programuje sie go jak normalnego RSa, maksymalna typowa prędkość RSa to 115200k, ale układy FTDI mogą osiągiwać prędkości rzędu 1MB, wiec czy można dla mikrokontrolera np Atmega 32 wyliczać UBRR dla prędkości transmisji 1M czy ma zanse to działać bo chyba...
Tak:) Po kolei: 1) Czytałaś przyklejone tematy / wyróżnione? Tam jest odpowiedź na Twoje pytanie 2) Czy zmieniałaś coś w FUSEBITEach? Pewnie nie. A Czytałaś może jaką prędkość ma atmega defaultowo po zakupie? Pewnie nie. :) No i na dokładkę... UŻYWAJ ZNACZNIKÓW CODE:>
Mi zależało na jak najczęstszym odwieżaniu pozycji. Niestety, bazując się TYLKO na GPS nie da się rozsądnie zmierzyć prędkości...
Ja bym proponował na początek przerwanie zewnętrzne INT w którym liczysz impulsy, oraz przerwanie timera w trybie CTC co około 1s w której jak kolega (at)bochnio wspomniał będziesz zerować licznik. Kolejny krok to mniej więcej tak:[syntax=c]if(licznik > 6) POTRB |= (1<<PB0); // ustaw stan wysoki gdy przekroczy wartość else POTRB &= ~(1<<PB0);...
A fusebity prawidłowo ustawione na 8 MHz? Bo wygląda to na nieprawidłowe ustawienie prędkości przesyłania. Sprawdź jeszcze odbiór przy innych prędkościach - mniejszych.
Witam, Niestety natrafiłeś na ogólnie znany problem :-) I2C w stm32f103 jest po prostu ... nie działa najlepiej. Jeżeli dobrze pamiętam przy próbie odczytu nie ustawia mu flagi IV5 i można tak czekać i czekać. Jeżeli masz nowe biblioteki to spróbuj zmienić prędkość transmisji na 50kB. Jeżeli to nie pomoże to zostaje ci bitbanging :)
A co my Ci dajemy od początku postu? N-sposobów. Przekaźnik, tranzystor, optocoupler, itd etc...? Pytanie jak chcesz to transmitować:) Masz guzik morse? chcesz to transmitować przez mikrofon? Jaka prędkość?
Ok, teraz czaje, myślałem że raz zdefiniowana prędkość w setup jest sztywna
Zerknij na 194 stronę dokumentacji ATmegi128, przeyczytasz tam że policzyłeś dobrze i Atmega daje radę z tą prędkością
Projekt działa ;] Dziękuję za pomoc Miałem dość spore problemy z transmisją i buforowaniem danych, przydałby się tutaj jakiś mądry protokół, bo na razie jest trochę partyzancki. USART ustawiłem w tryb Double Speed Operation (U2X) co pozwoliło mi zestawić połączenie z maksymalną prędkością, którą atmega obsługuje, czyli 2Mbps. Prędkość raczej przyzwoita,...
Hmm... widzę, że temat jest stary, ale może komuś to się przyda. Dzielenie przez 4096, jako że ta liczba jest potęgą dwójki (2^12) to zwykłe przesunięcie w prawo właśnie o te 12 bitów. Jeżeli XL:XH zawiera zliczone impulsy to podzielić to przez 4096 można tak: mov XL, XH ; skrócone podzielenie przez 256 ;) ldi XH, 0x00 ; wynik w XH zawsze będzie właśnie...
Nie. Ta zielona zworka jest wlutowana przeze mnie dla testów. To jest sprzętowe spowolnienie prędkości. Ta zworka jest niepotrzebna.
Najpierw podstawy ;) Masy łączysz, Tx (nadawanie) z płytki łączysz do Rx (odbiór) na FT232. Terminal dowolny, polecam HyperTerminal. Ustawienia domyślne, zmień tylko prędkość na 4800bps.
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...
Jeśli nie są Ci potrzebne wysokie prędkości przesyłu danych, to z powodzeniem sprawdzą się proste moduły ZS-RT14 (jako nadajnik) oraz ZS-RR3 (jako odbiornik). Moduły te działają i osiągają odległość o której mówisz przy prędkości przesyłu 80-110 bps. Współpracują bezpośrednio z UART-em.
Jaka ma być prędkość dmuchawy w stosunku do temperatury?
Pokombinuje wtedy z tymi prescalerami i fuse bitami. Póki co w kodzie i w mkAVrcalculator cały czas mam ustawione na 8MHz, a prescaler ustawiony na 8,natomiast slow SCK mam ustawione na >187,5 kHz Na wyświetlaczu pokazuje mi to samo co Tobie, ale nie słychać ani nie widać w rzeczywistości ,że ta prędkość się zmienia.
Sprawdź ustawienia terminala, prędkość, parzystość, bity danych i stopu. Potem sprawdź ustawienia kompilatora i w dokumentacji procka zobacz w tabelkach od baudrate czy dla kwarcu 16MHz ta prędkość jest optymalna. (M.)
problem w tym że samoloty się nie mijają z przeszkodami , a powietrze porusza się w naturze (wiatr) W samolocie ważna jest prędkość wobec orodka w którym się porusza czyli powierza . W samochodzie ważna jest prędkość wobec ziemi , I tu się to nie sprawdzi.
Eee znów opacznie interpretujesz parametry... czy ma dla ciebie znaczenie czy temperatura min pracy układu jest -40stC czy 0 stC, przecież to sa dla ciebie zupełnie nieistotne parametry nie wiem dlaczego to tak cie zastanawia :) apropo prędkości to nic się nie zmienia napięcia nie podnosisz Atmega dziła dalej na 5 V lub jezeli chcesz wersję na 3,3 V...
Wiecie co. Zastanawiam się czy nie lepiej by wywalić całej tej kupy rezystorów. Zastąpić ją jakimś scalonym przetwornikiem DAC kod przepisać na Attiny2313 (wystarczy z nadmiarem) i puścić go na 20mhz co dało by spory przyrost prędkości reakcji zasilacza (atmega 8mhz)
ATmega8, ATmega8A jak i ATmega 8L są tym samym mikrokontrolerem z punktu widzenia programatora. Różnią się jedynie parametrami elektrycznymi przez co także prędkościami pracy, a dla programatora nie ma to znaczenia. Dlatego wybierz po prostu ATmega8 w ustawieniach BASCOM.
Czyli przy tym małym procesorze z sensowną prędkością raczej nie wyświetlę sekwencji?
Witam. Do soboty powinien dojść PC817 i będę się bawił ale zobaczę też opcje z rezystorem. Dla pewności mam zrobić tak, że przecinam ścieżkę od pinu 11 przy Atmega. W PC817 piny 2 i 3 łączę do masy, do 1 doprowadzam sygnał z czujnika prędkości a 4 prowadzę do pinu 11 Atmega?
Prędkości mam dobre, jestem uczulony na to.
To jeszcze tak tylko zapytam, w tej konfiguracji, każdy z układów przyjmuje takie same stany wyjść, czy jest możliwość różnego ustawiania? Pytanie czysto teoretyczne, bo raczej nie będzie mi to praktycznie przydatne. proszę rozwiń Druga sprawa to przekaźniki możesz dać z cewkami na 12V (będzie mniej prądu płynąć - mniej się grzać, a same MBI mają wyjścia...
Jeśli nie chce wyświetlać animacji w sensownej prędkości tylko linie, małe bitmapy itp (słowem GUI) to wystarczy TFT ze sterownikiem FSA506 (opis w EP) lub SSD1963 i ATmega32. Ot, wszystko...robiw
Wydaje mi się że bez pomiaru f (prędkości obrotowej) to zadanie jest niewykonalne.
Witam! Wczoraj miałem chyba jakiś czarny dzień... Podczas pracy z uC AtMega644p najpierw zaczął on się przedstawiać z dziwnymi sygnaturkami, potem robił tak coraz częściej. W końcu przy każdej próbie wrzucenia do niego wsadu, wyskakiwał błąd weryfikacji. Używam avrdude i programatora usbasp. Próbowałem sprawdzić fusebit'y i wyskakują jakieś dziwne wartości,...
Dla 1 MHz przy pojedynczej prędkości 9600 bodów to za dużo.
Używasz starszą wersje pliku enc28j60.inc , podmień plik. Po instrukcji Spiinit jeżeli chcesz zwiększyć prędkość, powinno być Spsr.spi2x0 = 1 (tu jest chyba jakiś błąd w pliku m1284pdef.dat , według datasheet ten bit ma nazwę SPI2X )
Pewnie winna jest jak zwykle Atmega :) Na jakiej prędkości pędzisz ten mikrokontroler i czy jesteś pewien że fusebity ustawiłeś dobrze?
Zaczynasz dobrze. Wg protokołu inicjację "/?!\r\n" wysyłasz na prędkości 300 bd (ustawienie transmisji 7E1). Nie żadnej innej - 300, bo tak mówi norma. Licznik energii ma wówczas maksymalnie 2 sekundy na odpowiedź, a odpowiedzią jest wpierw ramka identyfikatora licznika, który ma postać "/XXXZD<CR><LF>", gdzie XXX jest identyfikatorem producenta,...
Ok tak na szybko narysowałem . Reset można podpiąć na stałe do +3.3v gdyż soft reset robi dokładnie to samo co hard . rezystory możesz dać inne w necie jest pełno kalkulatorów i wzorów do obliczania . u mnie na takim podłączeniu śmiga z maksymalną prędkością SPI na ATMega8 z kwarcem 20MHz a nawet 25MHz http://obrazki.elektroda.net/78_12174237...
Co to za odbiornik? trochę dziwna ta prędkość dla modułów GPS standard to 4800 atmega 8 tez doskonale pracuje przy tej prękości
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 :-)
Możesz też zliczać czas między impulsami. Znasz czas i drogę (obwód koła) co daje Ci prędkość.
Jeśli chodzi o zmiany fuse bitow etc to najlepiej robić to na tzw. SLOW-SCK czyli po prostu zmniejszyć prędkość ISP bo czasem pokazuje głupoty.
Jakie mikrokontrolery można tam spotkać? Atmega. Widok zaskakujący, ale tak właśnie to wygląda.
Jeśli używasz programatora kompatybilnego z AVR studio, to tam w okienku programowania jest oddzielna zakładka do odczytywania bajtów kalibracyjnych dla wybranych prędkości.
AtMega może też pracować na zasilaniu 3,3V, ale do prędkości oscylatora 8MHz. Odpada jedno zasilanie (5V) i problemy z konwersją sygnałów łaczących ATmega i BTM. pozdrawiam!
http://obrazki.elektroda.pl/2762225800_1... Jedyny taki przenośny programator układów AVR. Pomoże wszędzie tam, gdzie trzeba zaktualizować oprogramowanie, a układ docelowy znajduje się w trudno dostępnym miejscu i nie mamy możliwości (lub chęci) ciągać ze sobą laptopa i mnóstwa przewodów. Banalnie łatwa obsługa, niski koszt wykonania, super...
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ą...
Ten parametr UBRR został po prostu źle obliczony powinien dla 1MHz być 5. Dla zainteresowanych polecam: http://www.josephn.net/avr/avr_ubrr_calc... Nie trzeba korzystać z kalkulatorów wystarczy korzystać z nagłówka setbaud.h Przeanalizuj punkt Prędkości transmisji oraz funkcję usart_inicjuj(): http://mikrokontrolery.blogspot.com/2011...
Mam dwa układ na ATmega oba układy mają podłączone MAXA485. Ale poco ten konwerter,przecież procesor wysyła i odbiera sygnały TTL... Pobaw sie jeszcze z tymi prędkościami transmisji. czy jest jakaś możliwość wysyłania i odbierania danych w dokładniejszy sposób niż jest toprzedstawione w przykładach. input, print, input, waitkey Hmm,masz jeszcze polecenie...
fuse bity ustawiam na: low: 0x62 high: 0xDF To ustaw low: 0xE2 i po krzyku :D
Mam pytanie do osób, które wykonały już ten multimetr: jaki jest całkowity pobór prądu przez układ miernika? Czyli wyświetlacz wraz z Atmega, bez tej części z mosfetem do regulacji prędkości wiatraka. Pytam dlatego, że buduję pomocniczy zasilacz do zasilania dwóch powyższych multimetrów i kilku innych układzików (wzmacniacze operacyjne, sterowanie trzema...
To teraz troszkę mi namieszałeś, ATmega 16 ma ICP1 przy nóżce Timera 1, ja odmierzam impulsy 2-ch sygnałów... Co do sposobu zliczania impulsów za pomocą T0/T1 to po co używać 3 timer do odmierzania okresu czasu. Przecież okres jest odmierzany na przemian. Gdy T1 zlicza impulsy obrotomierza to T0 odlicza okres, po tym okresie T0 zaczyna zliczać impulsy...
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...
Witam. Jaki kwarc uC? Jaka prędkość i długość połączenia? Razem ile przerwań w uC?
Tak w skrócie tzn że każdy pixel składający się z 8bitów, czy ile tam miał ten wyświetlacz musisz dostarczyć z prędkością równą 27MHz (chyba tyle było w datasheet).. Od sony PSP zapewne będzie to samo i już na pewno ATmega nie udźwignie tego. Ten z Maritexu na sterowniku ILI9326 wygląda rozsądniej.. każdy pixel podajesz mu 8,9,16 lub bitową zmienną...
Testowałem wszystkie możliwe baudrate od 110 do 9600 bps po obu stronach i niestety nie przynosiło to żadnych efektów. Im wyższa prędkość ustawiłem tym więcej krzaków otrzymałem. Jakie wiec rady? Przetestować transmisję z zastosowaniem jedynie MAX232 po obu stronach ? Jaką prędkość proponujesz ? Dodam, że moja Atmega pracuje na 4800bps przy 1MHz (tak...
scalak na 5V...a on nie ma odpowiednika Możesz przynajmniej zdradzić co to za magiczny układ? Dlaczego? Wydawało mi się, że to dość popularny standard. Nie należy mylić popularności z niezawodnością ani wydajnością. I2C działa w oparciu o wired-and, czyli wszystkie urządzenia mają wyjścia typu OD, a to fatalnie wpływa na propagację sygnałów, co np....
Procesor działa normalnie, ale skoro w eclipse ustawiłeś 16MHz a procesor z dzielnikiem jest taktowany częstotliwością 2MHz to chyba sam widzisz, że coś jest nie tak w tymi Twoimi ustawieniami z eclipsa. Dlatego napisałem Ci abyś ustawił w programie częstotliwość np. 1MHz i zobaczył jaki to będzie miało wpływ na szybkość działania aplikacji.
Jaka prędkość transmisji baud ? Schemat masz poprawny.
[syntax=c]uint8_t TERMOMETR_ODCZYTAJ_BAJT() { uint8_t i=8,n=0; while(i--) { n>>=1; n|=(TERMOMETR_ODCZYTAJ_BAJT()<<7); } [/syntax] Masz + za to że sam podjąłeś się napisania tego, ale timingi w sposób jaki masz zrealizowane nie mają szansy działać zbyt dobrze. Twoja funkcja która wkleiłem teoretycznie trwa na zawsze w praktyce stos się w...
Diody masz podpięte bezpośrednio pod porty ATmega? Jeśli tak to lepiej dołóż sobie oporniki aby nie spalić wyjść ATmegi. Bezpośrednio przy procku daj kondensator 100nF. Przed stabilizatorem np. 1000uF, a za stabilizatorem 100u (to i tak za dużo, ale lepiej więcej niż za mało). Zliczanie zrealizowałbym w taki sposób: - Odpalić któryś z wewnętrznych timerów...
A jaki timer stosujesz do PWM? No i prędkość Uc "$crystal = 1000000" tez nie jest za wielka.
Żeby coś wysłać trzeba najpierw zainicjować uarta , ustawić prędkość i parametry , a ja nie zauważyłem żebyś to zrobił .
Proponuję ściągnąć najnowszą wersję WinAvr. Jest tam biblioteka do obsługi NMEA. Znajdziesz tam też obsługę UART'u do komunikacji uC i GPS. Na forum AVRFreaks jest też trochę postów na tamat GPS. Pozdrawiam Piotrek
Witam. Mam pytanie dotyczące pomiaru prędkości wiatru przy pomocy mikrokontrolera ATMEGA i transoptora szczelinowego TCST1103. Mianowicie samo urządzenie składa się z czaszy obracającej się z daną prędkością, co będzie poruszało czymś w rodzaju zębatki, dzięki temu, że na zębatce są szczeliny mikrokontroler będzie otrzymywał impulsy. A pytanie moje...
Atmega ma taktowanie 8MHz a prędkość baud rate 9600. Cały czas pokazuje mi 100. Jak nie właczę przerwań to chodzi dobrze. A jak je właczę dla ADC np. to zaraz tylko wywala to samo 100.
Zmień typ zmiennej prędkość i powinno ci się skompilować.
Dodam tylko, że po drugiej stronie linii USART jest atmega 8, która poprawnie odbiera informacje.
W Twoim wypadku USART=UART max prędkość 9600 jeszcze idzie NADAJNIK: http://obrazki.elektroda.net/7_124714816... ODBIORNIK: http://obrazki.elektroda.net/100_1247150... podłączenie jest też banalne jak nadajnika 3 kabelki amega nie potrzebuje kwarcu ani innych elementów to co jest na schemacie wystracza program tez moge podać przykładowy...
SHT1X działa na 3,3V, może prędkość transmisji masz za dużą jak na to napięcie.
Jeśli coś jest nie tak przez to wyłączenie kompa, co mało prawdopodobne ale jednak, to nic nie zrobisz. Spróbuj zmniejszyć prędkość transmisji. A najlepiej kup nową, jeśli objawy znikną, będziesz miał poczucie dobrze wydanej kasy, jeśli nie znikną, to będziesz miał zagwozdkę:)
Jak masz ustawione fuse bity ? Nie masz przypadkiem włączonego dzielnika zegara przez 8 ? Możliwe że używasz wewnętrznego oscylatora RC 8MHz podzielonego przez 8 czyli układ pracuje na 1MHz wyślij coś na próbę z AVR i sprzwdź czy prędkość jest 9600 a nie 1200
Bo aktualne technologie druku 3D to są na takim poziomie, że 8 bitowe MCU dają radę. I to zdecydowanie nie procesory są wąskim gardłem tych urządzeń. Chyba chyba nie wiesz co piszesz... Cały proces druku 3D wygląda tak: Model 3D jest cięty na warstwy w slicer, tam są obliczane komendy gcode potrzebne do wykonania danej warstwy, czyli ile milimetrów...
Bardzo dużo osób nie zwraca uwagi na to czy mikrokontroler ma na końcu oznaczenia literkę A , PA , PB . W większości przypadków programy działają na pierwszy rzut oka normalnie , różnice i poprawki bywają nawet w seriach układów bo producent poprawia jakieś . Ja sugerował bym w twoim przypadku skorzystać z nowszego układu ATMEGA 88 PA lub PB. Poza tym...
Są chyba 2 odpowiedzi: 1- http://www.elektroda.pl/rtvforum/topic13... 2- Zadeklarowana prędkość w programie musi być taka sama jak prędkość w Uc. Inaczej wszystko może źle działać.
Przeszukaj wiatromierze, byłe ciekawe konstrukcje. Ciekawe na ile sprawdził by się pomiar prędkości GPSem (tez coś podobnego było).
Może spróbuj zmniejszyć prędkość transmisji SPI będzie bardziej odporna na zakłócenia. Zobacz co wtedy.
Tak, co prawda dookoła rzyci, ale da się . Przykładowo komunikację 115200 uzyskasz wybierając "ATmega328P", zaś 57600 - "ATmega328P (Old Bootloader)". Inne prędkości pewnie też można uzyskać, np. instalując bibliotekę dla ATmega i gadając do modułu nie jako do Nano, ale jako ATmega328, mając wtedy jawnie do wyboru częstotliwość procesora i prędkość...
Witaj. Jako osoba pisząca w asm to sprawdzanie jest dla mnie przekombinowane, i jest to wynik działania jakiegoś kompilatora, dlaczego? dlatego: 1) zmiana stanu pinu może nastąpić pomiędzy odczytami portu a po niej jest kilka cykli więc nie chodzi tutaj o pilne i dokładne wykrycie tej zmiany. 2) analizując zapis można to zrobić o wiele prościej i będzie...
atmega prędkość atmega licznik prędkość atmega prędkość rs232
nadajnik niskich częstotliwości długość bagnet linka sprzęgła xsara
hulajnogi elektryczne problemy różnicówka brzęczy
Schemat ładowarki Bosch AL1860CV - analiza i diagnostyka Przypadkowe załączanie sprzęgła K2 w DSG DQ250