66 osoby widziały ten post, ale tylko jedna odpowiedziała. Wiesz dlaczego? Ponieważ Twój kod i schemat są nieczytelne. Jakie mosfety włączają zasilanie? Czy korzystasz z mosfetów logicznych? Przepisz kod tak, aby każdy pin, i port, do którego się odwołujesz miał swoją nazwę (przy użyciu #define lub const). Na podstawie tego, co podałeś mogę stwierdzić,...
Na 100% w Prescaler było to R na końcu? Bo w timerach jest Prescale, ale w ADC jest Prescaler ;) Bo skopiowałem dokładnie ten kod, który udostępniłeś, dodałem tylko i wyłącznie to r i normalnie się skompilował na bascom-avr 2.0.7.5
Jaka jest maksymalna częstotliwość pracy kwarca wewnętrznego Atmegi8? ATmega nie ma w środku kwarc u , tylko oscylator RC, to tak gwoli ścisłości. Mam ustawione 4Mhz i kiedy ustawiam prescaler w timerze 16bitowym na 64 (TCCR1B|=1<<CS11|1<<CS10;) tak aby przerwanie spowodowane przepełniniem timera było wywoływane mniejwięcej co 1s 4000000/64/2^16...
spróbuj tak : Config Adc = Single , Prescaler = Auto Start Adc Dim N0 As Word N0 = Getadc(0) w N0 masz wartość napięcia gdzie 1023 to 5V a 0 to 0V
(at)seba_x:A co to za bzdura?:> • Peripheral Features – Two 8-bit Timer/Counters with Separate Prescaler, one Compare Mode – One 16-bit Timer/Counter with Separate Prescaler, Compare Mode, and Capture Mode A co do pytania autora, nie, zliczanie umożliwiają tylko dwa pierwsze timery. Trzeciego można używać jako wewnętrznego. Nie tylko...
Witam... Generalnie rzecz biorąc procedury opóźnienia czasowego nie nadają się do modulowania diody IR... Częstotliwość nie jest zbyt stabilna to raz... Dwa nie uzyskasz 36kHz musisz skorzystać z dobrodziejstw timera... Np. tak... #include<avr/io.h> #include <avr/interrupt.h> #include <avr/signal.h> #include <inttypes.h> int...
\ 1. Rozumiem, że ustawienie odpowiedniej częstotliwości da mi czas, który jest mi potrzebny? Tak, program z tego postu demonstruje rejestry i bity których odpowiednie ustawienie spowoduje daną częstotliwość przerwać timerów, a w konsekwencji odpowiednią częstotliwość wysyłania tekstu / migania diodą, jednak obecny ustawiony czas jest przykładowy, nawet...
Witam , wklejam kod jaki udało mi się wypocić. Miało być tak pięknie a wyszło jak zawsze :-( Ten twój kod jest oczywiście błędny. Po pierwsze, jeżeli stosujesz napięcie referencyjne wewnętrzne, to dla AtMega 8 wynosi ono 2.56V. Zatem poziom napięcia mierzonego podanego na dowolny pin ADC nie może przekroczyc tej wartości. Jeżeli jednak ten warunek...
Chcę napisac własny program z wykorzystaniem Timerów. Na początek proszę o wytłumaczenie dlaczego w poniższym programie: 1. wykorzystano podzial częstotliwości zegara (po preskalerze 256) 250/125 zamiast wykonac jedno dzialanie? 2. uzyto wartość początkową Timera0 = 250 przed Petlą do Loop End . O ile wyjaśnienie podane przez Tomq jest błędne(!) Load...
Jak zwykle czasu nie ma, ale nie mogłem się powstrzymać. Nakręciłem pierwszy klip - ahahahaha :D No musiałem się pobawić edytorem. Efekt to półtora minuty magii :D Ahahaha miałem kupę zabawy z tym :D Przy okazji możesz zobaczyć jak się używa wbudowanego symulatora by zadawać wartości ADC ;) Twój pomniejszony kodzik też poniżej, tylko używając poza symulatorem...
Atmega w ""Arduino NANO" - jakie napięcie zasilania i jak zmienić częstotliwość procesora? Mam układ na "Arduino NANO" (mój akurat z Atmega 168a) na napięciu 3,3V i chciałem obniżyć taktowania z fabrycznych 12 MHz na coś dużo mniejszego < 4 MHz. Z dwóch powodów: 1. Regularnie mam problem z zaprogramowaniem układu. Zauważyłem, że (chyba) problem rzadziej...
WinAVR-20050214 , czyli najnowsza wersja z http://sourceforge.net/projects/winavr/ . Właśnie nie mogę dojść do powodu tego przepełnienia, jak typ danych przybierają domyślnie wartości z #define lub jak tym manipulować, gdy są wyrażenia matematyczne ? Trochę przekombinowałem, nie wkleiłem w całości ten kod, z którym mam problem, bo jest on w rzeczywistości...
Robi się to prosto na wejściu ICP Atmegi, mierzysz czas pomiędzy kolejnymi zboczami, raz jest opadające, raz narastające itd.. potem to tylko interpretacja wyników, liczenie bitów i po odliczeniu 64 bitów z transmitowanych 66, bo dwa ostatnie dla uproszczenia procedury pomijasz. wyświetlasz na LCD lub wysyłasz po RS232 do komputera, a tam wyświetlasz...
Po pierwsze, jest zmienna o nazwie "swr" oraz próba deklaracji podprogramu o tej samej nazwie. Najprościej zmienić nazwę podprogramu na inną. Taki kod mi się skompilował: [syntax=vbnet] '---------------------------------------... ' SWR-Meter DL8UA '---------------------------------------... $regfile = "m8def.dat" $crystal...
https://obrazki.elektroda.pl/9337556500_... Pewna wyjątkowa osoba zasługiwała na równie wyjątkowy prezent, a że nie jestem fanem kupowania niespodzianek, postanowiłem "zrobić" coś własnym rękami. 1. Wstęp, motywacja 2. Zarys konstrukcji 3. Płytka z diodami - projekt (łączenie diod) 4. Płytka z diodami - projekt (zatrzaski) 5. Eagle...
http://obrazki.elektroda.pl/9003064100_1... Jakiś czas temu popełniłem miernik do pomiaru częstotliwości i okresu w zakresie od 1 Hz do 1 GHz i po przygotowaniu dokumentacji postanowiłem go pokazać. Miernik dysponuje dwoma zakresami 1 Hz – 70 MHz i drugi 70 MHz– 1 GHz. Tak na prawdę na wyższym zakresie można dokonać pomiaru...
CONFIG ADC = single, PRESCALER = AUTO, REFERENCE = INTERNAL Wewnętrzne napięcie odniesienia to ok. 2,56V. Przetwornik będzie mierzył od 0 - 2,56V. Cały zakres pokryje swoją rozdzielczością.
Witam ponownie, Poszedłem o krok dalej i moim planem jest podłączenie każdego z czterech wtryskiwaczy do osobnego pinu Arduino Uno/Nano z Atmega 328p. Pozwoliło mi to na skonstruowanie programu aby sterować każdym wtryskiwaczem z osobna z tą samą częstotliwością i wypełnieniem, ale sygnał do ich wysterowania jest przesunięty około 90° (problem z rozdzielczością...
Mam problem z uruchomieniem przerwania, kombinowałem wiele razy z różnymi ustawieniami jednak nie obserwuję zmian na porcie PD7, PWM na porcie PB3 działa (przebiegi obserwowane na oscyloskopie). Mikroprocesor to ATmega 16 taktowana z kwarcu 16 MHz. Może ktoś zerknie świeżym okiem i doradzi. #define F_CPU 16000000 #include #include #include #include...
Mam problem z plikiem w którym brakuje zamykającej klamry. Szukam jej od dwu dni i już dostaje oczopląsów. POMÓŻCIE proszę ślepemu odnaleźć błąd. // ################################## // ###### SOLAR_MONITOR SYSTEM ###### // ######## ZEGAR STERUJACY ########## // ################################## // created margas 2012 modify 2025 // fusebity atmega...
Patrząc po twoim filmie bardzo rzadko zbierasz próbki (157 próbek, a potem około 1s przerwy), tak więc twoje charakterystyki są bardzo statyczne. Tutaj chyba chodzi o to żeby zbierać jak najczęściej i jak najczęściej wyświetlać. Dla porównania dwa filmiki: Twój: Patrz od 1:27 do 1:36 [youtube]http://www.youtube.com/watch?v=... Mój...
Gdzie dorwałeś ten prescaler MB506L?
Witam! Jestem osobą początkującą i chciałabym prosic o pomoc przy zmianie fragmetu kodu, ponieważ nie bardzo wiem gdzie tego szukać w datasheet. Obecnie mam coś takiego: [syntax=c] void Init_Timer() // Inicjalizacja przerwania Timera (co pół sekundy dla 8MHz wewnętrznego) { TCCR1B |= (1<<WGM12)|(1<<CS11)|(1<&... // set prescaler...
Niestety Bascom jest niedorobiony. Ilez to ja niekiedy spedzilem czasu bo cos mi nie chodzilo. Co wersja to inny blad. W jednej wersji nie chodzily mi np. timery na Atmega 16, prescaler blednie sie ustawial itp. Warto jest podgladnac rejestry i sprawdzic czy aby Bascom nie wpisal tam glupot. Jesli wpisal glupoty a to najczesciej jest przyczyna probowac...
Witam, Chciałem napisać program do liczenia 'sekund'. Jest to początek mojej drogi do zrobienia zegara. Problem jest taki, że po 5 minutach zegar spieszy już o 3 sekundy. Gdzie popełniłem błąd? Prescaler ustawiony na 1024, atmega na 8MHz na kwarcu wewnętrznym(może tutaj jest problem?), według informacji które posiadam przerwanie powinno być generowane...
Witam, bardzo proszę o pomoc. Zrobiłem układ na Atmega32 z podłączonymi diodami do całego PortuA, oraz do PortuB Pin2 (PB2) dekoder podczerwieni TSOP31236 (testowałem też na TSOP31238). Wykorzystać chciałem bibliotekę IRMP https://obrazki.elektroda.pl/6945425800_... a w załączniku spakowany cały projekt z plikami biblioteki irmp.
Witam, zerknij https://sites.google.com/site/qeewiki/bo... [syntax=c]// this code sets up counter0 for an 8kHz Fast PWM wave (at) 16Mhz Clock #include <avr/io.h> int main(void) { DDRD |= (1 << DDD6); // PD6 is now an output OCR0A = 128; // set PWM for 50% duty cycle TCCR0A |= (1 << COM0A1); // set none-inverting...
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.
Witam, sprawa się wyjaśniła. Nie wystarczy Config Adc = Single , Prescaler = Auto , Reference = Avcc Żeby to działało to jeszcze aref (teoretycznie nie używany) nie może być umasiony. A u mnie był. Po uwolnieniu aref od masy było lepiej, ale szumiało. Ostatecznie połączyłem Aref kablem do +5V, zmieniłem [...] Reference = Avcc i jest dobrze. dziękuję...
Witam, Proszę o wskazanie błędu, nie chce mi skompilować programu - błąd w bascomie wyświetla w ostaniej linijce czyli w komendzie END - nie mam już pomysłu co jest nie tak [syntax=vbnet]$sim $regfile = "m8adef.dat" $crystal = 8000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portb.3 , Db5 = Portb.2 , Db6 = Portb.1 , Db7 = Portb.0 , E = Portb.6...
(at)marcin w Nie zgodzę się z tobą. Od końca - dobry programator jest praktycznie niezniszczalny. Mam od lat AVR Dragon, ostatnio użytam Atmel-ICE, przeżyły odwrotne podłączenie zasilania, zwarcia, potop i dzieci i ciągle działają. Mam też droższe programatory, ale IMHO nie są lepsze niż te najtańsze Atmela. USBASP jest tani, ale to jedyna zaleta....
Temat z pozoru banalny. Atmega 2560, działa poprawnie, obsługuje LCD kolor i inne peryferia. Potrzebuję mierzyć dwie rezystancje (panel dotykowy). Używam więc standardowo dwóch wejść ADC. Konfiguracja zasilania Atmegi typowa : AREF przez 100nF do masy, AGND do masy, AVCC przez dławik do +5V, oczywiście 100nF do masy - słowem klasyka. Kawałek kodu w...
No ale potencjometry to musisz podłączyć do PortC.0 i PortC.1. Wiesz o tym? I na początku programu daj: Config Adc = Single , Prescaler = Auto , Reference = Avcc Start Adc
witam, próbuję osbłużyć akcelerometr ADXL345 po i2c, ale komunikacja zawiesza się po pierwszej komendzie i w ogóle program nie wchodzi do pętli while(1). jak zakomentuje linijkę: i2cTransmit(ADXL345, POWER_CTL, 0) w mainie; to ATmega wysyła po USARCIE dane bez problemu, w przeciwnym razie zawiesza się. o to listing programu: ATmega168 + 20 MHz, na samym...
Z mojego kodu: // ADC Prescaler Select Bits: Division Factor is 128 , for 16MHz CPU
(at)dondu Aha. Spróbuje Twoją metodą. Mam jeszcze pytanie: czy jeżeli zastosuje taki zamiennik delay: [syntax=c]int lpDelay(int quarterSeconds) { int oldClkPr = CLKPR; // save old system clock prescale CLKPR = 0x80; // Tell the AtMega we want to change the system clock CLKPR = 0x02; // 1/256 prescaler = 60KHz for a 16MHz crystal delay(quarterSeconds);...
Witam, Potrzebuję wycisnąć a ATmegi32 maksymalną prędkość ADC. znalazłem wiele artykułów, i w większości z nich zrobione są wstawki w języku Assembler, dzięki którym Atmega korzysta tylko z 8 bitów przetwornika. Wiem że ustawia się to bitem w rejestrze "ADLAR", ale niestety całość musi być napisana w ASM, bo Bascomowa komenda "getadc()" i tak konwertuje...
mam jeszcze jedno pytanie dorwałem program w bascomie wsad do innego sterownika na podstawie jego zaprojektowałem schemat . Moje pytanie jest takie czy nie popełniłem błędu w rozumowaniu i na podstawie tego będzie to chodzić ?. I ostatnie pytanie nie rozumiem co ma w programie robić pinD.2 program się wiesza jak zaremuję to (input ster) to program w...
Witam dopiero zaczynam przygodę z programowaniem mikrokontrolerów i mam pytanie odnośnie odmierzania czasu na uc atmega 16. Odmierzam czas przy pomocy timera1 kwarc 16MHz. Z obliczeń wynika, że przy preskalerze 1024 muszę odliczyć 15625 impulsów więc ładuję do timera wartość 49911 i wtedy uc odmierza mi około 4 sekund zamiast 1, natomiast gdy prescaler...
Witam dopiero zaczynam przygodę z programowaniem mikrokontrolerów i mam pytanie odnośnie odmierzania czasu na uc atmega 16. Odmierzam czas przy pomocy timera1 kwarc 16MHz. Z obliczeń wynika, że przy preskalerze 1024 muszę odliczyć 15625 impulsów więc ładuję do timera wartość 49911 i wtedy uc odmierza mi około 4 sekund zamiast 1, natomiast gdy prescaler...
Witam, Niedawno na forum poruszyłem temat problemu z uruchomieniem komparatora wewnętrzego Atmegi 8 w Bascomie. Dla zainteresowanych tutaj jest http://obrazki.elektroda.pl/2534065600_1... Cały problem polega na odpowiednim (programowym) "podłączeniu" wejść ADC do drugiego z wejść komparatora. Po przeszukania helpa Bascoma i wujka Google,...
Witam Mam do podłączenia czujnik temperatury KTY81-210. Piszę w bascomie. Przeglądając różne fora pl i zagr. poszukując odpowiedzi mam coś takiego. Ogólnie działa, sprawdzałem na razie w dwóch temp. wzorowałem się termoparą typu-K z miernika :-). Temperatury były zbliżone do siebie..... A chciałęm się dopytać o kod który podałem z czego wynikają te...
W takim razie: w jak sposób i w którym miejscu następuje podłączenie głównego pliku irmp.c z poziomu irmp.h? W źródłach IRMP są przykłady jak używać z konkretną rodziną procków. irmp_get_data Powyższy plik mógłby być po prostu bazą dla twoich funkcji. Najważniejsze oczywiście jest to, że irmp.c musi być poddane kompilacji a potem linkowaniu. W tej...
Witam. Chciałem wykorzystać w Atmedze 128 Timer1 do wykonania zegara zliczającego sekundy. W tym celu ustawiłem go w trybie CTC i po zliczeniu do 62500 (taką wartość wpisuje do OCR1A] powinno nastąpić przerwanie. Nie wiem czemu tak się nie dzieje. Atmega taktowana jest kwarcem 16MHz. W układzie cały czas aktywne jest globalne zezwolenie na przerwania...
Ok zrobiłem takie coś i jedynie co robi to ściemnia diodę :-( Dane z odbiornika podpięte pod ADC0 w Atmega [syntax=vbnet]$regfile = "m8adef.dat" $crystal = 8000000 'zewn. L:FF, H:D9 Config Adc = Single , Prescaler = Auto , Reference = Avcc Dim Pomiar As Integer Spiinit Config Portb.1 = Output 'TX ON, disable CLK Start Adc '=======================================...
Witam! FµC=8 MHz , prescaler = 1024. Timer 0. Wychodzi częstotliwość: 7812.5 Hz = 7.8125 kHz. Wyświetlacz 7 segmentowy 4 cyfrowy migocze właśnie przy takiej częstotliwości. Dopiero przy preescalerze 64 jest OK. Czy to jest normalne? Przecież już przy 4 * 50 Hz = 200 Hz nie powinno migotać. :/
Dzięki, już działa. Wiedziałem, że mogę liczyć na forumowiczów :] ... Chociaż może nie do końca, bo teraz tylko timer 2 działa ;/ a 0 stoi. [syntax=c]void Timer0Init(void) { TCCR0 = 1<<CS01|1<<CS00; // Prescaler 64 TCNT0 = 128; // ~ 1.0 ms TIMSK |= 1<<TOIE0; // odblokowanie przerwania od licznika } void Timer2Init(void) { TCCR2 = 1;...
Zrobiłem i dalej lecą same 0 :(( oto kod w 2 Atmega 128 (ten co ma mierzyć): $regfile = "m128def.dat" $crystal = 16000000 $baud = 9600 $hwstack = 32 $swstack = 10 $framesize = 40 Dim W As Integer Dim L As Integer Config Watchdog = 2048 Start Watchdog Reset Watchdog Config Adc = Single , Prescaler = Auto , Reference = Internal Start Adc L =...
Witam! Na wstępie napisze ,że napisałem tu ten temat ,bo nie są kasowane za to żadne punkty. Napisałem taki prosty program: [syntax=basic4gl]#include <avr/io.h> #include <util/delay.h> int main() { ADCSRA = (1<<ADEN) //ADEN=1 włączenie przetwornika ADC) |(1<<ADPS0) // ustawienie preskalera na 128 |(1<<ADPS1) |(1<<ADPS2);...
dokumentacja mówi o 13 cyklach zegara adc, minimalny prescaler 2 - więc samo wchodzenie do przerwania, przygotowywanie kontekstu (odkładanie rejestru stanu etc) będzie bardziej czasochłonne... w tym przypadku zdecydowanie trzeba pobierać próbki bezpośrednio w kodzie... ja posługuje się dokumentacją od atmegi16, więc mogę być w błędzie...
prescaler atmega atmega prescaler timer prescaler bascom
suszarka suszyć indesit zamek wkładkę przeglądy mercedesa
termet sonda temperatuowa sprzedam radio
Zablokowany obiektyw w aparacie Kodak - co robić? Renault Celtis - brak przepływu oleju na hamulce przyczepy