Przecież obsługa timera w AVR i '51 jest inna , zobacz jak wygląda konfiguracja dla obu wersji .
........, a podpowiedzcie mi jak mogę obsłuzyc Rc5,serwo i pwm? Pozdraiwam Dla obsługi RC5 i kontroli serva użyłeś w sumie 2-ch timerów... ATMega8 posiada wbudowane 3 timery , zastosuj więc ten trzeci do 'produkcji' PWM''. Jeżeli ten ostatni (dotychczas wolny) jest Timer1, to ma on dwa kanały dla PWM, na których możesz generowac praktycznie dwie różne...
Timer 0 w atmedze8 nie ma pwm. Powinieneś użyć Timera 2, czyli rejestrów TCCR2 i OCR2.
Jest mozliwa taka konfiguracja "Config Rc5 = Pinb.2 , Timer = 2" P.S. przepraszam za moj "Polski jezyk" jestem Czechem :-)
Ustawiam preskaler na 8 i mam częstotliwość prawie 300 Hz a potrzebuje 2 razy tyle jak to zrobić, bo przecież nie mogę ustawić preskalera na 4? Czyli przynajmniej jedno można stwierdzic, że taktujesz processor 1,2 MHz; a nie jak twierdziłeś i zakładałeś wczwśniej; 9600 000(!)_ Twoja konfiguracja timera0: Phase Correct PWM i otrzymany wynik częstotliwości...
Znalazlem jakis stary programik.... odczyt 2 kanalów ADC z częstościa 100 razy na sekunde... Analize pozostawiam Tobie...(podpowiem że Help wszystko wyjaśni) Pozdrawiam $regfile = "m8def.dat" $crystal = 11059200 $baud = 19200 Config Adc = Single , Prescaler = Auto , Reference = Off Config Timer1 = Timer , Prescale = 256 On Timer1 Pomiar Enable...
Przetestuj ten. Tak go poopisywałem, że aż mi się nie podoba :D [syntax=basic4gl]$regfile = "m8def.dat" $crystal = 8000000 $hwstack = 40 $swstack = 16 $framesize = 32 '# wyświetlacz Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , E = Portc.4 , Rs = Portc.5 Cls '# timer ' 8000000Hz(8MHz)/256(Prescaler)=...
Odkomentuj, czyli zdejmij ten pierwszy apostrof z tej linii : 'Set Tccr0b.0 (W IDE Bascom linia 57) To włącza taktowanie Timera0 z preskalerem 1 czyli z prędkością CPU. Bez tego Timer po prostu stoi w miejscu. Nie wiem tylko czy Timer pozwoli wyłaczyć te LED`y tym poleceniem po "Stop Timer0" bo to tylko zdejmuje taktowanie a konfiguracja do PWM raczej...
http://obrazki.elektroda.pl/7139682100_1... Witajcie Wlasciwie jest to moj pierwszy temat na forum wiec prosze z gory o wyrozumialosc. Przepraszam rowniez, za brak polskich fontow, ale pomimo prob wielu nie ogarniam wiekszosci ogonkow z racji lokalizacji :/ Przyszly swieta, czas urlopu i odpoczynku... Niestety wraz ze swietami przybyla...
(...) żdy zasilany z osobnego źródła i odseparowany transoptorami PC817. Ze względu na ich szybkość oraz niską wartość prądów je sterujących 1mA zegar musi być obniżony do 10KHz ma. Chcę zrezygnować z polecenia: waitus 100 w zamian zrealizować to w obsłudze timer0 a w główną pętle przeznaczyć na inne cele. Rozumiem, że chcesz optymalizować swoje oprogramowanie...
witam! dziękuję za podpowiedź ale mam wyłączony ten fusebit. jeszcze przed chwilą dla pewności sprawdzałem:) sprawdzałem jeszcze jedną rzecz: ustawiłem dla obu timerów wartość początkową = 50 i powoli zwiększałem ją o 1. na obu timerach częstotliwość równo się zmieniała aż do momentu jak timer 3 osiągnął wartość 255(wtedy zaczął szaleć) natomiast timer1...
Witam Z ciekawości uruchomiłem czujnik MPU6050, kod wykorzystałem z jednej z niemieckich stron - poniżej. Nie jestem pewien, czy kod jest poprawny, bo wyniki są bardzo "ruchliwe". Tzn. gdy płytka czujnika leży nieruchomo na stole to wyniki się zmieniają i o to sporo. Przykładowo: Accx zmienia się od np 10 do 270 Accy cały czas jest duże - nawet ponad...
Czesc mozcie mi napisac jakas przykladowa procedurke obslugi pwm w bascom AVR? nie moge sobie z tym poradzic, niby wszystko konfiguruje, ale timer nie chce zliczac i nic sie nie dzieje. Jest jakies polecenie do wystartowania pwm? czy wytarczy start timer0 ? pozdrawiam Marcin
Wszystkie Timery układu Mega32 mogą generować sygnały PWM: Timer0 - jeden kanał: OC0 - PB.3 Timer1 - dwa kanały: OC1A, OC1B - PD.5, PD.4 Timer2 - jeden kanał OC2 - PD.7 Na wejściach T0 i T1 liczniki nie generują sygnałów PWM. Co do samej konfiguracji to problem jest prawie żaden. W przypadku Timer1 sprawa jest prosta, gdyż CONFIG TIMER1 posiada wszelkie...
Z tym zawsze zdążysz. próbuję zrozumieć intencję użycia Timer4. Napisz może po co ci ten Timer i jaki tryb ma być działania? PWM? CTC? Timer? Jaką funkcję ma realizować?
Przy kwarcu 12MHz dźwiek minutnika z buzera jest bardzo niskotonowy, parametry polecenia sound też nie regulują częstotliwości, przy 11,59200MHz jest oki. Dodano po 1 Proszę o sugestie/pomoc... Dodano po 4 Konfiguracja timer0: Config Timer0 = Timer , Gate = Internal , Mode = 2 Load Timer0 , 39150 Enable Timer0 Enable Interrupts Reset Odliczanie On Timer0...
Myślę że forum jest nie tylko po to by pytać. Kolega zdążył zamknąć wątek i napisał że Bascom nie pozwolił na skonfigurowanie Timera i musiał to zrobić na rejestrach. Nie wiedział jak, a ja chciałbym dla potomnych zostawić instrukcję. Dołączyłem ten post i odblokowałem temat. Tak to wygląda i się kompiluje: [syntax=basic4gl]$regfile = "m128def.dat"...
Config Timer1 = Counter , Edge = Rising ,Noise Cancel = 1, Prescale = 1 , Compare A = Disconnect,Compare B = Disconnect Nie działa Config Timer1 = Counter , Edge = Rising , Noise Cancel = 1 , Capture Edge = Rising , Compare A = Disconnect , Compare B = Disconnect , Clear Timer = 0 Działa THX
Witam zainteresowanych tematem. Uplynelo juz wiele dni kiedy ostatni raz opisalem swoje dzialania z modulem RFM65W. Teraz zebralem wiele doswiadczen i doszedlem do wniosku, ze ustawienie rejestrow w RFM65W jedynie udalo mi sie za pomoca ARDUINO po wgraniu programu w /w tego opisu. https://forum.arduino.cc/index.php?topic... Ale to jest przejsciowe...
...to banalnie proste :D zalaczasz timer gdy pojawi sie na pinie masa...czekasz na wystapienie jedynki...i patrzysz ile timer zdazyl zliczyc...:D lub... timer chodzi caly czas...gdy pojawi sie masa zapisujesz stan timera a gdy sie skonczy takze zapisujesz... odejmujesz to pierwsze i juz masz :D prawda ze bardzo proste ?? :D Nikt nie bedzie pisal kodu...
Witam Jestem w trakcie robienia zagara nixie ze strony http://mirley.firlej.org/zegar_nixie Mikrokontrolerem jest Atmega8 a wkład zrobiony na Bascomie. Potrzebuję dodać opcję chwilowego wyłączenia lamp, w celu zabezpieczenia lamp przed zatruciem. Bardzo proszę o pomoc. To kod: '************* Konfiguracja uC ***************** '***************************************...
Z tego co porównuję z listingiem źródłowym z książki to masz kilka błędów: W książce jest błąd, o którym pisałem wyżej. oraz wyrzuć konfigurację jeżeli chce korzystac z timera2 i kwarca zegarkowego to ta konfiguracja jest konieczna. [/quote] e marcus
Witam panów na forum mam problem mianowicie mam kod żródłowy napisany w Bascomie na sterowanie piecem C O i na początku chciałem go sobie poddać analizie żeby go zmodyfikować pod swój układ nie rozumiem co oznacza konfiguracja timera Oto początek programu $large $crystal = 12000000 deklaracja kwarcu Config Lcd = 16 * 2 deklaracja wyświetlacza Cursor...
jak ustawisz na counter to liczy z wejscia p3.4. a teraz gate=internal/external to jest tylko ustawienie czy timer bedzie wlaczeny programowo czy sprzetowo. jak dasz external to timer liczy gdy na p3.2 jest stan 0
Witam Jakoś dziwnie to napisane. Przede wszystkim jak piszę TIMER to nie używam potem OVF1. Jakoś mi to brzydko wygląda choć działać powinno. Skoro chcesz mieć jeden odczyt na dwie sekundy to zrób to zupełnie inaczej. Np. w programie głównym zrób sobie licznik i dla wartości powiedzmy jeden niech wyśle rozkaz do DSa ażeby przetwarzał temperaturę. następnie...
robisz tak $regfile = "m8def.dat" $crystal = 8000000 Config Timer2 = Timer , Prescale = 256 , Async = On On Timer2 Odmierz_1s Enable Interrupts Enable Timer2 Counter1 = 128 Do Loop End Sub Wysw End Sub Wart_bcd = Makebcd(godziny) Wartosc = Bcd(wart_bcd) Wart_bcd = Makebcd(minuty) Wartosc = Bcd(wart_bcd) Wart_bcd...
Mam pytanie. Jak odpalic timer3 w m128 w roli PWM. Timer ten ma trzy wyjscia OC3a/b/c. Problem w tym, ze Bascom zachowuje sie tak jakby tego timera nie bylo. Napisalem programik testujacy i .upa >> error 46 - bledne przypisanie << wszedzie tam gdzie jest przypisanie Pwm3x = wypelnienie. W e wszystkich innych timerach (0,1) to przypisanie...
Dziękuję kolego e marcus za wszelkie rady i instrukcje, zaraz poprawiam konfiguracje portu b. Według mnie przerywanie co 100ms jest używane przez program w pętli głównej programu, ponieważ co 100ms odwołuje się do 3 pod programów. Popoprawiałem wyszło coś takiego i działa jeszcze raz dziękuje wszystkim za pomoc: [syntax=basic4gl] '************* Konfiguracja...
Witam. Wlasnie złożyłem sobie płytke z Atmega32. W Bascomie dziwnie to działa ;-) wgrałem najprostrzy program wlacz/wylacz Led. opoznienie wpisuje jako waitms XXX - czy jest to wartosc 10ms czy 1000 ms zapalanie i gaszenie diody trwa bardzo długo. Zostawiłem narazie Bascom i wziałem sie za C. Tutaj opoznienie realizowałem przez zastosowanie petli i...
Witam zastosowanie timera w konfiguracji licznika w takim wypadku się nie sprawdzi. Naciśnięcie i puszczenie niesie za sobą efekt uboczny czyli drgania styków. Przez to twój licznik przy jednym naciśnięciu przycisku zalicza kilka impulsów. Taka konfiguracja timera jest przystosowana do stabilnych (czyt. nie drgających sygnałów) . Zamiast zaprzęgać do...
Jeżeli chodzi o notę atmega64 to wyraźnie jest napisane "6 PWM Channels with Programmable Resolution from 1 to 16 Bits" , chyba że ja tego nie rozumiem. No nie rozumiesz. Więc na zdrowy chłopski rozum to weź. Od 1 do 16 bitów ale dla timerów 16-bitowych natomiast od 1 do 8 bitów dla timerów 8-bitowych Więc teraz zajrzyj szczegółowo do noty i dla każdego...
Kolejny element układanki... łopatologicznie ;) bity CS10 do CS13 określają częstotliwość pracy timera, inaczej mówiąc wyznaczają czas aktualizacji (zwiększenia o jeden rejestru TCNT1). W zależności od trybu pracy rejestr ten jest porównywany z zapisanymi przez użytkownika nastawami w OCR1A (kanał A ), OCR1B (kanał B), OCR1C (dla uproszenia maksymalna...
konfiguracja TIMERA: [syntax=basic4gl]Config Timer0 = Timer , Prescale = 256 'konfiguracja Timer0 jako timer On Timer0 Przerwanie 'wywołanie procedury liczącej przy przerwaniu Enable Timer0 'włączamy Timer0 Enable Interrupts 'włączamy przerwania[/syntax] [syntax=basic4gl] Loop Prztimer: Incr Licznik If Licznik = 100 Then Licznik = 0 If Licznik = X Then...
Jdno pytanie czy ponizsza konfiguracja bedzie prawidłowa : Chodzi o to aby licznik zliczał impulsy wewnętrzne z kwarcu przez czas jaki na int0 bedzie stan wysoki. w momencie pojawiania sie zbocza opadającego aby program przchodził do obsługi przerwania : Fragmenty w bascom : config timer0 = timer , gate = external , mode =1 set Tcon.0 - reakcja na zbocze...
A nie ma ktoś gotowca na pomiar częstotliwości z wykorzystaniem TIMER0 i TIMER2? Już mnie powoli trafia.... ehh Nie,... nie mam ale powiem ci jak to zrobić... W zasadzie wystarczyłby ci tylko jeden dowolny timer do pomiaru częstotliwości, mierząc nim czas pomiędzy dwoma kolejnymi zboczami bądź to rosnącymi lub opadającymi. Procedurę tę możesz uskutecznić...
Witam Mam zegarek/budzik z wyświetlaczem LED ( dwukolorowy ). Zegarek generalnie działa. Ale mam problem z sterowaniem jasnością. Wiadomo, że robi się to tak, że jasność zależy od częstotliwości odświeżania. Tutaj o jasności wyświetlania ma decydować zmienna jasnosc. . jasnosc : [syntax=vbnet] '************ Timer0 1000 = 1 sekunda, 10000 = 10 sekund,...
Po całym dniu walki słabo opisałem mój problem bo już po prostu nie miałem siły :D Wyjaśniam... Zrobiłem sobie mikro serwerek LANowy na Atmedze32 i układzie ENC28J60. Z doświadczenia z tym układem i Atmegą wiem że znacznie stabilniej wszystko pracuje gdy mikroporocesor (Atmega) jest taktowana zegarem 25MHz z gotowego modułu ENC a nie własnym kwarcem....
Ten timer 0 jest raczej nie potrzebny. Za bardzo komplikujesz sprawę. Zrób tak: $crystal = 12000000 Config Timer1 = Timer Gate = Internal Mode = 2 Config Timer0 = Tiemr Gate = Internal Mode = 2 Enable Timer1 Enable Timer0 Enable Interrupts Dim P1 As Byte Dim P2 As Byte pwm: // to sie robi jak przerwanie z timera przychodzi inc P1 // inkrementacja...
Witam! Jakiś rok temu zainteresowałem się elektroniką. Zrobiłem kilka układów. Obecnie interesuję się programowaniem mikrokontrolerów. Zakupiłem na allegro zestaw uruchomieniowy EvB 4.3 ( wystarzczy, że wpiszecie w wyszukiwarce i będziecie wiedzieli o co chodzi) - inaczej po prostu płytka uniwersalna. Z tym, że przeważnie do tego zestawu jest dołączany...
Witam W Atmega 644 mam: EQU not found, probably using functions that are not supported by the selected chip Według noty Timer0 i Timer2 są 8-bitowe, więc można je "zamieniać" i mają oddzielne preskalery.
Zgadzam się z kolegą. Używanie polecenia wait to tak jakbyś strzelał z działa przeciwpancernego do muchy... Przykładowe skonfigurowanie licznika 16-bitowego w BASCOM tak żeby zliczał do 1s przy częstotliwości taktowania 16MHz: ( wszystkie ustawienia konfiguracyjne oraz deklaracja zmiennych ) Config Timer1 = Timer , Prescale = 256 ' konfiguracja licznika...
Witam, Mam problem z pomiarem czasu trwania impulsu. Próbowałem różnych sposobów, siedzę już nad tym 3 dzień i nic mi nie wychodzi. Na wejście INT0 atmegi32 podaję sygnał np. 30Hz i wypełnieniu 15%. Sygnał jest stabilny więc tutaj problem odpada. Potrzebuję zmierzyć czas trwania stanu wysokiego. W programie który stworzyłem na wyświetlaczu wyświetla...
Podałem wyraźnie, że oprogramowanie napisałem w WinAVR ;) Nie uznaję czegoś takiego jak bascom (wystarczyło mi raz w życiu się na nim przejechać...). Przedstawię "odchudzone" kody źródłowe - aby były całkowicie funkcjonalne należy troszkę dopisać. Ogólna idea jest przedstawiona. Sam main w programie jest niewielki. Dla przykładu pokażę jak zrealizowałem...
No przecież prosto. Konfigurujesz timer1 do pracy w normalnym ale nie robisz start timer. robisz przerwanie dzialajace na zbocze np. narastające-> Dalej : robisz zmienną flaga w przerwaniu robisz if flaga=1 then start timer1 flaga=0 else stop timer1 w rej od timera masz czas... kopiujesz gdzie Ci tam pasuje flaga=1 zerujesz licznik endif I tyle, oczywiście...
Witam czy ktos moze mnie oswiecic w jaki sposob zapisac wartosc do rejestru Counter1 pod bascomem ? Mam taki prosty program i za nic w siecie bascom nie che go lyknac ............. I taki oto blad ASSIGNMENT ERROR line 8 Procesor ma ten timer w sobie. Jezli to wina bascoma to w jaki sposob zapisac ta wartosc z poziomu jakiejs wstawki assemblerowj ?...
Witam Zakupiłem w Seguro moduł DCF77 na układzie MAS6180B. Wykorzystałem klasyczny kod Bascom ( mam wersje Bascom 1.11.95 ) Config Dcf77 ? Czy sygnał trzeba podawać przez dodatkowy tranzystor ? Np. przez taki układ http://obrazki.elektroda.pl/8336138700_1...
Witajcie. Robię malutkie projekty korzystając z Bascoma. Do tej pory wyłącznie na 2313 i jakoś sobie radziłem. W nowym projekcie postanowiłem zastosować Atmega8535 i od razu natrafiłem na problem. Mianowicie po włączeniu przerwań od Timer0 nic nie działa jak powinno. Pomimo tego że procedura obsługi wyświetlacza jest wołana z obsługi przerwania na wyświetlaczu...
Wydaje mi się, że nie uruchomisz PWM na tym procesorku. Oficjalna informacja: CONFIG TIMER0 = COUNTER , PRESCALE= 1|8|64|256|1024 , EDGE=RISING/FALLING , CLEAR TIMER = 1|0 CONFIG TIMER0 = TIMER , PRESCALE= 1|8|64|256|1024 Jak widzisz Timer0 nie da się ustawić jako PWM. Ale... Nieoficjalnie może Ci zadziałać jednak taka konfiguracja Timera0: Config Timer0...
hmm?? zacznijmy od tego, że masz źle konfigurację timerów... używasz wyjścia oc0a timera0 i oc1b timera1, a potem w programie odwołujesz się do rejestrów odpowiadających oc1a i oc1b... konfiguracja powinna być: Config Timer1 = Pwm , Pwm = 8, Compare A Pwm = Clear Up, Compare B Pwm = Clear Up, Prescale = 1 dalej operujesz na liczbach z zakresu 0-1023,...
Witam Testując kod Kolegi pusiek1974 do odbioru czasu i daty NTP, chciałem go rozbudować i dostosować do swoich potrzeb. Na początek jako, że kod używa Wait'ów, których chciałem się pozbyć, chciałem dodać wywołanie przez flagę od Timer'a. [syntax=vbnet]$regfile = "m16def.dat" $crystal = 8000000 $hwstack = 64 $swstack = 64 $framesize = 64 Baud = 19200...
Witam. Chciałem w celach edukacyjnych zrobić częstotliwościomierz. Ponieważ nie mam za bardzo skąd wziąć zewnętrznych impulsów postanowiłem, że jeden pin procka będzie je generował, a przerwanie int0 będzie liczyć ile tych impulsów było. Do odmierzenia czasu posłużył timer1, który ma odliczyć sekundę (więc wynik od razu w Hz). Po upływie sekundy ma...
Witajcie. Moje pytanie dotyczy dziwnego zachowania się procka 89C4051 ze skompilowanym w Bascomie programie: w programie używam zmiennej Temp, którą inicjuję przed główną pętlą Do Loop programu "Temp = 25" a przy pierwszym wywołaniu w programie ma nie wiadomo dlaczego wartość 105 (choć nie była zmieniana). Nie wspomnę już o tym, że port P1.6 na chwilę...
Przerobiłem tak, żeby wysyłał testowo tylko jedną wartość ( losową ) co 8 sekund Dodano po 18 Dołożyłem Clear Serialin0 Com1_str = "" czyli [syntax=vbnet] $regfile = "m328pdef.dat" $crystal = 8000000 $hwstack = 100 ' rozmiar stosu sprzętowego $swstack = 100 ' rozmiar stosu programowego $framesize = 128 $baud = 19200 '************ Uart 0 Config Serialin0...
Witam! A więc tak jak w temacie chciałbym się dowiedzieć jak się nauczyć przerabiania programu na przykład przeznaczonego na procesor atmega8 , na attiny2313 ? Lub na odwrót. W języku basic w bascomie. . Na przykład taki program jak skonfigurowac pod atmegę 8 ? : $regfile = "attiny2313.dat" 'typ proca $crystal = 1000000 'taktowanie Config...
W programowaniu, czy to Basic, czy to C, znajomość składni nie jest najważniejsza. Można znać C i pisać podobne molochy a tu najważniejszy jest pomysł jak rozwiązać coś sprytnie. Niepotrzebnie skomplikowałeś ten kod. Mój, nietestowany, ale powinien działać tak: Kiedy dostaje sygnał z czujnika to ustawia czas na 60 sekund. Kiedy czas do odliczenia jest...
Mam problem z przerwaniami, a raczej z pewną różnicą w budowie Atmega8 i Atmega32, a mianowicie mam program, który działa prawidłowo na Atmega8 poniżej fragment http://obrazki.elektroda.pl/7547240700_1... Jakaś sugestia/pomoc?
Jest to proste korzystasz z przerwań jakie generuje timer0 podobnie jak to opisał kolega z innego tematu tego fora w bascom napisał '************* Konfiguracja uC ***************** '***************************************... $regfile = "attiny2313.dat" $crystal = 16000000 Config Portb = &B11111111 : Portb = &B11111111 Config Portd = &B11111111...
W takim razie program jest do bani! hmm jakoś nie ogarniam tego programu. Żadnych wcięć ... odstrasza to strasznie ;-) Bascom ma to do siebie, że kompiluje bez zająknięcia (nie zgłasza problemów), a potem się program buntuje bo kompilator syntax error nie wykrył. Ja bym proponował najpierw dać config port... dim a as .... timer... program... tutaj wszystkie...
Szkoda że na '51, bo na AVR było by łatwiej. Można to zrobić tak: Procki '51 mają wejścia zewnętrznego przerwania wyzwalanego stanem niskim, lub zboczem opadającym. Ciebie interesuje to drugie (bo zboczemn narastającym się nie da jak w AVR). Nie wiem jak wygląda konfiguracja przerwań w BASCOMie, zobacz w dokumentacji, ale podejrzewam że coś w rodzaju:...
Witam. Dawno nie pisałem w BASCOM-ie a zdecydowałem się na niego bo myślałem, że tak będzie szybciej i prościej. Nic bardziej błędnego. Do napisania był dwu-trybowy program uśredniający do nieco przerobionego radiometru SOSNA. Ale nie w tym rzecz. O ile kod który zamieszczam powstał w miarę szybko o tyle błędu nie potrafię wyeliminować 3 dzień. Po krótce...program...
Witam. Od paru dni uczę się programować w języku bascom. Trafiłem na błąd podczas kompilacji którego nie rozumiem. O to kod [syntax=basic4gl][/syntax] $regfile = "m8adef.dat" $crystal = 16000000 Config Portc = Output Config Portb = Output Config Portd.0 = Input Config Portd.1 = Input Config Portd.3 = Input Config Portd.4 = Input Pind.4 = 1 Pind.1 =...
Witam Piszę program w Bascomie na Atmega32 do sterowania ogrzewaniem w warsztacie i mam problem. Jest zegar RTC, zewnętrzny Ram, Timer, Menu i to wszystko działa bez zarzutu - dokładnie tak jak bym chciał. Chciałem dołożyć czujnik temperatury i wykorzystać do tego celu wejście ADC. Problem pojawia się w momencie jak w podmenu "Start_webasto" dodaję...
Witam Piszę do was bo nie mogę rozpracować histerezy w poniższym kodzie programu. Program działa prawidłowo ale jest mały problem. Histereza zawsze działa, a raczej jej brak (załączanie i wyłączanie) działa równo przy 30 stopniach. Potrzebuję aby histereza była ustawiona na 5 stopni. Proszę pomóżcie mi wyeliminować ten problem. Program musi mieć funkcję...
Witam. Z definicji liczba instrukcji w obsłudze przerwania powinna być minimalna, by mogło się ono maksymalnie szybko wykonać. Tymczasem w przypadku mojego programu liczba instrukcji w obsłudze przerwania była stosunkowo duża. By wybrnąć z tego problemu zamierzam w przerwaniu ustawić flagę która oznacza, że przerwanie zostało wygenerowane, natomiast...
Witam,mam następujący problem.Potrzebuje obsłużyć 2 enkodery instrukcja encoder program narazie wygląda tak : $regfile = "m8def.dat" $crystal = 8000000 Config Timer0 = Timer , Prescale = 256 Config Lcdpin = Pin , Db4 = Portc.0 , Db5 = Portc.1 , Db6 = Portc.2 , Db7 = Portc.3 , E = Portb.5 , Rs = Portb.4 Config Lcd = 16 * 4 Config Pind.0 = Input...
Witam Mam płytkę z Atmega8 połączoną z czujnikiem PIR ( wejście INT1 przez transoptor ), do tego pomiar ADC ( od wartości adc zależy czas po jakim PWM będzie zmniejszone, opcjonalnie chcę też pod INT0 podpiąć przycisk, coby włączyć światło, gdybym nie znalazł się w zasięgu czujnika. Dodatkowym "bajerem" jest to, że światło ( listwa LED ) powoli się...
Witam Mam płytkę sterującą dwoma kanałami PWM - przez ULN oraz MOSFETY. Płytka ma dwa wejścia oraz wejście czujnika PIR - INT1. Ma przede wszystkim sterować włączaniem taśmy LED 12V z czujnika PIR ( oprócz tego z drugiego wejścia ). LED włączona przez PIR ma docelowo świecić określoną ilość czasu ( zależną od natężenia światła ) i się wyłączyć. Żeby...
Witam po raz kolejny pojawił się problem z moim programem otóż chcę aby kiedy wzrośnie temperatura i będzie wyższa lub równa zadanej to serwo obraca się w prawo poczym się zatrzymuje następnie kiedy temperatura będzie niższa od zadanej wtedy serwo obraca się w lewo i zatrzymuje się. [syntax=basic4gl] '************* Konfiguracja uC *****************...
Witam Chciałem dołożyć "atrakcję" do budzika w postaci odtwarzacza muzyczki ( oprócz tradycyjnego buzera. Mimo ograniczeń co do parametrów pliku oraz wielkości obsługiwanej karty SD ( 2Gb bez SDHC ) moduł WTV020 jest ciekawy. Do wyjścia BUSY podpiąłem przez rezystor diodę LED. Do wyjścia SP+ i SP- podpiąłem głośniczek 0,5W/8om Pliki AD4 pobrałem i internetu,...
Witajcie Buduje zasilacz (schemat w załączniku) , obecnie jestem na etapie programowania. Oto program: http://obrazki.elektroda.pl/1824166400_1...
Muszę wprowadzić zmiany w programie aby zamiast wyświetlaczy segmentowych użyć lcd. Czy jest z tym dużo pracy? [syntax=basic4gl]'************* Konfiguracja uC ***************** '***************************************... $regfile = "m8def.dat" $crystal = 8000000 Config Portb = &B00000000 : Portb = &B11111111 Config Portc = &B11111111...
Może odpowiem inaczej. A do czego zmierzam? Masz bardzo ambitny plan budowy ciekawego urządzenia. Wybrałeś do realizacji tego projektu architekturę AVR i język programowania BASCOM. I teraz jak się ma jedno do drugiego. Zapewne po przeczytaniu kilku artykułów, projektów, kursów i zabawie w programowanie w BASCOM wciągnąłeś się i zafascynowałeś tym językiem,...
Witam, miałem na zaliczenie zrobić jakiś projekt z wykorzystaniem mikrokontrolera AVR, jako ze miałem tak mało czasu jak doświadczenia to zrobiłem działający projekt ze strony '************* Konfiguracja uC ***************** '***************************************... $regfile = "attiny2313.dat" $crystal = 16000000 Config Portb = &B11111111...
Witam W ramach dalszego eksperymentowania z AVR i Bascom popełniłem połączenie odczytu z DS18B20 z sterowaniem wyjściem uC ( przez tranzystor FET ) + dodatkową atrakcję - buzer, który sygnalizuje wł/wył tranzystora/wyjścia. Chciałem dodać możliwość zmiany temp max i min, przez proste menu. Menu zrobiłem w oparciu inny mój kod obsługujący ustawianie...
Pin konfigurowany jest na początku, przed konfiguracją SPI. Dodano po 2 I jeszcze tradycyjne pytanie - chciałem mieć więcej wyjść Zrobiłem tak: [syntax=basic4gl] If Mid(tempstring2 , 6 , 6) = "LED1ON" Then Reset Led1 End If If Mid(tempstring2 , 6 , 7) = "LED1OFF" Then Set Led1 End If If Mid(tempstring2 , 6 , 6) = "LED2ON" Then Reset Led2 End If If Mid(tempstring2...
Mundi - dobrze radzisz ale Antystatyk zrobił kompletny syf w przerwaniu i źle steruje wyświetlaczami. Twoja porada tu nie ma szans na prawidłowe zadziałanie. Antystatyk - Jak już widzisz, napisałeś to źle. Zobacz że wcześniej wspominałem o efekcie rozmazania na wyświetlaczach i napisałem w jakiej kolejności je sterować (bo już wielu początkujących na...
A oto działający kod dla bufora 128 bajtów (można zrobic mniejszy, 64 dziala ale tylko przy Clockrate = 4 , Spsr.0 = 1 i samplu do 16kHz) zależny od prędkości z jaką odczytujemy dane po Spi z karty, im wolniej tym bufor musi byc wiekszy, zależy też od częstotliwości próbkowania pliku dźwiękowego, im szybsze tym bufor większy. Wzorowałem sie na przykładzie...
Witam Odświeżę wątek. Dodałem układ UDN2981A pomiędzy Atmege a wyświetlacze, wyrzuciłem tranzystory które sterowały anodami oraz ich rezystory z baz. Działa całkiem nieźle. Jest jedno ale... jasność. Steruje to takim kodem: [syntax=basic4gl] '************ Zegar 6 wyswietlaczy LED + PCF8563 $regfile = "m32def.dat" $crystal = 8000000 $hwstack = 64 ' rozmiar...
Witam, jako, że kończą się wakacje postanowiłem udoskonalić trochę soft piórnika - chcę dodać odczyt temp., tylko nie wiem gdzie ją umieścić. '***************************************... '* Program Piórnik Mini wersja 1.0 Beta *' '* Pomysł: FICU *' '* Programista: Jacek R (Black Jack) Kompilator:...
Kolego neo_84 Sprawdziłem Twój program , jest zagmatwany jakiś taki nieczytelny. Powinieneś maksymalnie opisywać kod ,a poszczególne odrębne funkcje umieszczać osobno aby jak najbardziej program był czytelny nie tylko dla Ciebie , ale i dla innych elektroników (to bardzo pomaga!) Podam Ci szkielet kodu jaki ja stosuję przy multipleksowaniu i odczycie...
Witam Mam program budzika, który jako dodatkową atrakcję miał mieć możliwość mówienie czasu na żądanie i odtwarzanie oprócz buzzera utworu jako alarmu. Atmega steruje przez jedno SPI programowe układem MAX7219, a przez konwerter poziomów i drugie SPI programowe odtwarzaczem WTV020SD. O ile sam WVT020SD + PCF8563 ( wyjście CLK do INT1 ) działają dobrze,...
co napisaliscie jako swoj pierwszy program na dany uC w danym jezyku (rozbudowy sie licza, byle by wciaz byla to ta sama baza) n. n. - literka, cyferke z przodu dodam sam. zachowujcie chronologie w swoich dokonaniach na roznych platformach jezykowych i sprzetowych, tak aby to mialo sens! ____________________ 0x1-a. Freddie Chopin - migacz diodkami o...
Da się na 1000% ponieważ przed tym miałem tzw "piórnik ściągę" i pokazywało temperaturę i czas w 2 linijkach jakby jako jedna. Tylko właśnie nie wiem jak to dokładnie napisać ponieważ nie mogę ogarnąć tego w kodzie z tego "piórnika" Teraz chcę żeby tak pokazywało tylko temperaturę. Ogólnie ten "piórnik ściągę" rozpatroszyłem na części pierwsze żeby...
Witam Mam Atmega32A + PCF8563 + PCF8574 + RFM12 + DS18B20 +DHT11. Port danych LCD to Port.A, ControlPort to Port.C. I2C standardowo na Portc.0 Portc.1. Niestety jest problem z obsługą I2C, tzn. zegar PCF8563 nie działa w ogóle ( na LCD puste pole ) , a klawiatura na PCF8574 - tylko jeden klawisz i to nie ten, który jest przypisany w kodzie ( działa...
Witam Mam płytkę Loggera GPS + SD + PCF8563. Jeśli chodzi o GPS i zapis na SD wszytko jest OK. Problemem jest ( i to pierwszy raz się z czymś takim stykam ) odczyt danych z z układu PCF8563. Otóż dla pewnych wartości sekund, odczytana wartość czasu - godziny jest większa o 40 ( czterdzieści ). Czyli jeśli czas jest 22:40:02 to jest wyświetlany poprawnie,...
Czy Kolega będzie może wiedział co jest nie tak od strony programistycznej ? Tzn. jeśli wyświetlam stałe wartości to jest ok, podobnie jak wyświetlam w pętli For... Next od 1 do 59. Dodałem jeszcze obsługę LCD, żeby widzieć, co się dzieje z czasem. Ale jak podepnę do tego PCF8563 i odczytuje czas z niego, a dopiero później wysyłam do SAA1064 to jest...
Witam Z wycinków kilku programów chciałem zrobić jeden duży barkuje kilku rzeczy i zwiazku z tez pytania W jaki sposób mogę zwiększyć ilość wejść i wyjść żeby zmieścić wszystko ? ( patrz 1 PINY ) brakuje ustawiania podlewania względem kalendarza zielonego pojęcia nie mam jak z pcf mogłbym ustawić godzinę i czas podlewania np 18:00]przez 1 min ? brakuje...
Witam podaję kod, który działa poprawnie, oczywiście należy go dopasować do swoich potrzeb. [syntax=vbnet] 'Sterownik swiatel V2.2 '10-06-2015 'Roman Biadała $regfile = "m128def.dat" $crystal = 11059200 '$lib "fp_trig.lbx" '******** Ustawienia portów ****************************************... '******** Sterowanie 74HC541 - przekaźniki *************************************...
Witam Korzystając kodu Tuxgraphics zmodyfikowanego przez Kolegę Mundi1970 , chciałem również postawić prosty serwer pokazujący temperatury z kilku czujników oraz wilgotność i ciśnienie. Po zmianach regfile i pinu CS nie mogę go jednak skompilować. Występują trzy błędy: Error 46 Line: 363 Assignment Error Enc28j60_linkup Erroe 229 Line: 450 End Sub or...
.... W pętli głównej sprawdzam na okrągło bit 0 rejestru 0 układu ( sprawdzam flagę alarmu timera). .... "Additionally, a timer alarm can be programmed by setting the timer alarm enable (bit6 of the alarm control register). When the value of the timer equals a pre-programmed value in the alarm timer register (location0F), the alarm flag is set ( bit1...
Witam. Brak konfiguracji szyny I2C kod: np: Config Sda = Portc.4 Config Scl = Portc.5
Ten mikrokontroler nie jest z rodziny AVR. Musisz mieć Bascom - 8051 pobrać ze strony: www.mcselec.com/
Witam. Można np. tak :) 6 x Pwm Config Timer0 = Pwm , Prescale = 1 , Pwm = On , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down Config Timer1 = Pwm , Pwm = 8 , Prescale = 1 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down 'Konfiguracja Timera Config Timer2 = Pwm , Prescale = 1 , Pwm = On , Compare A Pwm = Clear Down , Compare B Pwm...
Jak używasz jakiejś bardzo starej wersji spolszczonej to możliwe, ale Demo2075 już nawet to potrafi. Możesz użyć Twojej poprzedniej konfiguracji z Load Timer, ale dodaj ustawianie tej flagi 5ms w przerwaniu.
Ja używam takich kodów do odblokowania tych pinów, zaraz po instrukcji konfiguracji zegara programowego: 'odblokowanie pinów PC6 i 7 dla procesorów atmega16/32: Tccr2 = 0 Assr = 0 Timsk = 0 Tifr = 0 Oczywiście wszelkie dalsze konfiguracje innych timerów powinny znaleźć się po tym kawałku kodu.
Przede wszystkim musisz zacząć kolego od poznania timerów. Do odmierzenia czasu używamy timerów ponieważ zlicza nam czas w tle działania procesora. Używając polecenia wait zatrzymujesz kompletnie uC na ten czas. Konfiguracja dla AtMega8 8Mhz u mnie wygląda tak: Config Timer1 = Timer , Prescale = 256 ''''konfiguracja timera On Timer1 1s ''''przy przerwaniu...
Zajrzyj do helpa BASCOM - wszystko jest tam opisane - konfiguracja timerów i zadawanie wartości PWM.
A nie lepiej tak ? Przykładowa konfiguracja timera1 w trybie CTC i przebiegiem na OC1a [syntax=basic4gl]Config Timer1 = timer, Prescale = 256, CLEAR TIMER = 1, Compare A = toggle, Compare B = disconnect [/syntax] Potem tylko zmieniać wartość rejestru Compare1a jakimiś przyciskami, pilotem, enkoderem etc. ps. Jak nie zadziała to poustawiać bity w rejestrach...
Program jest bez sensu. Napisałeś to tak jak by rejestr Tccr1a był od kanału A, a Tccr1b od kanału B, a tak nie jest. Zarówno rejestry Tccr1a jak i Tccr1b sterują kanałem A, jak również obydwa rejestry sterują kanałem B. Po prostu jeden jest od czego innego a drugi od czego innego (Tccr1a od sposobu sterowania pinami i o trybu pracy Timera a Tccr1b...
Sygnałem wyjściowym hallotrona jest napięcie. Tak więc przez 1/2 LM358 pracująca jako komparator i zasilona napięciem takim jak procesor. Ważna jest biegunowość napięcia wejściowego.
konfiguracja timer bascom timer bascom konfiguracja
liebherr szuflada zamrażarki adres liveboxa testy akumulatorów
whirlpool at315 zamrażarka czerwona lampka
Podłączenie kabli zapłonowych w silniku spalinowym Jak rozkodować wyświetlacz radia Opel Meriva A