Mam ustawiony timer w Input Capture Ustawienie timera z przepełnieniem licznika IC_Timers 40000 (po prostu potrzebowałem równy czas też dla odmierzania zegarka i innych bajerów do odmierzania czasu ) przerwanie co 20ms. Od lewej okres, czas stanu wysokiego, aktualny timer ICR1, poprzedni...
Na AT90S8535 zrobiłem sobie licznik impulsów i elegancko zlicza. Zrbiłem to na dwa sposoby (poniższy kod) z wykorzystaniem jednego timera i bardziej dokładny z wykorzystaniem 2 Timerów. Najgorsze jest to że gdy wsadziłem ATmega8535 na lcd pojawia mi się zero tak jakby counter w ogóle nie zliczał impulsów....
To jest fragment kodu, którego używałem , żęby zrobić obsługę licznik, ale nie działa w symulacji $sim $regfile = "m8def.dat" 'Informacja dla kompilatora. $crystal = 8000000 'Też dla kompilatora,zastosujemy...
Witam, pisze program w którym wykorzystuję 16 bitowy Timer1 z Atmegi 328. Najpierw konfiguruję go tak: [syntax=vbnet]Config Timer1 = Timer , Prescale = 64 'Kwarc 18.43MHz, 1/18430000 * 64 = 3.473us Enable Timer1 On Timer1 Impulsuj 'ISR[/syntax] a...
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...
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,...
Witam, Mam pewien problem dotyczący licznika Timer1 w procesorze TINY45. Programuję w BASCOM. Procesor TINY45 posiada 2 liczniki 8-bitowe: TimerO oraz Timer1. Problem w tym, że nie bardzo mi się udaje zmusić Timer1 do działania... Napisałem taki prosty program na próbę: $regfile = "attiny45.dat" $crystal...
emarcus dzięki teraz już gra. Mam jeszcze takie pytanie bo tak jak wcześniej pisałem docelowo chcę zrobić miernik indukcyjności. Przejrzałem projekty mierników w necie i na elektrodzie i są oki tylko większość z nich opiera się na mikrokontrolerze PIC 16F84A. W sumie mam wsad do procka w asm ale kiepsko...
Witam. Chciałbym sobie zrobić elektroniczny licznik (prędkościomierz) do motoru. Zamysł jest taki: Procesor Attiny2313 zlicza impulsy podawane przez czujnik optyczny z myszy komputerowej. Znając czas, obwód koła itd. możemy wyliczyć prędkość. Jest jednak problem. Mianowicie po włączeniu silnika licznik...
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 ) ...
Mikrokontroler ATMEGA16, oscylator wewnętrzny 8 MHz, wykorzystany timer1 (16 bit). Dzielę połówkę sinusoidy na 100 części. 10ms / 100 = 0,1 ms = 0,0001s. Odcinki czasu 0,1 ms generuje mi timer1 Takt zegarowy t = 1 / 8000000 Hz = 0,125 ms Dla uzyskania 0,0001s muszę zliczyć 800 taktów ( 800 x...
Witam. Niby błahe ale już sam nie wiem: ustawiam Timer0 jako licznik impulsów podawanych na tę nogę 89c2051 i w symulacji programowej jak wyzeruję P3.4 to liczy mi impulsy cały czas a nie tylko przy zboczu. Jak ustawić ten licznik aby liczył podawane na niego impulsy? Oto kod: Config Timer0 =...
Witam! To mój pierwszy post, więc proszę o wyrozumiałość. Skonstruowałem licznik impulsów - częstościomierz, w oparciu o projekt AVT5025 (Mikroprocesorowy wykrywacz metali). Sonda wykrywacza umieszczona będzie przy bramie wjazdowej na parking i jeśli pojawi się nad nią samochód to na danym pinie...
Tak to ma wyglądać?? $regfile = "m8def.dat" $crystal = 160000 Baud = 1000 Config Portb = Input Portb = &B11111111 Config Portd = Output Portd = &B11111111 Dim I As Word Config Timer1 = Timer , Prescale = 8 On Timer1 Times Enable Interrupts Enable Timer1 Do Debounce Pinb.6...
Witam, mój problem polega na tym, że chcę włączyć tryb CTC dla Timer0. Próbuję to zrobić (ASM i C) i w efekcie licznik się nie zeruje na wertości TOP, ale leci do MAX (255). Jednak tak samo napisany kod dla Timer1 już działa zerując licznik po osiągnięciu wartości TOP (np. 50). TIMER1 CTC MODE: [syntax=asm] ...
zobacz sobie temat: 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...
On wcale nic nie liczy ponieważ w programie nie ma polecenia "Enable Timer0" ani "Enable Interrupts" więc Timer0 wcale nie jset uruchomiony ja ten program widze tak: Config Timer1 = Timer , Gate = Internal , Mode = 1 dim cnt as byte Sub Sec Counts = 0 Counter1 = 4150 Start Timer1 Do If...
Znam Turbo Pascala a Bascom jest do niego bardzo podobny prawie to samo to przerobiłem sobie ten kod pochodzący z tej strony $crystal = 4000000 $regfile "attiny2313.dat" Dim Wynik As Long Config Timer1 = Counter , Edge = Rising Cls : Lcd "Dosimeter" : Wait 1 Do ...
Mam takie coś: $crystal = 4000000 $regfile "attiny2313.dat" Config Lcd = 16 * 2 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portb.4 LCD Db5 = Portb.5 , Db6 = Portb.6 Db7 = Portb.7 , E = Portb.3 Rs = Portb.2 Dim...
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...
Witam Ostatnio chciałem zbudować inteligentny wyłącznik na ATTiny2313 zrobiłem układ podłączyłem procesor do niego sprawdziłem wszystkie obwody wejść i wyjść i gdy upewniłem się że wszystko dział sprawnie zabrałem się za pisanie właściwego programu, jednak już przy pierwszych testach okazało się ze...
Witam! Od kilki dni mecze sie z problemem napisania dzialajacego kodu dzieki,za ktorego pomoca bylbym w stanie sterowac serwomechanizmem. Przeszukalem juz chyba wszystkie mozliwe zroodl,a jednak tym razem googli prawdy mi nie powiedzialo :) bo wszystkie kody, ktore znajdowaly dawaly ten sam efekt....
Rejestry sterujące TCCR0A / TCCR0B , TCCR1A / TCCR1B - ustawianie trybu pracy. Rejestr licznika TCNT0 , TCNT1 (nic nie zmieniasz, ale jest wykorzystywany) - zliczanie. Rejestry porównania OCR0A / OCR0B , OCR1A / OCR1B - sterowanie wypełnieniem. A w liczniku Timer1 także GTCCR (dodatkowe...
Witam Mam problem z programem odmierzającym czas. Mikrokontroler współpracuje z czujnikami ultradźwiękowymi. Ogólne założenie programu jest takie że generuje paczkę 8 impulsów prostokątnych o częstotliwości 40KHz następnie 4ms na wyciszenie układu. Generowanie paczki wykonywane jest za pomocą Timera2...
Witam, Odebrałem ostatnio silnik krokowy i sterownik takie jak w poniższych linkach. Do poprawnego sterowania potrzebna jest wiedza o ilości kroków na obrót oraz czas co jaki podawany ma być sygnał na złącze PUL. Kiedy pisałem program w bascomie i podawałem sygnał toggle na dowolny pin...
Jakiś straszny ten kod. Po pierwsze, generator przebiegów (PWM) na swoim liczniku z prescalerem 1. Generator podstawy czasu na drugim liczniku, prescaler 8, tryb CTC. Generator PWM konfigurujesz raz i tylko uaktualniasz rejestr OCR, w równych odstępach czasu pochodzących z licznika drugiego na podstawie...
Witam, wiem że w sieci jest 1*e^6 lub więcej gotowych liczników impulsów, lecz ja chciałbym mieć pełną kontrolę nad moim kodem, a nie kopiować bezmyślnie. Tak więc sprawa tyczy się zliczania impulsów 5V od obrotów i prędkości w motocyklu. Do tego celu chcę wykorzystać układ AVR ATMega 16 lub mniejszy...
Witam. Panowie-klucicie sie o przerywania- o oto tu nie chodzi.Choc nawet jest plus-czegos mozna sie nauczyc o 51.Moze to rozwieje wszystkie problemy z wielokrotnymi przerywaniami: Config Timer0 = Timer , Mode = 1 , Gate = Internal Config Timer1 = Timer , Mode = 1 , Gate = Internal Enable Interrupts Enable...
Witam Ostatnio zmienialem fusebity tak aby uC pracowal z zewnetrznym rezonatorem 8MHz. Poustawialem wszystko przez PonyProga i wygladalo,ze wszystko jest oki, no i zaczolem sprawdzac. Popelnilem maly program, ktory zapala i wygasza diode co 1 s. Wszystko bylo by fajnie, gdyby nie to ze wedlug tych ustawien...
Zastosuj inny mikrokontroler np dedykowany AT90PWM3 lub inny mający więcej kanałów pwm. Atmel ma sporą rodzinę dedykowanych mikrokontrolerów AT90PWM zaprojektowanych pod kątem sterowania. A tak przy okazji można jeszcze zrobić jeden zabieg który może przynieść efekt użyć dzielnika /256 w liczniku 8...
Witam Problem rozwiązany. W programie zmniejszałem wartość rejestru OCR1A o 100. Podczas takiej dekrementacji mogło dochodzić do przypadku jak niżej OCR1A=10000 wartość timer1=9940 jeżeli w tym momencie zmniejszyłem wartość OCR1A do 9900 to licznik liczył dalej do wartości 65536 i następowała...
Więc Kolego czym to się różni od mojego? Timer0 wygląda tak: [syntax=basic4gl][/syntax] $reg... = "ATTINY44.dat" $crystal = 8000000 Config Timer0 = Timer , Prescale = 1 Enable Timer0 On Timer0 Prztimer0 Enable Interrupts Do Led1 = 10 Led2 = 20 Led3 = 30 Loop Prztimer0: Incr...
Przeznaczenie: Zatrzymuje działanie programu lub określone urządzenie. Składnia: STOP STOP urządzenie gdzie: urządzenie nazwa symboliczna uruchamianego urządzenia. Opis: Pierwszy format instrukcji powoduje zatrzymanie działania programu. W tym celu jest wykonywana pusta pętla,...
I znów muszę ci napisać kilka sprostowań. Po pierwsze to co chcesz mieć co 800ms to nie nazywa się przerwanie. Ty po prostu chcesz odmierzać taki odcinek czasu. Zgadza się, ma być odmierzony taki odcinek czasu. Mało precyzyjnie się wyraziłem, oczywiście przerwanie następuje po przepełnieniu licznika...
Zmieniłem w liniach z Load na Timer1 = A ale nic to nie dało nadal 10us. Podejrzewam że nie pracuje z preskalerem =1 prawidłowo. Gdzieś czytałem z rok temu że kod programu będzie pracował z zegarem 14MHz (tak jest u mnie) a Timery z 8Mhz. Prawda czy nie ?. Z obliczeń na kalk.exe do wyliczania Timerów...
Witam. Jestem poczatkujacym w C i powili uruchamiam sobie kolejne moduly proca atmega128, napotkalem niestety na problem w uruchomieniu timera1, wyglada na to ze wogole nie startuje bo nie wchodzi mi w obsluge przerwania przepelnienia licznika, ma to dzialac tak ze przy kwarcu 11.0592MHz po odpowiednim...
Witam, $regfile = "m8def.dat" $crystal = 8000000 Config Pinb.1 = Output Config Pind.1 = Output Config Timer2 = Timer , Prescale = 128 Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Compare B Pwm = Disconnect , Prescale = 8 Cls Cursor Off Portd.0 = 1 Portd.1 = 0 Set...
1. W jakim języku piszesz? 2. Kalkuluje się to tak: Masz kwarc 16 000 000 Hz (16 MHz) i dajesz sobie jeden z dopuszczonych prescalerów, np. 64 i wtedy timer zlicza Ci impulsy z częstotliwością 16 000 000 / 64 = 250 000 Hz, czyli jeden impuls timera to 4*10^-6 s lub inaczej aby odmierzyć 1s musisz...
Faktycznie, powinno być chyba Dodano po 2 Działa, ale nie tak jak bym chciał. Teraz jak daję impulsy to wyskakują mi liczby nie po kolei. Ja potrzebuję uzyskać taki efekt, że jak dam zasilanie na port to zwiększy mi stan jakiejś zmiennej o jeden czyli: dotykam sobie portu zasilaniem i w zmiennej...
Chodzi mi oto że licznik aktualnie pracuje w trybie NORMAL a nie CopareMatch Chciałbyś, aby licznik po osiągnięciu zadanej wartości wyzerował (CTC) się i jednocześnie nastąpiło przerwanie :?: Brak porównania z rejestrem OCR1B A pisałeś, że przerwanie TIMER1_CMPB_vect działa :idea: przeszukałem...
Witam, Napisałem taki oto programik który ma za zadanie zmieniac stan diody co około jedną sekunde (odrazu dodam że nie chodziło mi o odmierzenie dokładnej sekundy tylko o opóźnienie). Wyliczyłem że przy preskalerze 256 timer1 musi zliczyć do 31250 żeby odczekał sekunde (taktowanie 8Mhz). Ustawiłem...
Witam! Pierwsze kroki z uC, czyli próba stworzenia zegara matki dla czasomierza podobnego do $regfile = "m8def.dat" $crystal = 2000000 Config Pind.0 = Output Config Pind.1 = Output Config Timer1 = Timer , Prescale = 64 Dim Licz_2s As Byte Dim Parz As Bit Enable Interrupts Enable...
Witam wszystkich serdecznie, używając Timer1 w Atmega8 chciałem wygenerować 2 przebiegi prostokątne na wyjściach OC1A i OC1B (każdy z wypełnieniem 50%). Na razie skonfigurowałem licznik w trybie 4-CTC. Zmieniając wartość w rejestrze OCR1A - zmieniam częstotliwość przebiegu na wyprowadzeniu OC1A -...
Atmegi mają 8MHz oscylator wewn i do tego ustawiony podzielnik 8. CZyli działają na 1MHz Dziękuję, nie wiedziałem tego. Wyjaśnia to wiele moich nieporozumień z uC. Zresztą poczytaj o innych rejestrach timera bo nie tak się określa do ilu liczy timer. Wiem że można to zrobić też w trybie compare...
Poprawiłem program. Multipleksowanie próbowałem zrobić na tablicy, ale jakoś mi to nie działało, poza tym tablica okazała się zbędna (zauważcie że mam niewygodnie podłączone segmenty wyświetlaczy jak i katody do 2 portów mikroprocka). Aktualnie zakres pomiaru poprawił się do około 60kHz, po tej wartości...
Witam, Jestem początkujący w programowaniu bascom chcę zrobić licznik impulsów podawanych na timer o jako licznik . Zrobiłem licznik ale liczy max 255 a ja potrzebuje licznik z 99999 . Nie bardzo wiem jak mam to zrobić .Proszę o pomoc $regfile = "m8def.dat" ...
1ms spokojnie przerwanie zewnętrzne Ci zliczy (piny 2, 3) A dalej myślę, że musisz odliczać czas np. licznik 1 i przerwanie powiedzmy co 1 sekundę (konfigurujesz przez rejestry TIMER1), tam sobie liczysz sekundy i za każdym razem (może być w loop() ) przeliczasz to na (imp/godziny) a jak zbliżysz się...
Witam chce użyć procesora AT90S2313 do sterowania szybkości silnika. I chyba najlepiej do tego będzie nadawał się licznik timer1 skonfigurowany, jako PWM. Czytałem o tym w pomocy, ale jakoś niewiele mi to gada:( z jakiego pinu będą wychodzić te impulsy??? Z T1(PD5) czy OC1(PB3) czy jeśli wpisze te „dosconnet”...
Witam Chciałem ostatnio się pobawić timerem w funkcji licznika zewnętrznych zdarzeń. Ustawiłem TMOD w ten sposób: #01000010B (czyli Timer1 w funkcji countera, tryb 0, a Timer0 normalnie w trybie 2(potrzebny do obsługi wyświetlacza)). Umożliwiłem przerwania i włączyłem timery i wartość TL1 i TH1 wyświetlam...
Troche to dziwne i nie mam pojecia jaki moze byc tego powod ale na tym liczniku caly czas jest zaladowana wartos 50 impulsow a sam licznik zlicza w dol czyli odejmuje mi ilosc pobranych impulsow od 50.
Jak ustawic timer 1 żeby liczyl 16bit a nie 8? bo to co napisalem ponizej to zawsze tylko liczy w TCNT1L a to co wpisałem w TCNT1H automatycznie wymazuje przy kolejnym cyklu dlaczego? :( .cseg .org 0x00 rjmp start .org 0x06 rjmp timer1 .org 0x11 Start: Ldi Acc, 1; ustaw preskaler timera...
Witam Trzeba do tego podejść tak: 1/4000000(f kwarcu) = 0,00000025s 0,00000025s*64(preskaler) ... to, że przerwanie wystąpi co 16us dla 1 sekundy musiałbyś zliczyć 1/0.000016=62500 przerwań Nie będzie tak do końca ponieważ procesor wykonuje skok, który też zajmuje jakiś czas. Trzeba to...
Kosmo Timer1=34285 wyszło z prostej kalkulacj. przy zegarze 8000000 i preskalerze 256, timer uP'a zliczy 8000000/256= 31250 "impulsów". Czyli aby licznik sie przepelnil nalezy zaczasc zliczanie od 65535-31250=34285. Ok dziekuje, to już rozumiem. Proszę jeszcze tylko o wyjaśnienie skąd mam wiedzieć,...
Witam. Chcę za pomocą Timera1 odmierzyć czas w przybliżeniu 1 s (dokładność do 0,1 s). Wprowadzam następującą konfiguracje: ldi Temp, 0x29 ;załadowanie do r16 wartości ldi R20, 0x29 ;załadowanie do r17 wartości out TCNT1H, Temp ;wpisanie do rejestru TCNT1L wartości out TCNT1L, R20 ;wpisanie...
Masz 3 źródła przerwań od każdego z rejestrów osobno. Tryb ctc ładuje albo z OCR1A albo z ICR1. Za pomocą wymienionych przez ciebie bitów możesz zapisując do nich jedynkę wymusić taki efekt jaki by wystąpił w momencie gdy licznik jest równy danemu rejestrowi OCR1 (A,B,C). Efektem tym jest zmiana stanu...
Witam, mam taki problem. Procek -Atmega8, chwilowo taktowana wewnetrzym 8mGHz. bascom Ogólnie program działa nastepująca: Korzystam z INT0 ustawiam go na zbocze opadjaące. konfiuguruje timer0 z parametrem Compare A = disconnect ustawiam flage na 0 do loop przerwanie int0: czesc1: sprawdza...
Juz chyba wiem gdzie jest blad, zakladajac ze licnzik pracuje w trybie normalnym to przerwanie powinno byc wywolywane takim makrem: ISR(TIMER1_OVF_vect) {..... Bo przeciez Twoj licznik nie pracuje w trybie CTC a dla tego trybu jest uzyte przez Ciebie makro.
Wewnętrzny zegar to oscylator RC, który jest wrażliwy na zmiany temperatury. Możliwe jest uzyskanie dokładności, rzędu 1% poprzez programową kalibrację oscylatora (dokładny algorytm jest w dokumentacji albo w application notes). Aby uzyskać większą dokładność, użyj kwarcu do taktowania procesora. Jeśli...
//inicjalizacja licznika TCCR1B |= _BV(CS10); //clkIO/1 (No prescalling) TIMSK |= TOIE1; //włączenie przerania sei(); //glogalne zezwolenie na przerwania ISR(TIMER1_OVF_vect) { /... obsługi przerwania kiedy licznik się przekręci } kiedy będziesz chciał zapamiętać aktualną wartosc licznika...
Nie mogę się dokopać do info czy wejście sprzętowe T1 jest blokowane gdy timer1 pracuje jako licznik cykli wewnętrznych, ale jakoś sobie nie przypominam takiej zależności - schemat blokowy T1 na to też nie wskazuje. Zauważyć pozostaje, że T1/pinb.1 jest wtedy domyślnie ustawiany jako wejście. Zapytam...
chciałem miec tak: pwmb = (ramka[2]-128)*1.53+60... dla pwmb = int, unsigned int, unsigned long int, itd... dałem tak: pwmb = (ramka[1]*389)/245+60; potem tak: pwmb = (ramka[1]*1556)/1024+60;... i to nie dziala, wykrzacza...
Witam. Poskładałem i napisałem program, który powinien zliczać sekundy i minuty na przerwaniu. Zaznaczę, że jestem początkującym. Program działa w ten sposób: - zlicza sekundy do cyfry "9", a następnie wyświetla zero na tym wyświetlaczu, na którym zliczał te sekundy, a reszta wyświetlaczy jest wygaszana....
.CSEG .ORG 0x000 RJMP RESET .ORG... r16,LOW(RAMEND) out SPL,r16 ... wyprowadzen mikrokontrtolera rcall KONFIGURACJA_TI... ustawien zegara rcall...
Co do kodu: 1/ nie dołącza się pliku iom8.h. Ten plik jest dołączany przez io.h. Należy przy kompilacji przekazać parametr -mmcu=atmega8 2/ Makro "ICP" korzysta z "PINB0", ale to nie jest bit od zmiennej PINB, żeby można było odczytać. To nie jest nawet maska odpowiedniego bitu. To jest numer bitu...
W tym programie T0 pracuje tak jak powinno a T1 co prawda w trybie 8-bitowym, ale nie fast PWM tylko chyba Phase Correct. Tzn. zlicza najpierw w górę, a potem w dół. Jak to kolega wogóle stwierdza, że licznik pracuje w ten sposób? Jeśli symulacją z AVR Studio to wszystko wyjaśnia.
chciałem odmierzac odciniki czasu na T1 i nie wiem jak odczytac wartosc licznika. dla timera 0 znalazłem przykład : state = inb(TIFR) & _BV(TOV0); while (state != _BV(TOV0)); niestety inb(TIFR) ... nie działa dla T1 w "iomacros.h" jest makro inw(TIFR)......
Tryb Capture służy do przechwytywania zawartości licznika a nie do jego przeładowywania.
Z przerwaniami nie jest tak trudno. Enable Interrupts Config Timer1 = Timer , Prescale = costam Timer1=costam2 Enable Timer1 On Timer2 etykieta Config Timer2 = counter , edge=falling Enable Timer2 On Timer2 etykieta2 coś takiego na...
Przecież pisze jak na tacy: 1. Licznik nie doliczy do 5000 w trybie CTC - zatem logicznie myśląc trzeba ten tryb wyłączyć . 2. Jeśli licznik ma pracować w trybie CTC to wartość z OCR1B musi być mniejsza niż OCR1A.
wiw_wl: Kolega _Robak_ już na początku napisał: Najprostszy sposob to dac kwarc zegarkowy, i uzyc timera 2 taktowanego zewnetrznym kwarcem :) Już dawno kolega by się zapytał jak to zrobić i poczekał do momentu kiedy będzie ten rezonatorek miał. A tak brniemy dalej w ślepy zaułek z programowo-sprzętowym...
Witam, zagadnienie, w którego sprawie chciałbym się poradzić wygląda następująco. Muszę sterować serwomechanizmem modelarskim przy jak najmniejszym udziale głównego wątku programu. Pytanie z tym związane, czy da się to zrobić używając 16-bitowego timera1, rejestrowi OCR1A przypisać wartość odpowiadającą...
Piszę program w AVRStudio 4.13SP2. Działanie programu jest (a właściwie powinno być) następujące: Mikrokontroler generuje sygnał PWM o częstotliwości 50Hz i czasie trwania od 0,5ms do 2,5ms. Sygnał wysyłany jest na wyprowadzenie OC1A. Przy wyzerowaniu licznika podczas zliczania w dół wywoływane jest...
Mam prośbę, jeżeli możesz to sprawdź w swoim BascomAVR czy występuje problem z konfiguracją liczników T0,T1 dla tego procesora. Z tego co wyczytałem z noty katalogowej Atmela i helpów do Bascom'a wszystko powinno działać, tymczasem podczas sprawdzania syntax check wywala mi błąd. Jedyne co kompilator...
Ustawienie bitów WGM13:WGM12:WGM11:WGM10 na 1001 (9) oznacza ustawienie timera w tryb pracy "PWM, Phase and Frequency Correct", w którym rejestr OCR1A służy do ustalenia wartości, przy jakiej wartości licznik ma rozpocząć odliczanie w dół (zmienić kierunek zliczania), a nie do ustawienia wypełnienia....
A change of the COM1x1:0 bits state will have effect at the first compare match after the bits are written. For non-PWM modes, the action can be forced to have immediate effect by using the FOC1x strobe bits. Być może w tym jest problem. OC1A jest prawdopodobnie inicjowane z wartością 0 do momentu...
Witam ponownie, Dziękuję za odpowiedzi, bardzo mi pomogły - zmniejszyłem rozmiar zmiennych, przez co zmniejszyłem czas przerwania (przynajmniej taką mam nadzieję), rozbudowałem trochę program. _delay_ms(40) stosowałem żeby przycisk po zmianie stanu nie "iskrzył" Niestety problem znów się pojawił: Program...
Ustawiasz CTC na bardzo szybki, czas pomiędzy przerwaniami to będzie rozdzielczość regulacji. Reszta to wartości w pamięci(zmienne) odliczające programową syntezę częstotliwości. Aha..oki, dzięki, spróbujemy narazie coś wycisnąć z Bascoma ale czarno to widzę nawet w asemblerze, bo zależy mi na bardzo...
twój program doskonale miga diodą zgodnie z zamierzeniem ale musisz poczekać nie sekundę a kilka minut bo z powodu niezerowania licznika count kolejne mrugnięcie zachodzi dopiero po przekręceniu inta :) (btw. w tej sytuacji volatile jest niepotrzebne)
Staram się zoptymalizować kod. W tym celu chcę sprawdzić jak szybko zostaje wykonana instrukcja wysłania 16 bitowego słowa po sprzętowej szynie SPI. W tym celu zeruje i włączam timer1 (BEZ preskalera) na początku wysyłania i zatrzymuje na końcu. Zawartość licznika TCNT1 wysyłam po UARTcie. Wynik jaki...
Maksymalna częstotliwość jaka mnie interesuje jest uzyskiwana przy OCR1A = 19. Generalnie wszystko mi działa i to całkiem przyzwoicie, ale muszę zliczać wygenerowane impulsy. Myślałem już nawet o jakimś zewnętrznym liczniku - w postaci układu TTL którego wyjścia będę sobie odczytywał w pętli głównej....
Mam problem z przerwaniem od timer1, wywołuje się ok. 64x wolniej niż wynika z obliczeń. Przykładowy prosty program: [syntax=basic4gl] $regfile = "m8def.dat" $crystal = 8000000 Dim 1ms As Word 1ms = 0 Dim A As Byte A = 0 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.3...
Jeżeli mam nie korzytać z printf to z czego ? Druga sprawa, jeżeli z niego skorzystam raz na 10 minut to chyba nie wprowadzi to opóźnienia/przyspieszenia o aż 50 sekund. Bez przesady. Mogę zerować licznik ale w powyższym kodzie while zajmuje bardzo krótki czas więc wartość licznika nie wzrośnie dużo. mumin_80
Bo WGM12 jest w TCCR1B a nie w TCCR1A. W tym momencie Twój licznik pracuje w trybie Normal i liczy do 65536 i raz na taki cykl ustawia flagę od porównania czyli co 2,09 sekundy.
Nie może się zmieniać - kod wykonuje się raz i tylko raz przy rozruchu sprawdza stany przycisków. Zrób sprawdzanie przycisków w pętli. Dodatkowo znacznik, który poinformuje Cię, że przycisk był naciśnięty poprzednio, bo inaczej stan licznika będzie zmieniał się tak szybko, że nawet tego nie zauważysz....
Licznik zaczyna od wartości 0 nie odmierza jej ... nie ma żadnego wpisu w wartości licznika więc jest on wypełniony zerami po pierwszym zdarzeniu odlicza dopiero więc tak jest własnie 2^16 -1 czyli 65535. Nie zrozumcie mnie źle, rozumiem że po 65535 nastąpi jego powrót do zera i to potraktowałbym jako...
Tak się nie robi. Myślę że ten timer się parę razy przepełni zanim obsłuży LCD. Ustaw timer tak aby wywoływał przerwanie przy danej wartości i w tym przerwaniu dodawaj jakąś zmienną o 1 i czyść licznik.
[syntax=cpp] #include "avr/io.h" #include <avr/interrupt.h> #include <avr/pgmspace.h> #include <util/delay.h> #include "myuart.h" #include "mk_term.h" volatile uint16_t impuls; //zmienna która jest liczbą impulsów przed wyrezerwanie timera czyli z przejsciem czujnika volatile...
Kilka dni już poświęciłem , google i elektroda brak info jak wysłać timer1 na pin uP. Chyba to jest zbyt skomplikowane , skoro nigdzie nie ma o tym informacji poza lakoniczną informacją pomocy bascom ============== ========== 'Moż... odczytywać i zapisywać dane z licznika TIMER1, za pomocą 'specjalnej...
Cześć, działam sobie nad zadaniem: program Timer1 działa w trybie porównania( CTC). Licznik T/C1 taktowany jest wewnętrznym sygnałem zegarowym. Wpisz odpowiednią wartość do rejestru OCR1A. Licznik zlicza od 0 do odpowiedniej wartości i po jej osiągnięciu generuje przerwanie. Proszę ustawić preskaler....
Program napisany jest w Bascom. Delay nie ma w ogóle. Program napisany chaotycznie, ale działał ok dopóki nie dopisałem obsługi DCF77. Gdy przyjdzie odpowiednia godzina, dioda IR ma wysłać kod do odbiornika. Wtedy właśnie procesor zwalnia. Sekundy wtedy "idą" co 3 no i dźwięk ma zwolnione tempo. [syntax=vbnet] ...
W tym wzorze na licznik CTC to ja widzę OCR1A a nie OCR1B. Nie sądzisz, że to jest problemem?
Tak, wejście skonfigurowane w ten sposób: [syntax=c]GpioInit(GPIOC, GPIO_Pin_6,FLOAT_IN_NO_IT)[/syntax] przybliżona komenda bo piszę obecnie z pamięci. Gdy zmieniałem na FLOAT_IN_IT to wchodziło mi w przerwanie od zmiany stanu na pinie, czyli potwierdzenie ze zmienia się stan na tym pinie ale licznik...
No właściwie to źle się wyraziłem. RB3 ma się ustawić na 1, a nie zmieniać. Chodzi o to, że uc nie ustawia flagi przerwania od timer1 w momencie przepełnienia. Jest to kod testowy, który na celu ma sprawdzenie czy licznik pracuje poprawnie. Dodam jeszcze, że na wyjściu RB3 mam diodę, która ma...
Witam od 2 dni próbuje zsynchronizować TMI1 (podczas generowania przebiegu PWM) i ADC2 w taki sposób aby przetwornik ADC2 próbkował w czasie gdy gdy nastąpi przepełnienie w liczniku jak poniżej na rysunku: Dodam, że Timer pracuje w trybie "Center-aligned mode 2" a przetwornik ADC2 używa kanału...
Ok, z niechęcią pokażę jeszcze trochę kodu. Od razu wyjaśniam - ten kod to tylko taka tymczasowa partyzantka celem sprawdzenia i wykrycia takich sytuacji jak ta powyższa. Docelowo to będzie zupełnie inaczej zorganizowane. Dane są zbierane do RAMu przy pomocy DMA do podstawy 5-5ms/kratkę. Powyżej już...
może Timer2.initialize Nie można tak, nie ma klasy Timer2. Poza tym od razu radzę zrezygnować z biblioteki TimerOne przy używaniu więcej niż jednego timera. Zamiast tego samemu można napisać konfiguracje timerów i wektory ich przerwań. Oto kod demonstrujący jak to zrobić. Powinno migać diodą i niezależnie...
Niepotrzebnie mieszasz myślowo różne systemy walutowe. [syntax=c] #include <avr/io.h> #include <avr/interrupt.h> #include <Arduino.h> unsigned long FlagTime; void setup(){ // to jest odpowiednik main Serial.begin(9600); DDRB &= ~(1 << DDB0); // ustawienie pinu...
Witam, muszę tak skonfigurować timer1 aby przerwanie występowało co 1us. Mam uC atmega328pu i kwarc 16MHz. Warości, które wpisuję do rejestrów porównania są na pewno poprawne, ale w moim przypadku dioda zmienia swój stan w czasie dłuższym niż 1s (dla testów w ISR umieściłem licznik ,który w momencie...
Klasycznie chciałem uzyskać przerwanie co sekundę do odmierzania czasu, na płytce UNO, procesor 328, zegar 16Mhz. Przyjąłem preskaler 1024, dalej wyszło mi 16e6/1024 = 15625 i do tylu chciałem "skrócić" licznik, Niestety coś mi nie działało, liczyło mi znacznie szybciej (kilka rzędów wielkości) niż...
Dobra: Zadam pytanie wprost: Jak wyświetlić wartość licznika timer1(PIC16f628), na wyświetlaczu lcd za pomocą funkcji której argumentem jest const char *__putstr . Proszę o jakąś odpowiedź :)
Witam Potrzebuję zbudować licznik który po zliczeniu określonej liczby impulsów wykona jakąs czynność. Jako generator impulsów wykorzystałem kontaktron magnes i filtr RC Początkowo napisałem program obrotościomierza i wszystko działa ok. A Teraz po małych zmianach nic nie zlicza. Wykorzystuję Timer1 ...
Przepisz poprawiony program i dodaj komentarze. Nie- "początek obsługi przerwania" bo to każdy widzi. Ale- np. "przerwanie od przepełnienia timer0 wywoływane co x us"- bo nie chce się liczyć co ile. Teraz tak- możesz URUCHOMIĆ przetwarzanie ADC ustawiająć odpowiednio rejestr SFIOR. Możesz dać dodatkową...
Co tutaj przekombinowałem? Atmega32. Tryb Licznika. Celem było zapalenie i gaszenie diod co sekundę. Preskaler = 256. Przerwanie tak wyliczone aby wykonywało się co sekundę. Timer 16bitowy [syntax=c] #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> ISR...
Cześć. Wiecie, zamotałem się. Mam ATMega162, XTAL=16MHz. Potrzebuję aby Timer1 w trybie CTC zgłaszał przerwania co 1 sekundę. Mam ustawiony preskaler na 256, więc 16000000/256/1=62500 Więc czy do OCR1A (tryb 4) lub ICR1 (tryb 12) mam wpisać wartość 62500 czy 62500-1. Doczytałem że zerowanie...
Witam ! Tworzę projekt stacji pogodowej za pomocą ATMEGI16 + LCD 2x16. Tworzę licznik impulsów który zliczałby mi czas pomiędzy zboczami impulsów (prędkość obrotowa wiatru) Znalazłem w sieci program który działa na Atmega8 + 16MHZ kwarc. [url=]Link Chciałbym go przerobić na Atmega16 na wewnętrznym...
He he, tak książkę mam i na pewno za jakiś czas przerobię rozdział 4.8.4 :) A wracając do tematu, to najpierw zrobiłem taki licznik dla stanu LO i HI jak radziłeś kspor , ale ostatecznie po sprawdzeniu tego co napisał PDT widząc, że działa bez jakichkolwiek pomyłek zostałem przy tym założeniu, że...
wiem, impulsy przebiega ja wystarczajaco wolno zeby je liczyc co 1 tylko ze jak skonfiguruje timer0 to mi liczy cos nawet jak nic nie podlacze (ustawilem na 100% przewania z zewnatrzne :P ) a jak ustawie timer1 to mi nic nie liczy, a moze trzeba zastosowac jeszcze jakis uklad przed procesorem???? dzieki
Witajcie napisałem program który co minute wysyłasygnał to na jeden port po następnej minucie na drugi port to steruje zegarem problem w TYM że zegar ten spóżnia nie wiele ale jednak w czym problem?? może zły kod??? poradzcie $regfile = "2313def.dat" $crystal = 8000000 Config Pinb.2 =...
WItam Mam problem z programem w Bascomie. Dziala na symulatorze ale po zaladowaniu do uP nie chce dzialac. Ma to byc licznik pracy wraz z zegarem i pomiarem temp pomieszczenia. Dziekuje za odpowiedz '******LCD timer dziala symulacja kelpsydry :)******* Deflcdchar 1 , 31 , 17 , 10 , 4 , 4 , 10...
Timer1 wykorzystujesz do zliczania impulsów (wejście T1) a timer2 w trybie asynchronicznym z kwarcem zegarkowym odlicza czas... Musisz znać obwód koła... Potem to już prosto... Przeliczasz ilość obrotów w danym czasie na drogę i wyliczasz prędkość... Rejestry konfiguracji poszczególnych timer'ów...
Dodajesz pamięć zdarzeń, tzn na jakimś bicie oznaczasz sobie, czy ostatnio liczyłeś w górę, jeśli tak to zmieniasz znak bajtu i liczysz w dół; jednym słowem: BANAŁ może i nie jest to trudne, ale ja dopiero raczkuje w bascomie :) można prosić o przykład Dodano po 1 odpowiedz naprowadziła...
tak wyglada teraz pogram 'zegarek v.1.0 Dim Godz1 As Byte , Godz2 As Byte , Minut1 As Byte , Minut2 As Byte Dim Sek1 As Byte , Sek2 As Byte , Wysw As Byte , Kropka As Bit , Po As Byte Dim Sekjed As Byte Config Portb = 255 : Portb = &B255 Config Portd = &B1111100 : Portd = &B1111111 Config...
Timer0 i Timer1 mają wspólny preskaler, Timer2 ma osobny preskaler. Poczytaj o resetowaniu preskalera w dokumentacji. U Ciebie jest inny błąd, w przerwaniu OC2 zmieniasz TCCR1B zamiast TCCR2. Co do zaokrąglania, to 1/76000 jest obliczane wg. zasad arytmetyki liczb całkowitych, a więc wynikiem operacji...
tak właśnie podejrzewałem że bascom nie lubi operacji z dokładnym czasem.Zmiana polecenia z Toggle na not nic nie zmienia.Pozostanie przy sprzętowej generacji.Mam tylko jeszcze jedno pytanie,bo fala którą generuje to będzie nośna dla pilota SIRC.I teraz przy włączaniu i wyłączaniu T1 raz zostaje stan...
Postawiłem sobie zadanie opracowania licznika prędkości. Powiedzmy, że do roweru. Konstrukcję i jej sens odłóżmy na razie na bok :) Zadanie dla procesora niby banalnie proste - liczyć prędkość przez badanie impulsu na pinie. I teraz zaczynają się schody. Mogę to zrobić na kilka sposobów (te które znam): 1)...
Jeszcze raz od nowa. Tym razem postaraj się bardziej. Ustaw wreszcie te przerwania INTx na jakieś zbocze, a nie poziom. Co z tego, że ustawiłeś Timer1 jako licznik jak nie ma to związku z resztą kodu. Timer sobie działa,a ja się pytam - i co z tego ? gdzie obsługa tego timera?
Wiem ze mam załączyć Timer1, tylko w którym miejscu to zrobić, tak aby to było zsynchronizowane z liczeniem ? Jakby ktoś narysował mi strzałkę w poniższym kodzie byłbym wdzięczny :) #define F_CPU 1000000L #include <avr/io.h> #include <util/delay.h> #include <stdlib.h> #include...
Witam. Próbuję napisać w Visual Basicu najprostszy program który będzie cyklicznie np.co minutę wyśle zapytanie o stana licznika energii a następnie odbierze odpowiedź i zapisze ją do pliku. Wszystko odbywa się za pośrednictwem portu com z przejściówką na rs-485. Wiem że są gotowe programy typu Modbus...
Sorry że tak późno, ale komuś może się przyda. [syntax=csharp]#include <stdio.h> #include <avr/io.h> #include <avr/interrupt.h> #include "hd44780.h" volatile char dziesiatka = 0; volatile int sekunda = 0; volatile int flaga = 0; char tekst[10] = "Gotowy"; int main (void) { ...
Wydaje mi się że zamiast unsigned long wystarczy unsigned int. Chyba że się pomyliłem w obliczeniach. Po kompilacji masz w AVRStudio taki plik z rozszerzeniem .lss. Zajrzyj do niego i zobacz ile instrukcji zajmuje odsługa przerwania od Timer1 i Timer2. Niektóre z nich trwają jeden cykl maszynowy-...
Witam Czy ktoś ma jakiś pomysł jak programowo zliczać impulsy timerem0 większe od 256 ? Timer1 chciałem wykorzystać jako PWM więc on odpada. Pozostaje timer0 ale on zlicza tylko do 256, a ja potrzebuję zliczyć do 390. Jak to zrobić programowo, żeby jak counter0 się zwiększy o 1, to żeby zwiększył jakąś...
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...
Witam. Ogólny zarys menu w moim (przyszłym) liczniku na obecną chwilę wygląda tak jak na załączonym filmie. Wiadomo, później zmienię czcionki i kolorystykę. Póki co to do testów jej jaka jest. Na chwilę obecną mam problem z wpisywaniem wartości w podmenu "obód koła", tzn nie wiem jak zrobić aby...
Kolego emarcus umie kody wyglądają tak bit 0 ---> a bit 1 ---> b bit 2 ---> c bit 3 ---> d bit 4 ---> e bit 5 ---> f bit 6 ---> g wtedy tabela byłaby: ‘========================... Data 192 , 249 , 164 , 176 , 153 , 146 , 130 , 248 , 128 , 144 '0 1...
Jestem początkujący w dziedzinie programowania Atmelków. Mam zamiar zrobić licznik impulsów , który w pierwszej linii wyświetlacza LCD 2*16 , będzie wyświetlał ilość impulsów , zaś w drugiej ma pokazywać ilość obrotów na minutę. Generalnie ma to rejestrować przebiegi wolnozmienne ok 1Hz nawet ciut...
Witam. Używam przerwania INT1i TIMERA1 do odmierzania czau trwania stanu wysokiego na wejściu INT1 przez zliczanie odcinków czasu 400us podczas trwania stanu wysokiego na wejściu INT1. '****timer1******** Config Timer1 = Timer , Prescale = 64 On Timer1 Pomiar_czasu ...
Przy 6 kHz to można się pokusić o zliczanie programowe - czyli podajesz sygnał na wejścia mogące generować przerwania. Z drugiej strony, skoro stosujesz ATMega32, to może prościej wykorzystać ATXMEGA32, gdzie w zależności od wersji liczników masz nawet 8 (albo 16 8-bitowych) i sobie to ładnie sprzętowo...
Tak próbowałem wyświetlić zmienna licznik jest ciagle 0. Nie mam rezystora zewnętrznego. Tak poprawiłem kod ale nadal jest to samo czyli 0. [syntax=c] #include <avr/io.h> #include <avr/interrupt.h> #include <util/delay.h> #include <hd44780.h> volatile...
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...
Panowie skleciłem układ do regulacji obrotów silnika . Problem polega na tym że przy niższych obrotach szarpie wyżej działa OK. . Na żarówce przejście z 0 jasności lekko miga tak samo w pewnym momencie przy końcu jak jasność na ful. Ktoś z doświadczeniem pomógłby poczatkującemu?. Na żarówce mi nie...
Zamotane do granic i bez sensu. Chodzi ci o to żeby po naciśnięciu przycisku odbywało się dodawanie wartości albo odejmowanie. Kolega napisał ci żeby poznać dobrze zasadę multipleksowania i to bardzo dobra rada. Ja z reguły nie motam tego tak tylko staram się to robić po kolei. Zobacz na ten kod : ...
Witam Jak w temacie,sprawdzałem kod kilka razy i wszystko wydaje się w porządku a jednak nie działa tak jak powinno. ziel_on to włączenie wskazówki sekund w zegarze widmowym. Według mnie powinno działać,mam 10 000 przerwań na sekundę,wynik mnożę razy 100 i dzielę przez 60 tak by wstawić do pętli z...
Przerobiłem licznik na timer: [syntax=c] while(1){ //------... Krok 1 impuls światła ---------------------------------- l... = 0; PORTD |= (1<<LED); _delay_ms(100); //... diody 50ms PORTD &= ~(1<<LED); //_delay_ms(22); /...
Witam. Przeszukałem dokładnie internet i nie znalazłem podobnego przykładu stąd zapytanie. Czy może ktoś podpowiedziec jak napisać obliczenia na zmiennych ? Mam zadanie napisać listing i zaprogramować procka , który będzie mierzył ile impulsów z timer1 mieści się w przerwaniu INT1 , tzn. kiedy...
Napisałem program nadajnika i odbiornika, dla długich czasów trwania impulsu, np 1s wszystko jest w porządku. Odbiornik się synchronizuje, odbiera dane i dekoduje. Natomiast gdy impuls trwa 10ms już jest problem. Albo wyświetla się out of synchro, czyli brak synchronizacji, a jak już ma odebrać dane...
Nie wiem jakiej używasz "strategii" pomiaru ale na filmie widzę, że odczyt masz niezbyt stabilny. Sam przymierzam się do budowy takiego licznika i wymyśliłem taki algorytm: LICZNIK - sprzętowy licznik impulsów z lampy w uK TIMER - sprzętowy timer w uK wywołujący przerwanie co 5s (lub w/g RKSB-104...
Witam ponownie, Nie pokazałem całego kodu nie ze względu na to że ktoś mi go może ukraść jak to napisał kolega ale właśnie z racji tego że jest on napisany przez amatora. Jest to mój pierwszy projekt z mikro kontrolerem oraz językiem C. Wcześniej trochę bawiłem się z PHP oraz HTML i nić po za tym....
Mam problem z połączeniem funkcji chodzi o to zeby wyswietlacz był aktualizowany w pętli while(1), jednak gdy umieszczę ten fragment kodu wynik=7654; LEDDIGITS Dodano po 4 Poniżej daje oryginalne kody obrotomierz: [syntax=c]/* OBROTOMIERZ v.1 Obrotomierz przeznaczony do prostych...
Witam. Jak zwykle kiedy nie mogę sobie z czymś poradzić muszę zaczerpnąć porady na forum. Tak jest i tym razem. Otóż zbudowałem sterownik co który między innymi steruje też zaworem c.w.u. Zaworem "kręci" silnik dc a za rozpoznawanie pozycji odpowiadają dwie krańcówki mechaniczne zwierające do masy....
Dodaje poprawnie listing programu. [syntax=basic4gl] 'OSTATNI... ZMIANY 08,10,2014 'Problem z blednie wysylanymi danymi 'Problem z wylaczaniem sie sterownika $regfile = "m32def.dat" $crystal = 7372800 $baud = 19200 $include "Config_MMC.bas" $include "CONFIG_AVR-DOS.Bas" $hwstack...
Kolego "bart-projects" Czy mógł bym liczyć na Twoje wsparcie? Obecnie mój program wygląda tak: [syntax=Bascom]$regfile = "m8def.dat" $crystal = 8000000 $hwstack = 40 $swstack = 16 $framesize = 32 '=== Wejścia === Config Pinb.7 = Input 'MIN Config...
Witam, mam mały program napisałem przy użyciu książki Pana Marcina Wiązania oraz przy użyciu elektrody do obsługi matrycy led, lecz mam nieporządany efekt stroboskopowy. Nie widać liter, tekstu, tylko wszystkie diody mrugają. Czy to jest spowodowane zasilaniem czy też błędem programu? Dorzucam dwa...
Witam! Sterownik lcd t6963. Bascom Jak zrobić czyszczenie ekranu? Próbuje cls, cls text, cls graph, ale nie działa... Mam podprogramy, i chce wyczyścic ekran po przejsciu do następnego podprogramu. Niestety nie działa czyszczenie ekranu.. Kod wygląda na razie tak: .....................................
Zrobione... Załącza się raz na kilka dni (nie dokładnie tydzień) na kilka sekund. To na chwilę obecną finalna wersja softu: [syntax=Bascom]$regfile = "m8def.dat" $crystal = 8000000 $hwstack = 40 $swstack = 16 $framesize = 32 '=== Wejścia === Config Pinb.7 = Input ...
Mam taki problemik tutaj macie fragment kodu: 'C013b Prosty zegar z ustawianiem Dim Sekjed As Byte , Sekdzies As Byte , Minjed As Byte , Mindzies As Byte , Maxi As Byte Dim , Godzjed As Byte , Godzdzies As Byte , Mux As Byte , Migaj As Bit , Uniwers As Byte Config Portb = 255 : Portb = &B255...
hmm ultradźwiękowych nie da się poznaczyć dodatnich i ujemnych połówek fali ultradźwiękowych troszeczke nie rozumiem po co okreslac to czy to jest dodatnia czy ujemna mozna to zrobic przez rozroznienie czy to jest narastajaca zbocze czy opadajace czyli tak jakbysmy brali wszystko co sie znajduje...
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...
Witam wszystkich wszech wiedzących. Mam taki drobny problem, otóż w zestawie uruchomieniowym zl11avt zaprogramowałem mikrokontroler attiny 2313 żeby na wyświetlaczach led był zegarek z budzikiem. Po zastanowieniu sie zobaczyłem że mam 4 porty wolne i mogę wykorzystać je do czego chce. Chciałbym żeby...
Tłumaczą Ci ludzie już drugi dzień. Zwłaszcza kolega Logan . Czy tak trudno przeczytać w Helpie: Instrukcja ON INTERRUPT Przeznaczenie: Wykonuj... skok do podprogramu gdy wystąpiło określone przerwanie. Składnia: ON źródło_przerwania nazwa_podprogramu Jeśli trudno to porzuć programowanie...
Konfiguracja timera '51 jest inna : [syntax=basic4gl]Składnia: CONFIG TIMERx = COUNTER | TIMER , GATE = INTERNAL | EXTERNAL , MODE = 0 | 1 | 2 | 3 gdzie: x 0 – TIMER0, 1 – TIMER1, Opis: TIMER0 i TIMER1 mogą pracować jako liczniki impulsów zewnętrznych gdy pierwszy parametr jest ustawiony...