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
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ć,...
(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...
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
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...
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...
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...
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...
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, 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...
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ę...
(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....
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...
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.
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
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.
(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 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...
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, 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. 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...
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...
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;...
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ć. :/
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 '=======================================...
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);...
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...
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...
Znalazłem coś takiego (kod napisany przez Flapo213) i lekko zmieniłem. Dodałem kawałek kodu do main.c, który miał wyświetlać wartość adc_value na LCD 2x16, ale ciągle wyświetlało się tylko "0" (części kodu odpowiedzialnej za wyświetlanie nie wstawiłem, ale z nią wszystko jest w porządku). main.c #include "Adc.h" int main(void) {...
Witam Forumowiczów Jeśli dział niewłaściwy proszę o przeniesienie;) Mój problem polega na tym iż chciałbym za pomocą pwm-a zawartego w mikroprocesorze Atmega8 wysterować powiedzmy żarówkę (lub cokolwiek innego) ze zmiennym napięciem regulowanym pwm. A mianowicie wszystko gotowe poskładane i tu mały problem. Atmega kwarc 16MHz, timer 8bit , prescaler...
prescaler atmega atmega prescaler timer prescaler bascom
odblokować tablet lenovo instrukcja centralnego zamka wymiana pompa sprząc
Luz zaworowy w skuterze Peugeot Satelis 125 Czy gramofony Lenco są dobre? Opinie i recenzje