Tym razem odpowiedź brzmi nie - jedyne co możemy odzyskać przy tym zegarze to kontrolę nad pinami - jakiekolwiek uruchomienie timera2 spowoduje wariowanie czasu i AVR-dosa. Timer poza tym też nie będzie pracował normalnie bo soft clock będzie w nim mieszał
ten timer włączyłeś? W bascomie uzyles pewnie config clock=soft Więc jesli z punktu widzenia konfiguracji timera i procesora jest wszystko ok, to przyczyna moze byc jedna: kwarc nie oscyluje. Spróbuj podotykać np. pęsetą (trzymając ją mocno w ręku) pinów kwarca. Jesli zaczną przeskakiwać sekundy to błąd jest w kwarcu == wymień kwarc. Ta sytuacja tez...
Próbuję uruchomić programowy zegar w Bascom na arduino Mega 2560 Kompiluje się bez problemu ale niestety nie działa. Jakiego 'działania ' się tu spodziewasz? -ma poruszac wskazówki, czy też wskazywac czas na dysplay leżącym w szufladzie? - a może przekładac kartki kalendarza? Nie bardzo będziesz mógł uruchomic 'Bascomowy- softwarowy' zegar na Arduino...
Na forum pomagamy osobom które wykazują chęć nauki lub maja konkretny problem. Jak uruchomić zegarek z pełnym kalendarzem itd. jest opisane w Helpie przy instrukcji "Config Clock" Jeśli Ci się nie chce czytać lub nie masz czasu to zleć napisanie tego programu. Osoba z doświadczeniem napisze Ci go w jeden dzień z wszystkimi wodotryskami. Pisze to bo...
Witam, niestety ale chyba coś jest nie tak? Na wstępie należałoby wyjaśnić że nie ma czegoś takiego jak "automatyczne przeładowanie timera" (reload/load timer1 powiedzmy). Termin ten jest związany z procedurą konfiguracji timerów występującą tylko w trybie "Normal", gdzie każdorazowo początkowa wartość timera musi być wpisana przez processor. Taka...
Ja w prostych projektach korzystam z programowego RTC i sprawuję się ok. Dołączasz kwarc zegarkowy 32768Hz, konfigurujesz przez Config Clock i po kłopocie.
Na wstępie uściślij bo piszesz o Timer 0 a kod oprogramowuje Timer 2 Jeśli masz wolne piny PC6 i PC7 to możesz do nich podłączyć kwarc zegarkowy i mieć zegarek tak dokładny jak ten z PCF`a. Wtedy w Bascom piszesz tylko "Config Clock =Soft" i gotowe.
Po małych zmianach działam na czymś takim. Pomimo taktowania z wewnętrznego kwarcu nie widać efektu. Jakiegokolwiek. [syntax=c]/* * RealTimeClock.c * * Created: 2013-11-17 01:46:48 * Author: Piotr Pabian */ #include <avr/io.h> #include <avr/interrupt.h> void init_RTC(void) { //ASSR = 1<<AS2; //Enable asynchronous mode TCCR2 = (1<<CS22)|(1<<CS21)|(1<&l...
nic we fusebitach nie zmieniasz. Mozesz jedynie ustawic na wew. 8mhz. Moim zdaniem temat sie powtarza, wiec powinien wyladowac w koszu. Poszukaj w helpie config clock, albo jak chcesz sam ustaswiac timer to poczytaj o timerze 2 i jego trybie asynchronicznym (tez w helpie)
Ogólnie kwarce o wysokich częstotliwościach są niezbyt dokładne - zwykle +-100ppm w dobrym układzie. Na pewno jednak kwarc jest lepszy niż wewnętrzny RC. Robiłem kiedyś testy i na kwarcu 16MHz bez kalibracji udało się osiągnąć dokładność o ile pamiętam 1-2s na godzinę. Ale jak napisał Ci (może nie do końca) przedmówca (at)Milek7: Najlepiej wtedy w przypadku...
Wszystko wyjaśniłem w Post #5. Dodano po 16 Wewnętrzny oscylator nie ma nic wspólnego z kwarcem 32.768 . Oscylator ten napędza sam uC, natomiast kwarc zegarkowy ma napędzać dodatkowo jakiś timer.W przypadku Bascom jest to Timer2, gdzie są dodatkowe instrukcje do ustawienia i pracuje asynchronicznie. Przykład w Bascom. Config Timer2 = Timer , Async =...
Witam Szukam i szukam i nie mogę znaleźć odpowiedzi dlaczego poniższy kod nie działa? '[syntax=vbnet] Config Timer2 = Timer , Async = On , Prescale = 128 On Timer2 Sectic Enable Interrupts Enable Timer2 'Config Clock = Soft , Gosub = Sectic [/syntax] Mam klon arduinoMega2560 i dołączony kwarc zegarkowy do TOSC1 i TOSC2,gdy użyję "Config Clock" działa...
Pozwolę sobie umieścić post pod postem żeby wiadomość dotarła do zainteresowanego. Jeszcze lepszym wyjściem dla takiego zegara będzie zastosowanie dedykowanego rezonatorka 32768Hz (32,768KHz) Wartość 32768 to w zapisie binarnym dokładnie piętnaście bitów. Jeśli więc Timer będzie zliczał generowane impulsy to po 32768 uzna że mineła sekunda :D Bascom...
Piszę program, do czasowego wyzwalania migawki: Na pokładzie mam attiny13, tact-switcha, oraz diodę led i transoptor. Układ ma wysyłać impuls ok 300ms co określony czas. Czas ustawia się poprzez wciskanie przycisku - jedno wciśnięcie = 0.5s więcej. Dłuższe przyciśnięcie (pow. 3s) powoduje ustawienie minimalnego czasu(0.5s). Problem jest taki, że im...
W 89C52 masz Timer 2, który może pracować w trybie programmable clock output. Nie wiem jak się to robi w BASCOMie, ale wyślę Ci konfigurację w asemblerze: mov T2CON,#0x00 mov T2MOD,#0x02 mov RCAP2L,#0xFF//ustawienie czestotliwosci mov RCAP2H,#0xFF setb TR2 No i częstotliwość jaką generujesz za pomocą tego wynosi Fosc/(4*(65536-RCAP2H:RCAP2L)). W taki...
Dzieki Atom1477 miałeś racje chodziło o fusebit divide clock by 8. Teraz waity odliczają sie poprawnie .program tez chodzi ok. tylko te przerwania które miały być co sekundę sa teraz wyzwalane według oscylatora wewnętrznego a chce zeby były jak w 8 z kwarcu 32768 czy Config Timer2 = Timer , Prescale = 256 , Async = On jest nieprawidłowa konfiguracją...
Udało mi się! 'Przykład generowania fali prostokątnej niezależnie od CPU 'procesor AT Mega8 'zegar wewnętrzny 1 MHz 'piezo pomiędzy PB.1 a +5V 'UWAGA!!!, ATMEGA8 ma domyślnie załączonego Wachdoga!!!. Trzeba wyłączyć bezpiecznik!!! $regfile = "m8def.dat" $crystal = 1000000 Dim I As Byte Ddrb.1 = 1 'port b.1 wyjściowy '---------------------------------------...
Ja uczyłem się na poniższym kodzie: [syntax=basic4gl]'1 second code $regfile = "m8def.dat" ' or "m88def.dat" or "m168def.dat" $crystal = 4000000 $baud = 9600 $hwstack = 32 $swstack = 16 $framesize = 40 Dim Seconds_count As Long ' ========================================... ' Timer1 initialization ' ' Mode: Clear Timer1 on Compare Match (CTC...
Może byłem już śpiący bo pisałem to po nocce o 6 rano :P Opcje w funkcji Shiftout() po coś są.. Nie zwrócilem uwagi a kolejne bity Max7219 wczytuje kiedy linia CLK idzie do góry a nie na dół Opcje Shiftout: Option can be : 0 – MSB shifted out first when clock goes low <-kiedy zegar idzie na dół 1 – MSB shifted out first when clock goes...
Jeśli nie potrafisz to zrób to prościej. Podłącz zewnętrzny kwarc 32,768kHz (zegarkowy); Config Clock = Soft Procedura zegara używa specjalnych zmiennych: _day , _month, _year , _sec, _hour, _min Wszystkie są typu Byte. Można je modyfikować bezpośrednio: _sec = 1 Sprawdź, o ile się spieszy (opóźnia). Różnicę koryguj warunkiem któregoś dnia np o północy.
Przykład z Bascoma na ATmega8 do sterowania serwem modelarskim: $regfile = "m8def.dat" $crystal = 8000000 'on chip clock speed Osccal = &HC1 'uC 8MHz internall clock New calibration byte Tccr2 = &B01100110 'PWM2, clear down, phase correct, prescale 256 -> 16ms Acsr = &B10000000 'Analog Comparator disable Dim W As Byte 'Servo position ....
Chyba mogę pisać bzdury ;) : 1. Jak dotychczas (16.02.2006r.), żadna ATmega nie ma wbudowanego RTC (Real Time Clock - Zegar Czasu Rzeczywistego). 2. Niektóre modele (nie napisałeś o który tobie chodzi, a wypadałoby to wymienić już w tytule tematu) mają możliwość pracy Timer/Counter2 w trybie asynchronicznym z kwarcem zegarkowym 32 kHz, co dopiero umożliwia...
A ja mam oto takie przerwanie: ;=======================================... ; Timer 0 interrupt ;=======================================... .org0x000B t0intv: MOV timer_xxx,TL0 ;2 execution time measurement (start) PUSHACC ;2 PUSHPSW ;2 DJNZclock_clk, noclock ;2 MOV clock_clk,#iclock_clk;2 ; hundreds of seconds INC clk_x MOV...
No rozpisałeś się bardzo konkretnie. Uzylem m162 bo moja 128 gdzieś zaginęła na poczcie. Mam nadzieję ją dziś odzyskać. Docelowo będzie to oczywiście m128. Czyli bez kwarcu zewnetrznego nie ma co liczyć na działanie procedury clock. Szkoda że nie do czytałem tego bo bym już go sobie zamówił. Zastanawiam się jeszcze ale to merytoryczne pytanie czy do...
Witam , czy można prosić o prostą składnie oraz konfiguracje pinu w baskomie do wybudzenia atxmega32a4u . Przygodę z xmegami dopiero zaczynam , na timerach pracowało ale chodzi o wybudzenie pinem z IDLE lub POWERSAVE , dziękuje za pomoc i pozdrawiam A co to, nie chce się czytac manuali i datasheets? Jest wiele sposobów do wyboru na wybudzenie w zależności...
nic nie notowałem... poprostu mialem problem z odmierzaniem czasu na timerach i myslalem ze bycmoze mam ustawiony zly sygnal taktujacy.. wiec zmienilem z external xtal na external clock... Co do reszty fusebitow to nie wiem czy w bascomie byly ustawione tak jak to zczytal z atmegi czy mial to jakos domyslnie w programie ustawione.. ale z tego co pamietam...
To łatwo obliczyć, jeżeli dasz timer 0 bez preskalera, to przerwanie masz co 256 taktów zegara. 10Mhz/256=39kHz To dzielimy/(ilość bitów)np 8 =>39kHz/256=150Hz Trochę mało.... Oczywiście w przerwaniu możesz wrzucić nową wartośc do timera0, aby przyśpieszyć, ale ... cały czas musisz zdążyć wszystko podczas przerwania. Bez symulatora się nie obejdzie....
Spróbuj wgrać ten kod, i napisz czy coś się zmienia na wyświetlaczu.[syntax=basic4gl]'Zegar RTC. 'Kwarc 32,768 pod piny 9-10 (OS1-OS2) $regfile = "m8def.dat" $crystal = 8000000 Config Lcd = 16 * 1a Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Portb.3 , Db6 = Portb.4 , Db7 = Portb.5 , E = Portb.1 , Rs = Portb.0 Config Timer2 = Timer , Async = On , Prescale...
Hmm... A co ma cena procesora do ceny In-circut debuger-a ? Procesory kupuje się wielokrotnie, a debuger raz, po za tym dla AVR istnieją tańsze, nieoryginalne wersje - sam JTAG, bez obsługi DebugWire, już za trochę więcej niż 100PLN (np. na www.propox.com ) - również na USB. ATmega8 - 7-9PLN, możliwości : • Advanced RISC Architecture – 130...
$regfile = "m8def.dat" $crystal = 8000000 $baud = 9600 '-- Wejscia przycisków Config Portd.2 = Input Config Portd.3 = Input ' -- podciągnięcie Set Portd.2 Set Portd.3 ' -- porty sterowania segmentami LED Config Portd = Output Config Portc.5 = Output Config Portc.4 = Output Config Portc.3 = Output Config Portc.2 = Output ' -- tranzystory Config...
Właśnie o to mi chodziło. Przeglądałem to polecenie w wersji [syntax=c] Config Clock = soft [/syntax] ale tam była informacja, że potrzebny jest Timer, a ja już wolnego nie mam. Wystarczyła zmiana nazwy podprogramu do odczytu czasu i dopisanie zmiennych tak, jak Kolega podał i już. Działa jak trzeba, czyli przy odczycie karty SD w komputerze jest poprawna...
Witam Zegarek można zrobić w oparciu o dodatkowe dwa wyprowadzenia umożliwiające podłączenie dodatkowego kwarca 32.768 kHz. W bascomie są do tego gotowe intrukcje więc nie będę przepisywał helpa. W każdym razie możesz zacząć od Config Clock = soft. Jesli chcesz na timerze to program zegarka mógłby wyglądać następująco: $crystal=8000000 Config Lcd ..............
Z instrukcji BASCOMA AVR (komenda Waitus): The number of microseconds to wait. (1-65535) This must be a constant. Not a variable! In version 1.12.x.x and higher you can use a variable as well. oraz When you use a constant, the timing is reasonable accurate. When using a variable, the timing accuracy depends on the oscillator speed. As a general rule...
PRESCALEThe TIMER is connected to the system clock in this case. You can select the division of the system clock with this parameter. Valid values are 1 , 8, 64, 256 or 1024 Jak masz szybszy kwarc to dajesz stosowny dzielnik. Aby przebieg PWM odpowiadał wymaganiom. Wszystko zależy z jaką częstotliwością ten generator ma nadawać. Zegar 8MHz/65536/PRESCALE...
Ok. W tym dokładnie przypadku chodziło mi tylko aby sprawdzić czy głowny program liczy impulsy nie miałem ich skąd wziąć więc wymyśliłem, że procek sam je sobie wygeneruje w przerwaniu timera0, a int0 je będzie liczył :). Całkowicie rozumiem, że użycie timera jako licznika jest lepsze. Tylko brakło timerów. Zrobiłem tak jak tu: http://www.elektroda.pl/rtvforum/topic69...
Witam ...... Wykorzystując sprzętowy PWM zmiana wypełnienia to nie problem ale czy można uzyskać na sprzętowym PWM zmienne częstotliwość od 50 do 1000 Hz płynną lub skokową. Tak,....... Mozesz to zrobic wykorzystując timer z dwoma kanałami np. Timer1 Na jednym kanale kontrolujesz częstotliwośc, a na drugim wypełnienie. Załóżmy że taktujesz processor...
Witam, Mam kawałek poprawnie pracujacego z Easy TCP/IP TWI kodu. Program pokazuje numer otwartego gniazda (zero), a poźniej komunikat w razie odebrania jakies danych UDP. Wszystko jest ok, póki przerwanie timera nie jest wlączone. Włączenie przerwania powoduje, ze przy starcie zwracane sa "wysokie" numery gniazd, np 134, 128 (zaleznie od "reszty" kodu)....
Witam Potrzebuje pomocy tym razem w ulepszeniu zegarka http://www.daqq.eu/index.php?show=prj_av... W związku z tym iż uruchomiłem go chciałem polepszyć jego dokładność a nie znam języka c napisałem program w bascomie wzorując się na koledze http://www.elektroda.pl/rtvforum/topic17... powstało takie coś $regfile = "m8def.dat"...
... tak naprawdę ma to być obrotomierz do motocykla . ... Priorytetem jest bardzo szybka reakcja wyniku .... Zastanów się czy nie warto wykorzystać w tym procesorze Timera pracującego w trybie Capture Mode: http://obrazki.elektroda.pl/4130623300_1... Znajdziesz w nim dodatkowo wbudowany układ redukujący szumy sygnału wejściowego oraz...
[syntax=basic4gl]Sprawdź ten kod z książki Pana Wiązani. Zegar zaczyna pracować i wskazywać czas i datę od momentu podania napięcia. Czyli należy podać napięcie dziś o godz. 12 : 00 : 00 zgodnie z programem. Pracuje bardzo dokładnie. Rezonator 32.768 pod piny 9 i 10 (XT1 - XT2). Kondensatory 2 * 22pF. 'licznik Timer2 pracujący jako Timer asynchroniczny....
Niestety ale opcja wait nie nadaje sie do moich celów gdyż wtedy nie widzę co się dzieje z temperaturami, ciśnieniem układu. Wszystkie pomiary stoją. Cóż będę musiał poszukać podobnych programów i coś może wykombinuje. Dzięki za odpowiedzi! Bedziesz wie musial uzyc jeden z wolnych timerow. Ponizej masz przyklad zastosowanie timera 1 w trybie CTC. (z...
No właśnie tylko u mnie dość cienko z programowaniem i obawiam się, że może mnie to przerosnąć. Do tej pory udało mi się odpalić wiele rzeczy, ale nie wiedziałem ze z tym będą takie problemy. Dobrze by było jakbyście rzucili też okiem na całość programu, czy jest jakoś w miarę poskładany. Edit: Znalazłem coś takiego: [syntax=vb] //Timer1 Capture //Timer1...
W bascomie były taki sampel zegara na wyświetlaczu LED. Tylko nic nie rozumiem, bo opisy nie są po angielsku :( '---------------------------------------... ' (c)1997-2000 Mirko Pelcl ' Slovenie '---------------------------------------... ' CLOCK with the LED display ' ' Demo project ' '---------------------------------------...
Siema. Otóż mam taki problem, podczas gdy kod ładowania i zerowania data DACx działa, np DACB1 = 0 waitus 500 DACB1 = 4095 (full zakresu) waitus 500 daje jakieś 2Khz pisku w słuchawkach co jest oznaką działania , to gdy ładuję próbki muzyki wav z karty na zasadzie DACxx = pwm nic się nie dzieje. Tu całt kod xmega: [syntax=basic4gl] '=======================================...
ok działa podobny program jest w książce. Ale jak teraz "przenieść" to zliczanie w inne miejsce żeby diody zaczeły sie zapalać tak jak che i to jeszcze z multipleksowaniem. A co do keawcu to miałem go podłączonego i w fusach też ustawiony był ok. Jak narazie dzieki za pomoc. Chwile sie pobawiłem i zastanawiałem sie czemu mi zle działa dioda podpięta...
kolega juz napisał ze stosował klika kwarców po za tym do doliczania czasu w bascom słuzy clock a nie odlicza sie czas za pomocą timerów (duzo bardziej niedokładny pomiar)
Jeśli nie masz na stanie generatora to może zainteresuje Cię, albo kogoś innego, taki najprostszy generator który operowany jest dwoma potencjometrami. Jeden ustawia częstotliwość a drugi wypełnienie 1%-99%. To pozwoli szybko znaleźć odpowiednie parametry dla przetwornicy i potem można ustawić Tiny13 na rejestrach . Kod będzie działał na Arduino Mega2560,...
Cześć, Przedstawiam problem: w poniższym programie, gdy nastąpi 2razy przerwanie INT0, to zmienna limit bedzie wynosić 400. Jeżeli zmienna minuty dojdzie do 400 powinno się zatrzymać. Jednak zmienna Minuty dochodzi tylko do 255 tak jakby była zadeklarowana jako Byte, a nie jako Long. Dlaczego? Zmienna Sekundy jeżeli się przestawi z 2 na mp 400 liczy...
Mam taki kłopot (Bascom + Atmega128) ; Korzystam z PWM w trybie FAST. Uruchamiam sobie to normalnie ; Tcnt0 = 0 Ocr0 = 0 Tccr0 = &B01101010 'timer0 in fast pwm mode, prescale = 8 10kHz Ocr0 = 0 Następnie zmieniam zależnie od potrzeb wypełnienie, przez wpis do OCR0. Na koniec wyłączam PWM ; Ocr0 = 0 Tccr0 = &B00000000 Tcnt0 = 0 PWM startuje zawsze od...
Zrobiłem aktualizacje do 2.0.7.6. Obsługuje bez problemu USBasp, no i biblioteki do SD faktycznie lepsze - obsługują SDHC i można np. sprawdzić rodzaj karty SD. Tylko zapisywany ciąg na karcie trochę inaczej jest. Zamiast spacji jest teraz "kropka" i cały tekst bardziej "zbity" w całość. Co do rC5 to nic się nie zmieniło, właściwie to gorzej bo pracuje...
Odświeżam bo zmiana czasu jest rozwiązana w Bascom-ie bezpośrednio na dowolnej ATMega. Nie potrzeba zewnętrznego RTC. [syntax=vbnet] $regfile = "m32def.dat" 'procesor $crystal = 11059200 $hwstack = 64 $swstack = 64 $framesize = 64 $lib "Datetime.lbx" Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Portb.1 , Db6 = Portb.0 , Db7 = Portd.6 , E = Portb.4 ,...
Czy czas wybudzania procesora nie będzie zbyt długi? W trybie IDLE wstrzymywany jest tylko CPU poprzez odcięcie sygnału zegarowego. Idle Mode When the SM2..0 bits are written to 000, the SLEEP instruction makes the MCU enter Idle mode, stopping the CPU but allowing SPI, USART, Analog Comparator, ADC, Two-wire Serial Interface, Timer/Counters, Watchdog,...
Witam, zobacz do helpa Bascoma. Ja wprawdzie tego Time$ nie używałem jeszcze ale wyglada na to, że trzeba jeszcze zastosować polecenie config clock = soft poniżej fragment z helpa - przeanalizuj to sobie: '---------------------------------------... 'name : megaclock.bas 'copyright : (c) 1995-2005, MCS...
No to coś napisałem na AVRStudio 4.05.0.181 (na kolanie) :) . Co prawda na ATmega8 , ale przeportowanie to pestka(niektóre wektory przerwań do skasowania/zmiany nazwy i "2313def.inc" zamiast "m8def.inc" , prędkość kwarcu Xtal też do poprawki...), raczej tu chyba nie ma rozkazów niezaimplementowanych w AT90S2313 . ;included in next file - line ".device...
Zrobiłem sobie propeller clock na i działa prawie dobrze :) Problem w tym że co jakieś 50 obrotów zegarek przestaje działać na kolejne 50 obrotów. Wiąże się to z funkcją zliczania czasu obrotu i przeliczanie na 60 pozycji na tarczy zegara. Stop Timer1 Timer1 = 0 Start Timer1 Incr Y If Y = 50 Then X = Capture1 X = X / 60 Y = 0 End If Compare1a = X Pozycja...
Próbowałem na tej zasadzie. Ktoś wspominał jeszcze o watchdogu - można go w sumie wykorzystać, ale chyba timer będzie lepszy. Przepraszam za bałagan w kodzie, ale jak człowiek się wkurza, to i nie myśli dobrze;] Dlaczego czas odmierzasz w tak małych odcinkach (rzędu milisekund), gdy tymczasem obserwowane zdarzenia występują w odstępach sekundowych....
A teraz jeszcze jedno pytanie do kolegow jak zrobic budzenie, co sekunde za pomoca timer'a 2. Z tego co zauważyłem, ... Config Clock = Soft , Gosub = Sectic ... to masz podpięty do swojej M32, kwarc "zegarkowy". Do usypiania M32 pracującej jako zegarek, producent przewidział tryb Power-save , więc wykorzystaj ten tryb. Szukalem ale nigdzie nie moge...
widzę, że temat przygasł wiec ponownie prośbę... proszę o wrzucenie przykładowego programu na procesor atmega, gdzie po naciśnięciu przycisku dioda zapala się na 5 sekund i gaśnie. Liczę ze taki program pomoże mi zrozumieć zasadę działania komendy odliczajacej czas. Książka ani inne posty jakoś mi nie pomagają i nie mogę tego przeskoczyć. Liczę, że...
Na kwarcu 8Mhz zawsze będziesz miał nie dokładny zegar. Jak się bawiłem zegarem to na 40min koło 1s już przekłamywało. Byś musiał zainteresować się "REZONATOR KWARCOWY 32.768kHz ZEGARKOWY". Kwarc wewnętrzny jest strasznie niestabilny, daj sobie z nim spokój. Wpisz sobie w google: Bascom real time clock atmega Gdzieś na elektrodzie krąży taki kod, zacznij...
A jeżeli chodzi o obliczenia to zobacz jak jest w przykładzie z timerem1 w pierwszym programie, preskaler ustalony wraz z wpisem do rejestru timera by zgłaszał przerwanie co 1s Napisałem szybki soft do RTC w atmega8, oczywiście timer2 taktowany asynchronicznie z XTAL reonatorem zegarkowym 32768 Nie będę opisywał co jest z czego, sprawdz w help bascoma...
Witam, Problem który nie daje mi spokoju na pierwszy rzut oka wygląda banalnie. Postanowiłem użyć czasomierza Timer0 do odmierzania odcinków czasowych za pomocą przerwania od przepełnienia licznika. Program który zamieszczam poniżej powinien pracować w nastepujący sposób: 1. po wciśnięciu przycisku (PB1) dioda LED mruga 1 raz na sekundę 2. przycisk...
Tu się nie zgodzę. moduł RFM12B ma taką komendę: 12. PLL Setting Command. Za to przy tej okazji warto zwrócić uwagę na tę literkę B. Mimo iż moduły RFM12 i RFM12B są do siebie niemalże bliźniaczo podobne to występuj,ą między nimi pewne drobne różnice, o których warto wiedzieć i zawsze musimy sprawdzić czy używamy RFM12 czy RFM12B Czyli Kolega się jednak...
Witam! Programuję w BascomieAVR układ ATmega32 do obsługi węwnętrznego zegara RTC oraz miltipleksacji sześciu wyświetlaczy. Chciałem się zapytać czy dokładność wewnętrznego zegara RTC (kwarc 32.768kHz), który uruchamiam komendą: Config Clock = Soft, zależy od przerwań TIMER0, które odpowiedzialne są za multipleksację wyświetlaczy?? Rozumiem, że jeżeli...
Witam.Piszę soft który ma na celu obsługę kart SD i LCD od 6100.Samą obsługę LCD opanowałem (na atmedze8) jednak nie wiem czy SD będzie działać.Jako kartę wykorzystam m2 1gb (została po starym telefonie).Jak na razie nie mam dostępu do atmegi bo właśnie co ją spaliłem jednak pytam się o poprawność softu.Jak widać w sofcie brakuje jeszcze odczytywania...
Po pierwsze: zumek ma rację, a ja zapomniałem to wpisać. Po drugie: to cały program? Bo nie ma instrukcji RETURN w podprogramie "wyswietl". Inna sprawa, że w tym podprogramie ustawiasz stan niski na porcie. Ale "jedynkę" na port wpisujesz tylko na początku programu. Niepotrzebnie włączasz zagar czasu rzeczywistego (CONFIG CLOCK), jeśli go nie wykorzystujesz....
Super :) Teraz przydała by mi się pomoc jak skonfigurować w bascomie timer1 tak żeby był taktowany kwarcem :) Dodano po 2 Czy przy pracy na wewnętrznym generatorze i rezonatorze 32768Hz na pinach XTAL1/TOSC1 i XTAL2/TOSC3 trzeba w bascomie określić $crystal ? Znalazłem coś takiego ale nie ogarniam tego CTC :) [syntax=basic4gl] '1 second code $regfile...
Witam mam taki programik i niemogę sobie z nim poradzić może coś ktoś widzi co jest źle z tym. Atmege mam ustawioną na kwarc zewnętrzny po wgraniu programu na układ zegar stoi widać czas i date ale wszystko to stoi w miejscu czy czegoś tu brakuje ? pozdrawiam $regfile = "m8def.dat" ' specify the used micro $crystal = 14318000 ' used crystal...
Właśnie że w symulatorze bascoma (wer. 1.11.7.4) też czas nie idzie?! Mam ustawiony wewnętrzny osc. 8MHZ czyli CLK3...0 = 0100 ale to nie istotne. Atmega16 może pracować z dwoma kwarcami zewnetrznymi (zegarkowym i systemowym) lub z zegarkowym i oscylatorem wewnętrznym jako zegar systemowy. Odnalazłem stronkę w wersji angielskiej, jest podobny programik...
Dzień dobry, Chciał bym zrobić sobie prosty oscyloskop tyle że z wykorzystaniem uC Atmega8. Czy mógł by mi ktoś przetłumaczyć poniższy kod na język Bascom, lub chociaż objaśnić jego działanie? Kompletnie nic z tego nie rozumiem... Za przetłumaczenie na język Bascom oferuję 500pkt
Zacząłem walkę z dwoma modułami RFM12b. Oba moduły podłączone do ATMega16 w sposób opisany w PDF: nIRQ -> INT0 (PD2) nSEL <- SS (PB4) SDI <- MOSI (PB5) SDO -> MISO (PB6) SCK -> SCK (PB7) Moduły są 868MHz, uP taktowany kwarcem 16MHz. Nie bardzo rozumiem konfigurację modułów a różne (niby działające) przykłady są przeważnie albo w C (nie...
Niewiem czy dobrze rozumiem ale chyba będzie problem bo na moim kalkulatorze wychodzi że 16000000/15000=1066,7 a w nocie pisze że dla Timer1 prescaler może być max 1024 75 ? Czy to się jakoś zaokrągla do pełnej liczby?
Chciałbym jednak użyć CTC, ale kompletnie nie wiem jak się za to zabrać w Bascomie. Nie znalazłem na forum żadnych przykładów. Jak by ktoś poczęstował przykładem kodu dla z CTC w Bascom to byłbym niezmiernie wdzięczny :) Jakieś kilka dni temu, nie dłużej jednak niż tydzień, ‘gaskoin’ podal dokładną procedurę konfiguracji CTC. Jeżeli przeoczyłeś...
ok tak wyglada obsluga przerwania do testow (w wersji finalnej chodzi o transmisje w dwie strony) to jest procedura dekodowania RC5 zaczerpnieta z noty katalogowej Atmela. uproscilem to troche zeby sprawdzic czy w ogole bedzie dzialac jako wstawka w bascomie no i niestety. Powiem tak program glowny czyli wszystko poza obsluga tego przerwania dziala...
Witam wszystkich forumowiczów A więc mam problem z bascomem a zaczyna się tak że bascom nie kompiluje mi większości np.config clock $regfile = "m8def.dat" 'Dyrektyway dla kompilatora. $crystal = 8000000 'Oscylator wewnętrzny o częstotliwości 8MHz. Enable Interrupts Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portd.4 , Db5 = Portd.5 , Db6...
Witam napisałem w Bascomie poniższą procedurkę i program zawiesza się w momencie wykonywania rozkazu getad czy ktoś miał podobny problem proszę o pomoc. $regfile = "812.dat" $crystal = 11059000 Config Aduc812 = Adcon , Mode = Normal , Clock = 1 , Aquisition = 1 , Timer2 = Disabled , Extrig = Disabled config lcd = 16*1a cls dim adc as word enable iterrupts...
Wygląda to tak:Przykład: '---------------------------------------... ' MEGACLOCK.BAS ' (c) 2000-2001 MCS Electronics '---------------------------------------... 'Ten przykład pokazuje jak używać specjalnych zmiennych TIME$ i DATE$ 'Użycie procesora AT90s8535 (i licznika TIMER2) oraz Mega103 (licznika TIMER0) 'pozwala...
Nie przesadzaj ;) Jestem programista ale akurat bascom mi nie podchodzi. Do tego slyszalem ze odmierzyc tam cos precyzyjnie nie idzie - stad opinia. Co do kodu to co tu pokazywac? toggle portd.0 .... waitus ... toggle itd? Tak czy siak twoj kod nie dziala odnośnie gotowca od kolegi pixel.... Juz naprawilem kod. Napilem sie kawy a nastepnie jeszce raz...
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...
Kilka pytań - bo kto pyta nie błądzi :-) Niby wszystko ładnie liczyło w przerwaniach - ale tylko do momentu kiedy zacząłem wywoływać Sub lub funkcję - wtedy zaczyna się resetować i zaczyna program od początku co sekundę ?? O co chodzi Teraz przestało mi nawet liczyć w przerwaniach. Wchodzi tylko raz i potem lcd się czyści. Zamieszczam kod, w którym...
Problem rozwiązany! :-) Dziękuję wszystkim, którzy wzięli udział w dyskusji- zaszczepiła mnie ona twórczo. Próba użycia zegara "na wprost", to znaczy sprawdzania stanu licznika z niewiadomych przyczyn w dalszym ciągu u mnie nie działa. Wygląda to tak, jakby nie było dostępu do stanu licznika ani przez zmienną COUNTER0 ani przez TIMER0 (wg instrukcji...
https://obrazki.elektroda.pl/4868547700_... Dzisiaj zrealizuję projekt na malutkim, ośmionóżkowym mikrokontrolerze PIC w obudowie DIP8 oferującym skromne 3.5kB pamięci Flash. Co więcej, do komunikacjami z peryferiami użyję tylko dwóch pinów - całość opierać się będzie o I2C. W oparciu o nie uruchomię kontroler wyświetlacza/klawiatury oraz...
[quote="zumek"]Drogi kolego Tomotron, oto lekarstwo na Twoją duszę :wink: W menu Options->Compiler->Misc jest sobie takie coś jak Byte End(hex) więc ustaw sobie tam wartość np.50 i po ptokach ,a jak by to było mało, to walnij ze 60 lub lepiej 70 i masz skompilowany program.Żeby nie ustawiać stosu za wysoko, to wartość "Byte End" trzeba tak ustawić żeby...
Płytkę już polutowałem, silnik zamontowałem tymczasowo w podstawce zrobionej z pudełka na płyty cd a góra służy jako ochrona. Wszystko ładnie się już kręci :). Napisałem też szkielet programu w Bascomie (świetny trening bo dopiero zaczynam) i właściwie działa ale algorytm jest trochę do bani. Bo timer1 (16bit) zlicza cykle zegarowe od przerwania INT0...
Witam, mam problem z kompilacją kodu sprzed 10-ciu lat, najnowszy bascom. problem jest z rejestrami: Ocr0b = &H80 Ocr0a = &H80 proszę o wskazanie przyczyny. [code][syntax=vbnet] $projecttime = 0 $regfile = "m32def.dat" $crystal = 16000000 ' gdy Baro_idle=0 nie widzi adresu 238 ($EE) ' gdy Baro_idle=1 widzi adres 238 ($EE) !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!....
Ok poradziłem sobie tylko teraz wyskoczył mi inny problem , a mianowicie nie wiem dlaczego nie mogę korzystać z funkcji LINI i Boxfill wyświetlacz szaleje :-) a chciałbym wykorzystać te dwie funkcje w programie poniżej kod programu [syntax=basic4gl] '***************************************... '* Code to test DS18x20 '* The 1-wire bus pin is Port...
Dzień dobry, Nie mogę dojść dlaczego emulator DS2050 działa na wewnętrznym oscylatorze 8Mhz a na kwarcu 8MHz zawiesza się i resetuje gdy tylko chcę odczytać z niego wartości. Kondensatory przy kwarcu 22pF. Fusebity: gdy clock 111101:Ext (czyli kwarc) to nie działa poprawnie. Próbowałem wszystkich ustawień kwarcu. Dlaczego tak się dzieje ? [syntax=Bascom]...
Zamieszczony wcześniej kod jest sprawdzony - działa na atmega8 Również po pomyfikacjach portów działa na attiny2313 i zajmuje 65% flash, wiec jest jeszcze miejsce na jakieś "wodotryski". Używam Bascom demo w wersji chyba najnowszej: 1.11.8.7 build 001 MS windows XP SP-2 Program pod attiny2313 na płytce uruchomieniowej ZL11AVR (Płytka ZL2AVR pod megę...
http://obrazki.elektroda.pl/6856023800_1... Od kilku tygodni zmagam się z problemem dokończenia wsadu Bascom na sterownik do rolet i oświetlenia. Otóż pierwszy problem to wyświetlanie "krzaków" na LCD 2*16 takich jak na zdjęciu. Otóż sterownik na przemian z czasem po 20sek wyświetla temperaturę. Sterownik po włączeniu zasilania pracuje...
Oczywiście, że warto go odratować. Źródła w Basicu w wersji V4 są na Elektrodzie. Po lekkim uporządkowaniu wrzucam poniżej. [syntax=vbnet]$regfile = "m8535.dat" $crystal = 8000000 Config Clock = Soft , Gosub = Sectic Config Sda = Portd.1 Config Scl = Portd.0 Config Timer1 = Timer , Prescale = 64 Config Timer0 = Timer , Prescale = 64 On Timer1 Dcf_start...
Witam ponownie Sugestia Kolegi M. S. była pomocna. Całość wygląda tak [syntax=basic4gl] '************ Zegar 6 wyswietlaczy LED + PCF8563 $regfile = "m8adef.dat" $crystal = 8000000 $hwstack = 32 ' rozmiar stosu sprzętowego $swstack = 32 ' rozmiar stosu programowego $framesize = 32 $baud = 9600 '************ deklaracje portow - 74HC595 Config Portc.3...
Jak już pisałem nawet jeśli go nie wyłączyłem po inicjacji to nie liczy NIC ponieważ sygnał zegarowy pojawia się dopiero po linijce strt = 0 wtedy załącza się układ i pind.0 = 0 , potem liczy dopóki pind.0 = 1 (zależy od kondensatora) . Gdy na pind.0 pojawia się 1 , pojawia się równocześnie na clock enable preskalera (aktywowany stanem niskim) który...
' ****************************************... ' * * ' * Mega 8 PAL Video Test Pattern 64 Colours ( noninterlaced ) * ' * * ' * V3.1.38 (c) 2008 Moshtech * ' * * ' ****************************************... ' ' Device -> Analog Devices AD722 or...
Chodzi o te zaznaczone ustawienia z obrazka. Są wstawiane jako domyślne jeśli się ich nie wpisze do kodu. Chodzi o to, że kiedy Bascom skacze do jakiegoś Sub to odkłada na stos te wcześniej omawiane dwa Bajty. W takim Sub już może tego nie widać, ale tez skacze np. do procedury odczytu czujników 1Wire. To już np. cztery bajty a w tym momencie nadchodzi...
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...
Pod tym linkiem [url=https://bart-projects-forum.cba.pl/... znajdziesz dwa, na pewno działające, kody do QM5883L i HM5883L. Te moduły nie są zamienne wprost i dlatego kody są dwa. Mogę tak napisać bo to moje kody które sam napisałem i sprawdziłem :D Mam gdzieś z tego film. Jak znajdę to wrzucę. Wszystko było uruchamiane...
Witam, jestem w trakcie pisania programu do własnej stacji lutowniczej. Temperaturę chciałbym czytać poprzez MAX31855 ponieważ mam dwa takie scalaki (sample). Jednak nie potrafię odczytać z niego danych. Nie wiem co robię źle ale na wyświetlaczu pokazuje cały czas 35 niezależnie od zmian temperatury. Oto moje wypociny: http://obrazki.elektroda.pl/4103137700_1...
Witam! Wydaje mi się , że funkcja Config clock = soft, używa timera2 sama w sobie. Więc nie trzeba nic deklarować. pozdrawiam
Witam, Z tej stronki [url=http://mirley.firlej.org/node/1137]... dowiedziałem się jak obsługiwać moduły komunikacji radiowej RFM12B. Przykład nadanika: [syntax=vbnet]$regfile = "m8def.dat" $crystal = 8000000 '8MHz $hwstack = 70 $swstack = 70 $framesize = 160 '$noramclear Config Submode = New Config Watchdog = 512 '512ms Start Watchdog '---------Constants---------------------...
Postanowiłem jednak wykonać zegarek wykorzystując RTC Atmegi 8. Czy podpinając ten kwarc zegarkowy, (36 i cos kHz) bedzie to w miiare dokładne? Czy musze wówczas ustawiać fuse bity? A $crystal musze umiesczać na początku (wydaje mi się ze tak bo procesor jest taktowany wówczas nie z podpinanego kwarcu ale z wewnetrznego RC - dobrze mysle? ). A jak wykorzystam...
Zrobiłem jakiś czas temu taki układzik na attiny-13 do sterowania dwoma serwami i linijką diodową pokazującą położenie. Niestety do obsługi dwóch serw trzeba po zaprogramowaniu zablokować ISP: '(Program sterownika dwóch serwomechanizmów. Mikrokontroler Attiny 13. Funkcjonalność: Sygnały Ppm 1 - 2 ms: Sygnał Ppm Serwo1 - Port Pb0 - Pin 5...
clock timer clock bascom bascom clock
laser vam1201 kabel monitor 120hz dekodowanie pliku
brother zacięcie papieru obudowa transformatora
Schemat elektryczny DSMB-80: detektor, grubościówka, softstarter Hyundai Galloper - Książka Sam Naprawiam i Alternatywy