A gdzie instrukcja CONFIG TIMER1 = COUNTER?
Poi pierwsze. Do BASCOM-a jest pomoc - także po polsku, której to zresztą jestem autorem. Wersję on-line (beta) znajdziesz na mojej stronie WWW. Jak one działają? Zliczają impusy. Albo z prescalera, albo z zewnątrz. Patrz nota katalogowa. W którą stronę zliczają? Zwykle liczą w górę. W trybach PWM liczą też w obie strony. Patrz nota katalogowa. Jak...
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...
Ja wolę przerwania: Dim Sekunda as byte Config Timer1 = Timer , Prescale = 256 On Timer1 Odmierz_1s Enable Interrupts Enable Timer1 do loop end Odmierz_1s: Counter1 = Counter1 + 34286 Incr Sekunda Return Podałem ci "szkielet" programu do odmierzania 1 sekundy za pomocą timera1. Pamiętaj że procek musi go posiadać i musi być taktowany przez oscylator...
Drogi kolego jest coś takiego jak "Help" w bascom i jest on bardzo przejrzysty. Tak na logikę. Deklarujesz Timer1 jako timer a wpisujesz wartość do countera? Nie dziw się że wywala błąd. Spróbuj "Timer1 = 120".
hunterhouse W AVR-ach sprzętowo można zatrzasnąć zawartość timera , ale uruchomić zliczanie trzeba programowo.Natomiast w 51-ce można uruchomić i zatrzymać timer sprzętowo.Jeśli na P3.3 jest stan wysoki i flaga GATE timera1 jest ustawiona , to timer zlicza doputy , dopuki stan na P3.3 nie zmieni się na niski.Problem jest tylko z tym , że Charly chce...
Hmm Nie jest to takie proste jak sobie wyobrażasz. Najprostszy zegar jaki ja często stosuję: Oczywiście preskaler i początkowa wartość timera dostosowana jest do 8Mhz Jeśli chcesz zastosować zegar z innym taktowaniem musisz sobie obliczyć początkową wartość i preskaler. $regfile = "m8def.dat" $crystal = 8000000 Dim Sekunda As Byte Dim Minuta...
To nie Bascom jest przyczyną tylko źle napisany program ;). 1. odczyt timera1 16bit odbywa się po przez rejestr pomocniczy TEMP, ten rejestr jest też używany przez inne procedury i funkcje i jeśli jest użyty to właśnie niszczona jest wartość High timer1 bo ona tam jest wpisana gdy używasz komendy. wpisując tak timer1 do tablicy możesz gubić High timer1....
Const odlicz=65436 rem dla zegara 12MHz odliczy tylko 100 impulsow (100us) dim licznik as word dim koniec as bit Config Timer1 = Timer , Mode = 1 , Gate = Internal On Timer1 etykieta Counter1 = odlicz do start timer1 bitwait koniec,set reset koniec rem petla powtarza sie co 100 us loop etykieta: licznik = counter1 rem To ma eliminowac czas od momentu...
kurcze mi nie wychodzi :| timer chodzi co 1s ale reszta do kitu Dodano po 25 program chodzi :) oczywiscie musisz go przerobic na wlasne potrzeby dodac tyle ile chcesz przekaznikow i zmienic czasy w programie bo tam jest 10s i 40s ten program jest przygotowany pod ATmega8 i kwarc 8MHz $regfile = "m8def.dat" $crystal = 8000000 Config Pind.0...
] Gdybym chciał jednak mierzyć załóżmy do 1kHz to wymaga aby zliczać przepełnienia? Dlatego napisałem..."Nie znaczy to jednak..." w złym obliczeniu 1 sek wartość wynosiła 61630, przy prawidłowym obliczeniu wynosi 34 286 uwzględniając czas 1sek, częstotliwość taktowania 8MHz i prescaler 256. Przecież czas (1 sec.) odmierzasz timerem0, który jest 8-bitowy...
Dobra. 24C64 to 8KB, czyli już całkiem rozsądna pojemność. Wypróbuj ten szkielet programu, czy działa pilot jak należy, i poświęć chwile czasu na to by sprawdzić czy czas jest odmierzany tak jak należy. Nie za bardzo mogę to sprawdzić w symulacji programowej. Zanim zacznę robić coś więcej chcę mieć pewność, że kręgosłup programu jest OK. $regfile =...
. Zamierzam zrobić tak by mogli wprowadzić korektę (jeśli będzie potrzebna) i zapisać w eeprom. czy to dobry pomysł? Jakoś tak; $Crystal=12000000 Config Timer1 = Timer , Prescale = 8 On Timer1 Inter_1mS Inter_1mS: Counter1 = Counter1 + Licznik (64036 - wychodzi z obliczeń, że da to 1ms) /tu odliczę sobie 103/ Błednie to rozumujesz, albo błednie podałeś...
...A tak po za tematem jak ustawić timer żeby generował przerwanie co 1s bo nie za bardzo wiem bardzo małe wartości potrafię policzyć a to mi nie wychodzi? Przeanalizuj poniższy program. Ustawienia są banalne :) [syntax=basic4gl]$regfile "m8def.dat" $crystal = 8000000 Config Timer1 = Timer , Prescale = 256 On Timer1 1sek Counter1 = 34286 '8000000/256/31250=1s...
Dim Licznik As Byte Enable Interrupts 'Przerwania odblokowane '---------------------------------KONFIG... TIMER 0---------------------------------------... Config Timer1 = Timer , Prescale = 1 Counter1 = 59536 'Wywołąnie co 1ms Enable Timer1 'Odblokowane przerwanie TIMER 1 On Timer1 Procedura_w_przerwaniu_timer1 Procedura_w_przerwaniu_timer1:...
Teraz spłodziłem coś na chacie w bascomie ;-) Może w końcu ta koncepcja ruszy.... uwzględnia drgania styków, działa na innej zasadzie... powinna byc odporna na wszelkiego rodzaju czasy między puszczeniami wciśnięciami itp... w przerwaniu co 10ms sprawdzamy stan przycisku zadziałanie przycisku następuje najwcześniej po 10 jego sprawdzeniach (po 100ms)...
Config Timer0 = Counter , Gate = External , Mode = 1 Config Timer1 = Timer , Gate = Internal , Mode = 1 Config Lcd = 16 * 2 Dim Frequency As Long Dim Temp As Byte Dim Counts As Byte Dim kon As string *3 Declare Sub 1sekunda On Timer1 Timer1_int On Timer0 overflow Enable Interrupts Enable Timer0 Enable Timer1 kon="Hz" Frequency = 0 Cls Do...
Witam Mój problem to brak kompilacji przy konfiguracji Timer2 w tryb Counter Unknown CONFIG parameter Porblem polega na tym że w helpie BASCOM-AVR można konfigurować Timer 2 w tryb Counter. Wrzucam cały kod :[syntax=basic4gl] $regfile = "m16def.dat" $crystal = 16000000 Dim Freq As Long Const Licznik = 2789 Config Timer1 = Timer , Prescale = 256 Config...
Po komendzie Stop Timer1 należy odczytać ilość zliczonych impulsów zegarowych przypisując jakiejś zmiennej (typu Word, np Timer_val) jego wartość: Dim Timer_val As Word ... Timer_val=Timer1 lub Timer_val=Counter1 a następnie wyzerować rejestry timera, przygotowując go do zliczania od nowa: Timer1=0
Problem w pewien sposob rozwiazany, moze komus sie przyda Dodano linie: $initmicro ........ _init_micro: Config Watchdog = 1024 Start Watchdog Return W tej postaci watchdog poprawnie resetuje uP: $crystal = 7372800 $regfile = "m168def.dat" $initmicro Config Aci = Off Config Lcd = 40 * 2 Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Portb.3...
Witam. Uruchomiłem mój prototypowy zegar widmowy lecz mam mały problem. Pozycjonowanie obrazu zrealizowałem za pomocą halotronu podpiętego pod int0. Problem polega na tym że wraz z ustawiniem wartości zmiennej A w przerwaniu od int0 wartość timera1 odmierzająca stałe odcinki czasu nie zostaje resetowana co skutkuje drżeniem obrazu. W jaki sposób w bascomie...
Połowa mostka H : https://obrazki.elektroda.pl/9842884200_... Obecnie są takie napięcia zasilania. Jutro wrzucę kod w Bascomie. [syntax=vbnet] Config Portd.0 = Output Config Portd.1 = Output Config Portd.2 = Output Config Portd.3 = Output Portd.0 = 0 Portd.1 = 1 Portd.2 = 0 Portd.3 = 1 Dim X1 As Byte Config Timer1 = Timer , Prescale...
Proszę rzucić okiem na dokumentację ATMega32 w sekcji Timer0/Counter0 and Timer1/Counter1 Prescalers , rys. 39 i porównać sobie z rys. 31 w tej samej sekcji w dokumentacji ATMega8. Czy widać jakąś różnicę? A zatem 2x większe taktowanie wymusi całkowitą zmianę w programie.
Witam! Mam pytanie do osób programujących w Bascomie. Dlaczego po kilkukrotnym wciśnięciu przycisku P3.2 program się zawiesza i co zrobić by przez cały czas działal poprawnie? Dziękuję za poświęcenie chwili czasu. Config Timer1 = Timer , Gate = Internal , Mode = 1 Dim D As Byte Dim C As Word D = 0 Declare Sub Czas On Timer1 Przerwanie Enable Interrupts...
Cześć Mam pewien problem do rozwiązania potrzebuje zrobić licznik który będzie mi zliczał do 10000 co 1 sek zrobiłem sobie liczniki T0 i T1 zliczają do 255 bo mają 8bit ale T2 ma 16bit nie mogę tego przeskoczyć[syntax=basic4gl] $regfile = "m32def.dat" $crystal = 16000000 Config Porta = &B11111111 : Porta = &B11111111 Config Portb = &B00000000 : Portb...
Przeznaczenie: Zatrzymuje działanie programu lub określone urządzenie. Składnia: STOP STOP urządzenie gdzie: urządzenienazwa symboliczna uruchamianego urządzenia. Opis: Pierwszy format instrukcji powoduje zatrzymanie działania programu. W tym celu jest wykonywana pusta pętla, podobnie jak w instrukcji END. Jednak przy instrukcji STOP nie są wyłączane...
$regfile = "M16def.DAT" $crystal = 8000000 $baud = 57600 Dim Czestotliwosc As Long Config Timer1 = Counter , Edge = Rising Print "Licznik" Enable Interrupts Enable Timer1 Do Start Timer1 Wait 1 Stop Timer1 Czestotliwosc = Counter1 Print "Freq: " ; Czestotliwosc Counter1 = 0 Loop Sygnał podaję na portb.1 i wszystko śmiga. Nie wiem tylko dlaczego nie...
Może coś takiego $crystal = 11059200 Dim Czestotliwosc As Long 'w twoim przypadku może być Byte Const Licznik = 22336 ' aby Timer1 przepelniał sie co sekundę Config Timer1 = Timer , Prescale = 256 Config Timer0 = Counter , Edge = Falling On Timer1 Czas 'On Timer0 Zlicz Enable Interrupts Enable Timer1 'Enable Timer0 'Pomiar czasu Counter1 = Licznik Cls...
Witam. Mam problem z przerwaniami w atmega8. Wcześniej nie potrzebowałem przerwań więc to zagadnienie mnie nie interesowało. Potrzebuję wywołać przerwanie zewnętrzne int0 które uruchomi timer1, a ten zacznie odmierzać czas. Napisałem coś takiego (oczywiście to część z większego projektu) '$sim $regfile = "m8def.dat" 'informuje kompilator o...
Już działa!!! ;) ,a przynajmniej osiągnąłem zamierzony efekt. [syntax=basic4gl]$regfile = "attiny2313.dat" 'wybór procesora attiny2313 $crystal = 8000000 Config Pinb.1 = Output 'buzzer mający piknąć 3 razy po odmierzeniu czasu nop Buzzer Alias Pinb.1 Dim Sekundy As Byte Dim Minuty As Byte Sekundy = 0 Minuty = 0 Buzzer = 1 Config Timer1 = Timer , Prescale...
Witam Napisałem taki oto programik w bascomie, chce aby przerwanie bylo co 10ms. Mam jednak pewne zastrzeżenia do Bascom'u i nie jestem pewien czy w praktyce te 10ms bedzie dokładne ?? ile taktów zegara potrzeba na wpisanie wartosci dla timera oraz jego wystartowanie ?? gdzies wyczytalem ze 54 takty, ale nie jestem pewien tego. $crystal = 12000000 $large...
Zaczynam dopiero programować i mam problem z TIMER = COUNTER . Chce by o zliczeniu ilości impulsów procesor wykonał np: zmianę stanu portu lub coś innego . To jest program : [syntax=bascom] $regfile = "m32def.dat" $crystal = 8000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Porta.2 , Db5 = Porta.3 , Db6 = Porta.4 , Db7 = Porta.5 , E = Porta.1...
Moze lepiej uzyc przerwania od przepelnienia Timera. Ustawic tam taka wartosc poczatkową, żeby przepelnial sie co 5 sekund, a jak sie nie da tak duzo, to co 1 sekunde i zwiekszać jakiś licznik. Jak licznik osiagnie wartość 5 to wywołać podpogram Dim Licznik As Integer On Timer1 Co_sekunde Enable Interrupts ' Wlaczenie przerwan Enable Timer1 ' Aktywowanie...
romario4: dzięki, ale to nic nie daje. Ja już próbowałem zamiast capture1 dać timer1 i counter1 i za każdym razem identycznie - czyli kapa.... dziadek-nfc: tylko drgania jakich styków? Ja sygnał biore bezpośrednio z głównego komputera samochodu i puszczam go przez optoizolator. No chyba że drgania styków wtryskiwacza zakłócają sygnał komputera, ale...
zumek a mogbys podzucic kawalek programu Skoro tak ładnie prosisz :D '*********** 4 x PWM ********* $regfile = "attiny2313.dat" Ddrb = &B00011100 'Oc0a,Oc1a,Oc1b = Output Ddrd = &B00100000 'Oc0b = Output Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up Tccr0a = &B11110001 'Timer0=Pwm ,Compare A Pwm = Clear...
Witam wspólnotę chciałbym zaznaczyć że z wykształcenia jestem mechanikiem, a z programowaniem nie miałem wcześniej styczności. Przeczytałem książeczkę która mowiła o programowaniu w jezyku bascom, i stworzyłem taki o to kod programu. [syntax=basic4gl] $regfile = "m8def.dat" $crystal = 8000000 Config Timer0 = Timer , Prescale = 256 'licznik do odmierzania...
Przespałem się z tym i już wymyśliłem. Wykorzystałem przerwanie wewnętrznego timera oraz instrukcje warunkowe IF. Oto wycinek listingu: [syntax=basic4gl] 'konfiguracja procesora ,portów , LCD, itp. Dim Impulsy As Byte 'zmienna impulsy Config Timer1 = Timer , Prescale = 256 On Timer1 1sekunda Enable Interrupts Enable Timer1 Start Timer1 Counter1 = 56000...
Cześć! Zbudowałem miernik częstotliwości w oparciu o procesorek Attiny 2313. Oczywiście zrobiłem to w ten nazwijmy "lepszy sposób" czyli dwa timery, jeden oblicza czas równy 1 sekundzie, a drugi liczy impulsy. Kwarc zewnętrzny 11059200MHz, wszystko działa jak należy... ale mam problem z pomiarem czestotliwości w zakresie od 2 do 5 Hz z rozdzielczością...
$regfile = "m16def.dat" $crystal = 8000000 Config Pinb.0 = Input Config Pinb.2 = Input P1 Alias Pinb.0 P2 Alias Pinb.2 Set Portb.0 Set Portb.2 Config Timer1 = Timer , Prescale = 256 On Timer1 1_sekunda Enable Timer1 Enable Interrupts Counter1 = 34286 Declare Sub Alarm Declare Sub Sys_off Dim Sekundy As Byte Dim Flaga1 As Bit Dim Flaga2 As...
nie daje glowy ze kod dziala. Mozliwe ze jest duzo bledow. Nigdy nie bawilem sie z star i stop timer1 wiec to moze byc zle. Poza tym nie wiemcz czy obliczenia nie beda sprawialy problemow i dekleracja zmiennych. $regfile = "m8def.dat" $crystal = 8000000 Config Pinb.1 = Input Config Pinb.2 = Input Config Pinb.3 = Input Set Portb.1 Set Portb.2...
Witam Piszę program (bascom) i nadziałem się na problem z którym nie mogę sobie poradzić. Timer 1 pracuje jako zegar i po spełnieniu warunku , ma załączyć przekaźnik który ma być załączony na czas_pracy i po odliczeniu czasu pracy ma wyłączyć się na czas przerwy i zablokować włączenia przekaźnika na ten czas. Tak w skrócie: kod : $regfile = "m8def.DAT"...
Stasznie mętnie to opisujesz. Żadnych sensownych komentarzy Po zmianie kodu na taki: $crystal = 8000000 $regfile = "m8def.dat" Config Timer0 = Timer , Prescale = 64 , co 0,002s Config Timer1 = Counter , Edge = Falling Dim Wartosc As Word Config Portb.1 = Output Reset Portb.1 Config Portb.2 = Output Set Portb.2 Config Pinb.0 = Input Set Pinb.0...
$regfile = "attiny2313.dat" $crystal = 10000000 $hwstack = 32 $swstack = 8 $framesize = 16 Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.1 , Rs = Portb.2 'konfiguracja podłączenia LCD,na płytce testowej Config Lcd = 16 * 2 Config Timer1 = Counter , Edge = Falling , Noise Cancel = 1 , Prescale = 1 Config...
Korzystając z Waszych wskazówek przerobiłem program tak: Dim Test As Long ... Start Adc Do Wart_ac = Getadc(1) Cls Lcd Wart_ac ; Lowerline Lcd Test; 'poprawka Waitms 250 Loop End Czas: Stop Timer0 Stop Timer1 Czestotliwosc = Czestotliwosc * 64 Czestotliwosc = Czestotliwosc + Counter0 Test = Czestotliwosc 'poprawka Czestotliwosc = 0 Counter0...
Temat enkoderów (w wydaniu praktycznym) jest mi niestety jeszcze mało znany więc licze na krytyczne uwagi i nie boje sie sformułowań, "że to nie będzie działać". Ale zrobiłem coś takiego:patrz plik(pominąłem rysowanie części rzeczy przy mikroklocku, jakiś kwarc itp). Co do kodu w Bascomie, to nie wiem czy o to Ci chodzi (na razie nie ma żadnych przeliczników...
zawsze tak robilem gdy chcialem przyciskami dodawac/odejmowac godziny, sekundy lub minuty: on timer1 1sekunda do If Pinb.1 = 0 Then Waitms 45 If Pinb.1 = 0 Then Incr Minuty If Minuty = 60 Then Minuty = 0 End If End If loop 1sekunda: Counter1 = Counter1 + costam Incr Sekundy If Sekundy = 60 Then Sekundy = 0 Incr Minuty If Minuty = 60 Then Minuty...
Witam . Chciałem zrobic tester pomp opryskiwaczy . Chodzi o mierzenie wydajności pompy w litrach na minute a moje pytanie czy nie bedzie gubił impulsów podczas wykonywania przerwania . Pomiar co 1 sekundę a wydajność pomp od 40l do 260l / min [syntax=basic4gl] $crystal = 16000000 $regfile = "m32def.DAT" Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4...
$crystal = 8000000 Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.3 , Rs = Portb.2 Dim Msek As Integer Dim Sek As Byte Msek = 0 Sek = 0 On Timer1 Zegar Cls Enable Interrupts Enable Timer1 Start Timer1 Config Timer1 = Timer , Prescale = 64 Counter1 = 3036 Do Loop Zegar: Incr Msek If Msek = 2 Then...
Posiadam książkę pt. "Programowanie mikrokontrolerów AVR w języku BASCOM" Marcina Wiązania i jest tam przykład zegarka z wykorzystaniem timera. Problem polega na tym że sekunda tak naprawdę trwa "wieki" prawie 8s prawdziwych. Połączyłem układ zgodnie ze schematem w książce i tak samo, odłączyłem rezonator nic się nie zmieniało, zmieniałem taktowanie...
zobacz sobie temat: http://www.elektroda.pl/rtvforum/topic81... program będzie bardzo podobnie wyglądał. Chodzi mi o Timery. Dodano po 2 ale czy te diody mają się świecić cały czas to znaczy, że jeśli będzie więcej impulsów niż 200, to mają się świecić wszystkie 3 diody czy tylko 3 dioda?? Tak na szybko napisałem( nie testowałem ale powinno działać):...
Przeanalizuj to: [syntax=basic4gl]$regfile = "m8def.DAT" $crystal = 11059200 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5 , E = Portc.1 , Rs = Portc.0 Cursor Off Dim Czestotliwosc As Long Const Licznik = 22335 '22336 Tu wyregulujesz czas pomiaru Config Timer1 = Timer , Prescale = 256 Config...
Właśnie mam już cały program gotowy w bascomie , nie umiem w tej chwili na tyle dobrze C żeby napisać obsługę PCF, dwóch DS18B20 plus MPX4115. Także chodzi właśnie mi tylko o rozwiązanie pomiaru ciśnienia co 5-10 minut. Ok doszedłem wkońcu jak to zrobić . Skoro program spełnia oczekiwania programisty, to musi byc dobry! Niemniej jednak te 3 przedstawione...
Może nie umie wstawiać? $regfile = "m88def.dat" $crystal = 1000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portb.1 , Db6 = Portb.2 , Db7 = Portb.3 , E = Portb.5 , Rs = Portb.4 Config Portd = &B00001111 'portd 0 1 2 3 jako wyjscia portd 4 jako 1wire 5 6 7 jako wejscia Portd.5 = 1 Portd.6 = 1 Portd.7 = 1 Portd.3 =...
Udało się! $crystal = 2000000 Config Timer1 = Timer , Prescale = 1 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.6 , Db6 = Portc.2 , Db7 = Portc.7 , E = Portc.5 , Rs = Portc.4 Enable Timer1 Enable Interrupts On Timer1 Niski Config Porta = Output Config Pinc.0 = Output Config Pinc.1 = Output Config Pinb.0 = Input Config Pinb.1...
Witam Znalazłem na elektrodzie poniższy kod: $regfile = "m8def.DAT" Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.0 , Db5 = Portc.1 , Db6 = Portc.2 , Db7 = Portc.3 , E = Portc.4 , Rs = Portc.5 Config Portd.0 = Input Config Portd.1 = Input Config Portd.2 = Input Config Portd.3 = Input Config Portd.5 = Input Config Portb.4 = Output Cursor...
Długi czas już siedzę nad tym programem, analizując inne programy i próbując różnych sposobów ale nie mogę zmusić tego do działania... Byłby ktoś skłonny wytknąć mi błędy ? Dodam, że jak pominąć całą sprawę z timerem to na lcd poprawnie liczy mi wartości (tzn prawie poprawnie bo 28 / 10 wychodzi 2.7999995 ale temu już zaradziłem) $regfile = "m32def.dat"...
ok dobra, napisze ci przykladowy kod, bo juz nie moge patrzec na twoje kody. $regfile = "m8def.dat" $crystal = 8000000 Config Pinb.1 = Input Config Pinb.2 = Input Portb.1 = 1 Portb.2 = 1 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 Config Timer1 = Timer...
Witam Mam problem ze sterowaniem 2 transformatorów przez transoptory MOC3041 schemat załączam w pliku pdf. Do transoptorów podłączone są bramki triaków BTA41-600 a one załączają napięcie na pierwotne uzwojenia traf. Podczas projektowania podłączałem trafa ale na zmianę teraz gdy mam gotowy układ załączenie pierwszego powoduje załączenie drugiego. W...
Sorry, Wiesz ja to sie z tym bawie tylko i program pisze w bascomie metoda prob i bledow. Za bardzo sie na tym nie znam tylko sobie przerabiam inne projekty na moje potrzeby. Chodzi mi tylko o to czy dobrze rozumiem te taktowanie procesora. no ale jak co to tu masz caly kod: $regfile = "m8def.dat" $crystal = 12000000 Config Lcd = 16 * 2 Config...
Zainstalowałem AVR Studio4 i lecę od początku z google i pdf na temat ASM i AVR Powiedzcie chociaż czy w dobrym kierunku zmierzam? Bo jak w złym to odpuszczam i daje sobie spokój, pobawię się migającymi diodami w Bascomie. Tam gdzie nie ma komentarza to nie wiem co to znaczy i co robi ale było w pdf lub innych opisach, jeżeli ktoś może mi wyjaśnić instrukcje...
Witam! Płytki i schematu nie trzeba już sprawdzać - wykonane, połączone i działa. Kwestia nierozwiązana to program w Bascomie. Poprzedni kod trochę zmodyfikowałem, ale nic to nie dało. Sama obsługa przerwania Timera0 jest zła, bo wywalając całą resztę i zostawiając: [syntax=basic4gl]$regfile = "m8adef.dat" $crystal = 8000000 Config Pinb.1 = Output Config...
KaJakKrzysztof: W katalogu Bascoma w program files masz katalog Samples. Jest tam o ile się nie mylę zegarek, jakiś bardziej skomplikowany zegarek i mnóstwo innych przykładów zastosowań timerów, przerwań itd. Na pytanie - czy coś takiego będzie działać odpowiedz sobie sam, załaduj program do AVR-ka. Timer od countera różni się tym, że służy do ODLICZANIA...
Witam. Mam wersję demo BASCOM−a AVR, W edw Nr.5/2000 jest zamieszczony schemat wraz z kodem zródłowym Mikroprocesorowego miernika częstotliwości na AT90s2313 (AVT-3003). Mam prośbe o skompilowanie mi tego programu. Jeżeli bedzie ktoś chętny to zamieszcze wersje zródło na forum lub przeslę emailem. A może macie już wersję gotową Hex Pozdrawiam...
Mam taki problem, że zrobiłem projekt Odbiornika Morsa na ATmedze8. W oryginalnym projekcie jest kwarc 10 MHz, a ja użyłem 10.240 MHz gdyż taki miałem w domu, a sklepu elektronicznego w mojej okolicy nie ma. Jak podłącze ten odbiornik do komputera i z programu morsik coś wysyłam to np. "adrian" dekoduje poprawnie, a "jarek" już nie, tylko na LCD pojawia...
A może by tak? $regfile = "2313def.DAT" $crystal = 11059200 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portb.5 , Db5 = Portb.4 , Db6 = Portb.3 , Db7 = Portb.2 , E = Portb.6 , Rs = Portb.7 Cursor Off Config Portd.6 = 1 Config Portd.0 = 0 Portd.0 = 1 Portd.6 = 1 Dim Czestotliwosc As Long Const Licznik = 22336 Config Timer1 = Timer , Prescale...
Witam, Napisałem prosty program w bascomie jako komputerek pokładowy do motoru $regfile = "m8def.dat" $crystal = 8000000 Config Lcd = 16 * 2 Config Lcdbus = 4 Config Lcdpin = Pin , Db4 = Portd.2 , Db5 = Portd.3 , Db6 = Portd.4 , Db7 = Portd.6 , E = Portd.1 , Rs = Portd.0 Config Pind.5 = Input Cursor Off Cls Lcd "Szerokiej Drogi!"...
Witam wszystkich, Tak jak w temacie: Poszukuje sprawnego programu aby zrobić zegar LCD na ATMEGA8. Program musi być w języku bascom. Znalazłem coś takiego ale nie działa :/ Opoźnienie sekundy wynois jakies 4s 'Program zegara wykorzystującego przerwania od Timer1 'Przerwanie przepełnienia Timer1 jest generowane co 1 s '8 MHz/256/31250 = 1 s 'Przycisk...
Witam jest dość początkującym w dziedzinie programowania i potrzeba mi połączyć tak aby na jednym wyświetlaczu pojawił sie zegar i licznik impulsów z halotrona jako obrotomierz zegar: $regfile = "m8def.dat" 'informuje kompilator o pliku 'dyrektyw mikrokontrolera $crystal = 8000000 'informuje kompilator 'o częstotliwości oscylatora 'taktującego...
Mam pewien problem, mianowicie zrobiłem sobie komputer do samochodu, liczy mi spalanie, predkosc, przejechany dystans, na ile starczy jeszcze paliwa, spalanie chwilowe temp i jeszcze pare innych rzeczy. I mam 2 problemy: 1 - kiedy włącze światła wszystko sie zawiesza....(musze odpalac auto z włączonymi swiatłami wtedy komp się uruchamia bez problemu)...
no jak się szybko pisze to tak jest, ale ważne że działa. Po 2 chciałem żeby jak najmniej ingerowac w program tegoż Pana. Mozna dać w przerwaniu od Timera żeby zwiększało sekundy, minuty i godziny. Tak sie powinno dać ale zrobiłem to na szybko. Mniej więcej tak by to wyglądało: $regfile = "attiny2313.dat" $crystal = 8000000 Config Pind.0 =...
OK pytanie poprawiam :) nie miałem na myśli żle działającego procesora tylko mój program oczywiście. jesli w bascomie to będzie działać to nie będę kombinował dalej zmostkowałem wejścia INT0 i T1 bo to jest ten sam impuls z wyjścia A enkodera, enkoder chodzi dobrze, ale obroty są liczone źle, dobrze są liczone jeśli obraca sie bardzo powoli. Przerwania...
Teraz poprawiłem ten program lecz znów nie działa. $regfile = "m8def.dat" $crystal = 8000000 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 Config 1wire = Portb.0 Config Timer1 = Timer , Prescale = 256 Config Pinb.1 = Input Config Pinb.2 = Input Deflcdchar...
Słuchaj uważnie LightHouser!!! Słucham... ;) Po 1:Ja liczbe w kodzie szestanktowym zwykłem zapisywc jako 255H(Tak mnie nauczyli) Wcale z tego powodu to nie oznacza, że jest to jedyna poprawna forma zapisu, "0x255" jest ogólnie przyjęte w C , "$255" w asm na Commodore też się trafiło. Po 2:Juz dawno pisałem ze chce układ zrobic na AT89CXX51 i interesuje...
Kod wygląda tak i nadal nie działa tak jak bym chciał.. Chcę żeby w 5 minucie zapaliła się dioda podłączona do PORTB.0, ma się tam pojawić stan wysoki więc podłączam diodę do masy i nic. [syntax=basic4gl]'Program zegara wykorzystującego przerwania od Timer1 'Przerwanie przepełnienia Timer1 jest generowane co 1 s '8 MHz/256/31250 = 1 s 'Przycisk S1 ustawia...
Witam, mam nadzieję, że piszę we właściwym dziale. Mam problem w kodzie poniżej, w którym zliczam czas od góry w dół. Program wstępnie zlicza prawidłowo, ale zamiast cyfry zero wyświetla mi jakiś dziwny znak którego nie definiowałem. W kodzie drugim zliczającym od dołu do góry wszystko działa ok zero się wyświetla. Gdzie jest błąd? [syntax=basic4gl]...
Witam,. Mam następujący problem: Przetwornik analogowy na ADC pin 1 Przetwornik częstotliwość na Timer0 max232 1uF Kwarc 8Mhz i atmega16L Na kablu ze złączkami BNC mam połączenie atmega -> przetwornik czestotliwosci (2 kolumna). Wydaje mi się, że wszystko dobrze zlutowane oraz nie ma przerw w kablu BNC. Kabel mam 50 Ohm. Podczas wysyłania danych na...
Witam serdecznie a czy nie dało by sie przerobić tego programu i schematu na Atmegę 8. Mam zamiar zrobić taki wykrywacz ale na Atmedze 8. Niewidziałem żednego projektu w oparciu o ten uC $regfile = "m8def.DAT" Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.0 , Db5 = Portc.1 , Db6 = Portc.2 , Db7 = Portc.3 , E = Portc.4 , Rs = Portc.5...
To część programu do obsługi pewnego sterownika. Jest tam to co Cie interesuje. $regfile = "m8def.dat" $crystal = 8000000 Config Lcdmode = Port 'w pliku raportu będzie informacja o trybie pracy Config Lcdbus = 4 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6 , Db7 = Portd.7 , E = Portc.4 , Rs = Portb.0...
problem mój polega na nieprawidłowym wyswietlaniu cyfr . o ile w zakresie 0-99 wszystko jest ok., to powyżej 100 ma same zera : wyswietlacz ma 3 cyfry led-7-segmentowe i w założeniach ma liczyć czas od 0 do 999 sek pełny kod: '$sim $regfile = "m8def.dat" 'informuje kompilator o pliku $crystal = 8000000 'informuje kompilator o Config Portd...
programu nie wstawiłem bo nie wiem czy będzie potrzebny a jest strasznie pokręcony chodzi mi o samą zasadę dzialania coś porównane do czegos i nie wiem moze przypisane jakiejs innej zmiennej tu jest listing ale nie skończone obsługa ledów bo ustawienie ma byc nimi sygnalizowane $regfile = "m8def.dat" $crystal = 8000000 Config Pind.0 = Output...
Witam. Dostałem 4 sztuki ds18b20 w samplach i konstruuję termometr do szkoły. Napisałem program,udało mi się połączyć z czunikami i wyświetlić temperaturę na LCD,wszystko było ok. Oba czujniki miałem zamontowane na płytce prototypowej(mam na niej zmontowany cały układ). Po pierwszych testach przylutowałem do jednego czujnika skrętkę o długości ok 30...
Witam ! Programuje w Bascome, sercem ukladu jest Atmega8. W czym problem, otoz sterowanie wyswietlaczami odbywa sie multipleksowo po przepelnieniu Timera0 natomiast odmierzanie 1sekundy po przepelnieniu Timera1. Nie umiem sie wbic pomiedzy Timery z obsluga klawiaturki z 3 przyciskow ktorymi chcialbym ustawiac czas i budzik. Czy ktos umialby mi pomoc...
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...
Próbowałem tak $regfile = "m8def.dat" $crystal = 8000000 Config Pinb.1 = Input Config Pinb.2 = Input Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.2 , Config Lcdpin = Pin , Db5 = Portc.1 , Db6 = Portc.0 , Config Lcdpin = Pin , Db7 = Portc.5 , E = Portc.3 , Config Lcdpin = Pin , Rs = Portc.4 Config 1wire = Portb.0 Declare Sub Odcz_temp...
Mam Taki zegarek na LCD oparty o Timer1: $regfile = "m16def.dat" $crystal = 16000000 Config Portb = Output Config Lcdbus = 4 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Pb.2 , Db5 = Pb.3 , Db6 = Pb.4 , Db7 = Pb.5 , E = Pb.1 , Rs = Pb.0 Cursor Off Cls Config Timer1 = Timer , Prescale = 256 Declare Sub Wysw_czas On Timer1 Odmierz_1s Dim...
Witam Próbuje zrobić zegar z książki Marcina Wiązania "Programowanie mikro kontrolerów avr w języku Bascom" Przepisałem cały program z książki, podłączyłem według schematu http://obrazki.elektroda.pl/8287318100_1... , i niestety na lcd pojawiają się kwadraciki. Programator mam usbasp, i program mkAVRCalculator. W zakładce fusy uproszczone...
Po wlaczeniu funkcji MUTE na calym wyswietlaczu zostaje wyswietlony tan napis kilkakrotnie. Czy mozna zmienic jakos kod programu aby ten napis byl wyswietlony tylko raz i na srodku?? Kod: $large Config Lcd = 16 * 2 Config Timer1 = Timer , Gate = Internal , Mode = 1 Config Sda = P3.1 Config Scl = P3.0 Dim Licz As Byte Dim I As Byte Dim Nast(5) As Byte...
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:...
Witam Jestem w trakcie wykonania inteligentnego sterowania wentylatora. układ "sprawdza" wilgotność za pomocą prostego (rezystancyjnego) czujnika wilgoci i na tej podstawie wylicza czas wietrzenia i steruje wentylatorem. Praktycznie na sam koniec budowy zaczęły się dziać cuda. Wentylator zaczyna się załączać "kiedy chce" (i nie wiem czym to jest spowodowane)...
Witam! Zabrałem się nie dawno za przepisywanie dwóch programów z książki Marcina Wiązani. Są to programy: Sterowanie z poziomu 1-wire dwoma termometrami, Zegarek na timer1. Mój problem polega na tym że nie wiem jak to złączyć w jedną całość tzn. chodzi o to żeby współpracowały ze sobą jak należy, ponieważ tylko ciągle wyświetla mi się zegarek na początku,...
(at)dondu Twoje artykuły czytałem dokładnie ;-) Z kodu poniżej wycięte ustawianie portów (bonie widziałem żadnej różnicy w zużyciu prądu). Procek ustawione fusami na 8MHz wewnętrzny z podziałem przez 8 [syntax=vbnet] $crystal = 1000000 ' ustawiamy prędkość zegara $baud = 9600 ' ustawiamy prędkość transmisji $hwstack = 220 ' ustawiamy wielkość stosu...
Mam sobie niżej pokazany programik w bascomie ale niestety nie wiem jak dopisać obsługę pilota :| Programik jest na 89c4051 ;) $large Config Lcd = 16 * 2 Config Timer1 = Timer , Gate = Internal , Mode = 1 Config Sda = P3.1 Config Scl = P3.0 Dim Licz As Byte Dim I As Byte Dim Nast(5) As Byte Dim St As String * 7 Dim W_reg As Integer Dim Wielk1...
Ten kod jest wersją maksymalnie testową. Zawiera kupę niepotrzebnych rzeczy i jest w nim nieziemski bałagan - przepraszam. Jestem bardzo początkujący i próbuję pisać posługując się najprostszą składnią. Był pisany "na szybko", aby stwierdzić czy ta idea zadziała. I generalnia działa. Config Lcd = 16 * 2 $crystal = 1382400 ' fusebit ustaw xtal full swing...
Witam wszystkich! Pewnie pomyślicie "znowu to samo", no ale zlitujcie się w Wigilię i przeczytajcie te kilka zdań :D Walczę z problemem od kilku dni. Nie potrafię skonfigurować Timera by konwertował dane z 1wire poza główną pętlą. Nie mogę sobie pozwolić na waitms, bo wtedy mam problemy z poruszaniem się w menu. Mam już działający Timer1 odliczający...
heh i jeszcze kilka malych problemow pisze tutaj aby wszystko bylo jasne :) chce wystawic na pinid.5 stan wyskoki i pozniej go zmienic czyli np config pind.5=output .. powiedzmy ze to jest w do loop do set pind.5 wait 1 reset pinb.5 wait 1 loop i oczywiscie to nie dziala caly czas pokazuje ze jest stan 0 na forum juz bylo poruszane ale tamten zapis...
Popełniłem taki oto kod jak poniżej. W założeniu ma to być zegarek stawiany pilotem, oraz z dwoma DS18B20. Założyłem sobie, że nie użyję żadnego Wait, ani Gosub. Mam jednak jeden problem z odświeżaniem czasu na LCD. Niby dwukropki migają co sekundę, ale sekundy nie są wyświetlane poprawnie. Przez pewien czas jest niby dobrze, ale czasem jakby pomija...
http://obrazki.elektroda.pl/9838687700_1... Trochę z obawą prezentuję kolejny już na elektrodzie sterownik oświetlenia, no bo ileż tego już tutaj było? A jednak nie znalazłem rozwiązania mnie zadowalającego, dlatego też powstał niżej prezentowany układ, powstał ponieważ klasyczne lampy z czujnikami ruchu mają pewną zasadniczą wadę:...
Witam, zwracam się z prośbą o pomoc. Tworzę program sterujący silnikiem DC. Program składa się z menu głównego w którym są 4 podprogramy 3 z nich działają bezbłędnie. Największy kłopot sprawia mi 4 podprogram a zarazem najważniejszy. podprogram startt ma za zadanie odmierzyć zadany przedział czasowy gdy osiągnie wartość 0 wykonać pewną procedurę i zacząć...
Pierwsze stosuję procki które maja oporniki . Stosuję zasadę minimalnego połączenia , żeby była zachowana . Zasilanie musi pochodzić ze wspólnego źródła ale zawsze procesor musi mieć oddzielny stabilizator . Napięcie referencyjne robię tak jak zaleca to producent procka (chyba wie co produkuje) Zawsze stosuję 7805 bo wiem że jest OK i mam zawsze 5.02V(byle...
Zabrałem się za kolejną rzecz i utknąłem na timerach i książce do bascoma. Generalnie to mam problem z PWM - potrzebuję wygenerować impulsy o zadanej długości w taktowaniu pomiędzy x Hz Zakładając, że poterzbuję wygenerować impuls o długości od 1000us do 2000us z częstotliwością dowolną pomiędzy 50Hz a 400Hz to... tak sobie policzyłem Przyjąłem częstotliwość...
counter1 bascom timer1 bascom bascom timer1
kodowanie modułu pralki twingo kontrolka silnik koszt naprawa telewizor samsung
eurorack zasilacz instrukcja pralki optima amica
Obsługa plików M3U przez Onkyo NS-6170 Onjektor reset wtrysków Diesla - procedura i korzyści