Witam - mam nie lada problem Atmega8, kwarc 4 MHz i przekaźniczki podłączone do pinów Atmega zlicza sobie czasy poszczególnych trybów pracy - wylicza wskaźnik OEE oraz Wykorzystania (maszyny) i wyswietla za pomocą pwm na woltomierzach. Wszystko "gra i buczy" ale chciałbym aby pokazywała mi wskaźniki...
Napisałem programik do wagi, obsługuje przetwornik ac w AtMega8 : $regfile = "m8def.dat" $crystal = 8000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portd.3 , Db5 = Portd.2 , Db6 = Portd.1 , Db7 = Portd.0 , E = Portd.4 , Rs = Portd.5 Dim I As Byte Config Adc = Single...
Dzisiaj troszkę posiedziałem nad tymi stosami, zapoznałem się nieco z tym opracowaniem. Próbowałem również rozgryźć tabelkę "SRAM" w symulatorze bascom. Z opracowania i zachowania symulatora wydedukowałem że obszar w sram na $hwstack jest na najwyższych dostępnych adresach pamięci sram i zwiększa...
Podłączę się pod temat ponieważ mam podobny problem. W atmega8 mam prawie identyczny program do odmierzania 1s (przepisany z książki).Do uC mam dołączony kwarc 8MHz poprzez 2 x 30 pF, żadnych fusbitów nie ustawiałem, problem polega na tym, że 1s trwa około 10 sekund. Gdzie szukać problemu?? Jezeli...
Moim celem było aby mikrokontroler odliczał w górę co sekundę i wynik pokazywał na wyświetlaczu - pierwsze podejście do timer0. Początkowo sam obliczyłem wartości preskalera dla 8MHz, jednak na wyświetlaczu liczby pojawiały się ok 100 razy za szybko. Zastąpiłem swoje obliczenia tymi z tej strony: jednak...
ok, więc może być na konkretnym przykładzie: Mam płytkę AND-TECH.PL EvB 4.3 (mikroprocesor to: ATMEGA 32, 16 PU). Więc jak mogę sobie skonfigurować Timer1 i Timer0 na tym mikroprocesorze przy rezonatorze 16Mh by odmierzał mi czas (zegarek godziny:minuty:sekundy). Jak mogę dobrać preskaler...
Excray właśnie nad czymś takim myślałem. I nawet poczyniłem wstępne obliczenia po których wyszło mi że timer0 przy kwarcu 8MHz i prescaler ustawiony na 1024 przepełni się po 0,03276800s. Tylko jak wyliczyć ile muszę zliczyć tych przerwań aby wyszła 1s? Moje wyliczenia są kiepskie bo cały czas wychodzą...
te instrukcje zerują bit w rejestrze Jeśli masz na myśli zerowanie bitu ICF1 w TIFR, to jest to tylko Twoje pobożne życzenie.Te 3 instrukcej , wzerują wszystkie ustawione bity w TIFR , prócz tego o który Ci chodzi , czyli ICF1. Ot taki "kaprys" Atmela :D ... ale mam teraz pytanie (problem)?-brak...
Witam. Założenie jest takie, aby dioda podłączona do wyjścia timera0 zapalała się i gasła na 1s. Wpisuje więc do rejestru TCCR0 1 i mam preskaler 1 co daje pojedyńczy kwant czasu = 125ns (1/8000000 = 125n) czyli żeby odmierzyć 1s potrzebuje zliczyć to 8000000 razy :P, ale że TCNT0 ma pojemność 256 bitów...
Load timer = ... nie jest równy Timer = ... ... no to akurat jest oczywiste :-) Problem dotyczy zupełnie czegoś innego - poczytaj powyżej, ale dokładniej ;-) Skąd te obliczenia? Poniżej masz kalkulator do timerów. Policz i się nie dziw. ... no jakoś się nie dziwię, bo kalkulator (swoją...
Witam Mam taki problem. Pierwszys raz korzystam z takiego ukladu i klawiatury pracujacej na przerwaniu. Podejrzewam, że problem pochodzi od sposobu podłączenia klawiatury do mikrokontrolera tylko nie wiem dlaczego. Klawiaturę mam podłączoną tak do Atmegi 3 kolumny do Portc.4, 5, 6 oraz 4 wiersze do...
Polski help napisany przez Z.B. jest na stronie MCS Electronics. Napisany po polsku. Możesz to ściągnąć. MCS Electronics jest w Holandii, strona jest po angielsku a różne helpy, programy, opisane książki bywają w różnych językach. Help to jest help- nie do nauki programowania ale do pomocy przy...
1) Dokładnie tak chciałem zrobić, czyli przerwaniem INT0 wykrycie zbocza narastającego i uruchomienie TIMER0 do obliczenia „czas” i od razu z automatu stany niskiego „czas” x 7. Czyli 4 bity poskładane w bajt synchronizacji i tym otworzyć „bramę” do odczytu pozostałych...
Zastanawiam się tylko czy możliwym jest uzyskać zakres 1Hz-1MHz, przy niewielkiej (<10%) dokładności obliczenia częstotliwości
Wrzuć program przez syntax bo tego się czytać nie da. Obliczenia przerwanie na Timerze0 co 1 sek: 1MHz / 64 (preskaler) = 15625 imp/sek Timer1 skonfigurowany do pracy normalne czyli przerwanie będzie po przepełnieniu się rejestru TCNT0, żeby rejestr ten przepełnił się potrzeba 255 impulsów czyli przy...
Ok czegoś tutaj nie rozumiem. Czy gdy z obliczeń wychodzi że przerwanie powinno generować się co ~2µs to w rzeczywistości nie powinno tak być? No rozumiem że to wszystko trwa, obsługa przerwania, itp. Ale wydaje mi się że odstępy pomiędzy generacją przerwania powinny być równe i wynosić ok te 2µs....
Przedstaw proszę obliczenia czasowe vs preskalery, czyli jak policzyłeś takie, a nie inne ustawienia timerów i algorytmu programu.
No teraz to się zrobiły jasne dla mnie te obliczenia. Bardzo Ci dziękuję za tak szczegółowe wytłumaczenie tematu. Żeby nie pisać tutaj zbyt wiele potrenuje obliczenia na różnych wartościach rezonatora, różnych dzielnikach i zobaczymy co mi wyjdzie. Jak to zrozumiem, albo będę miał jakiś wątpliwości...
W pdf jest napisane wszystko . Może napiszesz czego oczekujesz a co wychodzi . Pewnie w obliczeniach zapomniałeś o samym liczniku i wychodzi 256 razy mniej . Wielu początkujących robi taki błąd , ze zapomina o tym ze aby licznik się przepełnił musi policzyć tyle impulsów ile ma jego pojemność a w niektórych...
Z racji tego, że temat jest jeszcze aktywny, panie Andrzeju czy mógłbym jeszcze poprosić o rozwinięcie wątku: Twoje obliczenia są (z grubsza) OK Obliczenia są dobre, ale jest jakieś "ale". W ramach możliwości chętnie dowiedziałbym się więcej na ten temat. Myślę, że wtedy można byłoby już...
Witam Problem jest nastepujacy uzywam timer0 do multiplexowania. co 4ms wywoluje mi sie przerwanie od przepelnienia timera wyswietlajac cyfre na kolejnym wyswietlaczu. Dane do wyswietlenia sa globalne. w petli while co pewien czas(0,5 s ) wywoluje funkcje ktora zczytuje dane z czujnika ds1820 po...
Witam Mimo, że większość proponowanych tutaj rozwiązań podłączenia RFM12 do Atmegi wykorzystuje SPI programowe, ja podłączyłem tradycyjnie, przez SPI sprzętowe - mimo, że nie miałem problemów z wgrywaniem kodu do Atmegi spiętej z RFM12, to uruchomienie ich razem jest problematyczne ( każde osobno działa...
Witam Zmieniłem sposób obsługi wyświetlania. Początkowo miałem tak : [syntax=basic4gl] '************ Zegar 8 wyswietlaczy LED + 74HC595 + PCF8563 $regfile = "m8adef.dat" $crystal = 8000000 $hwstack = 32 ' rozmiar stosu sprzętowego $swstack = 32...
Usunąłem Wait 1 przy konwersji z DS18B20, działa, bez problemu ( na trzech przewodach ), tylko wyniki są opóźnione - tzn. wyświetlany wynik nie jest z aktualnego pomiaru, tylko z poprzedniego. Dodałem jeszcze dwa czujniki DS18B20. Ich zapis razem z godziną i datą na karcie jest jak najbardziej w porządku,...
Witam forumowiczów. Mam mały problem z przerobieniem programu do mierzenia temperatury wzmacniacza 2x200W, problem polega na tym że mam program pod kostkę AT89C2051 a obecnie dysponuje tylko atmegą 16. Oryginalny program jest użytkownika "lechoo". Byłbym bardzo wdzięczny gdybyście pomogli mi przy tym...
Witam Po raz pierwszy ( lepiej późno niż wcale ) wykorzystałem wyjście CLKOUT układu PCF8563. Oczywiście podciągnąłem przez 10K do VCC. Dzisiaj po pierwszym kilkugodzinnym braku prądu, rano zegar był wyzerowany. Podejrzewam, że to przez podciągnięcie CLKOUT do Vcc. Jeśli to jest to, to może wystarczy...
Witam ponownie Zrobiłem to przez Timer0. Jednak problem z aktualizacją wyświetlania dalej występuje. Jeszcze drugi problem to start, przez okres zdefiniowany zmienną Licznik ( teraz równą 300 ) nic się nie wyświetla - dopiero po czasie = 300. Próbowałem również z Enable/Disable Interrupts na czas pomiaru,...
Witam Mam program budzika, który jako dodatkową atrakcję miał mieć możliwość mówienie czasu na żądanie i odtwarzanie oprócz buzzera utworu jako alarmu. Atmega steruje przez jedno SPI programowe układem MAX7219, a przez konwerter poziomów i drugie SPI programowe odtwarzaczem WTV020SD. O ile sam...
Bascom - wersja 1.11.95 Kod, no jest tego sporo: - zegar PCF8563 - Zapis na SD - dwa czujniki DHT11 - odczyt z PCF8574AP ( klawiatura ) - RC5 - ma być DS18B20 - ma być DCF77, ale nie doszedłem do tego momentu ( tzn testowałem na innym procesorze i działało ) Działa - zegar PCF8563 - dwa...
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...
Witam. Jestem w trakcie budowania wskaźnika temperatury i napięcia do motocykla. Wygląda to mniej więcej tak: Wszystko jest fajnie tylko że mam teraz w programie 104 ify - od 16 stopni do 120. Mniej więcej do 60 stopni wszystko się udaje. Potem już tylko błąd że za mało pamięci. Czy ratuje...
Witam. Chciałem w celach edukacyjnych zrobić częstotliwościomierz. Ponieważ nie mam za bardzo skąd wziąć zewnętrznych impulsów postanowiłem, że jeden pin procka będzie je generował, a przerwanie int0 będzie liczyć ile tych impulsów było. Do odmierzenia czasu posłużył timer1, który ma odliczyć sekundę...
Przygotowałem specjalnie do testu [syntax=vbnet] $regfile = "m1284pdef.dat" $crystal = 8000000 $hwstack = 128 ' rozmiar stosu sprzętowego $swstack = 128 ' rozmiar stosu programowego $framesize = 128 $baud...
Witam Używam Attiny2313 do pomiaru dwóch temperatur z DS18B20. Wynik ( Integer ) przesyłam bez żadnej obróbki przez UART przewodem 40 cm do Atmega328. Atmega rozbija odebrane dane i jest obróbka Kod Attiny2313 $regfile = "attiny2313.dat" $crystal = 8000000 $baud = 4800 '*********************...
Zaraz dokonam kilku kosmetycznych zmian i ponownie dodam enable timer2. Dam znać o efektach Dodano po 13 Do dyspozycji mamy nastepujący kod, który generalnie już działa (z małymi wadami) Dodano po 4 Czy obecnośc obliczeń w obsłudze przerwania może dawac taki efekt? Dodano po 14 ...
U mnie akurat dość szybko "zaskoczyło". Tylko mam w odbiorniku problem z blokowaniem przerwań/timerów . W nadajniku nie ma takiego problemu. timer działa, bo odlicza czas pomiędzy "wysłaniami" oraz czas wywołania czujników DS i DHT11. Zakładałem, że odbiornik działa tak: - nasłuchuje danych - pojawienie...
Dzięki wielkie- ale to nie do mnie pisałeś. O Atomic_Block dowiedziałem się w czwartek- sprawdziłem- od czwartku jest to pierwsza wiadomość na ten temat. A wracając do tematu Fir3man- wymyśliłem taki schemat programu: #include <stdint.h> #include <avr/io.h> #include <stdlib.h> #include...
[syntax=basic4gl] $regfile = "M32def.dat" $crystal = 16000000 '************************* WYSWIETLANIE-porty ********************************** Lcd_... Alias Ddrb Lcd_port1 Alias Portb Lcd_port_ddr1 Alias Ddrb...
Jest taki sobie termometr - moduł ma BT222 podłączany przez złącze Wgrywam do niego kod Bascom: [syntax=basic4gl] $regfile = "m8def.dat" $crystal = 4000000 '$baud = 9600 ' predkość transmisji $hwstack = 64 ...
Witam Mam płytkę Loggera GPS + SD + PCF8563. Jeśli chodzi o GPS i zapis na SD wszytko jest OK. Problemem jest ( i to pierwszy raz się z czymś takim stykam ) odczyt danych z z układu PCF8563. Otóż dla pewnych wartości sekund, odczytana wartość czasu - godziny jest większa o 40 ( czterdzieści ). Czyli...
Witam Mam zegarek/budzik z wyświetlaczem LED ( dwukolorowy ). Zegarek generalnie działa. Ale mam problem z sterowaniem jasnością. Wiadomo, że robi się to tak, że jasność zależy od częstotliwości odświeżania. Tutaj o jasności wyświetlania ma decydować zmienna jasnosc. . jasnosc : [syntax=vbnet] '************...
Witam Mam program, który, po dokonaniu pomiarów, wysyła dane przez RFM12 i zapisuje na karcie SD. Chcę dołożyć wysyłanie danych do Domoticz po każdym pomiarze. Problem w tym, że po dopisaniu obsługi ESP8266 i Domoticz ( zmienne miałem już wcześniej zadeklarowane ) to pojawiają się błędy w zapisie na...
Przesyłam moją propozycję implementacji algorytmu FFT w asemblerze. Celem nie ma być dokładność, ale możliwość upchnięcia analizy w jak najmniejszych uC. Wymagania co do algorytmu: kontroler AVR (w zasadzie dowolny) z min 128b SRAM (64b zajmują dane, a potrzebne jeszcze miejsce na stos). W przypadku...
Witam, Tu: znajduje się opis powielacza czasu automatu schodowego. Obiecałem tam, że na bazie tamtego układu opracuję „inteligentny” automat schodowy, i oto jest :). Jego „inteligentność” jest zawarta w założeniach do projektu: 1. Ma być podłączony równolegle do przycisków...
Witam. Chciałem zrobić sobie obrotomierz z wyświetlaczem led na procku AVR. Przeszukując sieć nie natrafiłem na nic takiego, jedynie na elektrodzie jest coś podobnego, tylko na wyższym modelu procka i dodatkowo skomplikowany Korzystając z tego i mojej nikłej umiejętności skleciłem program. Podczas...
Witam. Dawno nie pisałem w BASCOM-ie a zdecydowałem się na niego bo myślałem, że tak będzie szybciej i prościej. Nic bardziej błędnego. Do napisania był dwu-trybowy program uśredniający do nieco przerobionego radiometru SOSNA. Ale nie w tym rzecz. O ile kod który zamieszczam powstał w miarę szybko o...
Witam Mam Atmega32A + PCF8563 + PCF8574 + RFM12 + DS18B20 +DHT11. Port danych LCD to Port.A, ControlPort to Port.C. I2C standardowo na Portc.0 Portc.1. Niestety jest problem z obsługą I2C, tzn. zegar PCF8563 nie działa w ogóle ( na LCD puste pole ) , a klawiatura na PCF8574 - tylko jeden klawisz i to...
Jeżeli podłączasz na dwóch przewodach DSa to rezystor zmniejsz do 3,3k. Nie chcę mi się pisać więc podaję kod (bascom/asm) '***************************************... rejestrow z ds1820 'Stop Timer0 jnb {fl_pomiar},read_temp_1w_end ...
Witam, udało mi się coś wyskrobać i zrobiłem na razie sam generator częstotliwości, właściwie jakoś tam działa ale chyba napisałem to dookoła , może ktoś spróbował by to jakoś poprawić. Nie dodałem jeszcze generatora PWM, próbowałem ale nie wychodziło mi, chciałem taktować go z wejścia T1 ale nie udało...
Witam panowie od razu podkreślę że jeszcze uczę się bascoma więc proszę nie krzyczeć i nie usuwać tego postu do kosza Siedzę już nad tym 3 dzień i efekt mojej pracy nie najgorszy ale mam parę pytań po pewnych rzeczy nie rozumiem i nie mogę rozwiązać. Więc tak założeniem był pomiar temperatury...
Witam wszystkich ponownie. Piny INT0 i INT1 były zewnętrznie podciągnięte przez rezystor do VCC. Myślę że z tymi przerwaniami to był zły pomysł. Poprawiłem trochę starą wersje programu. Zastosowałem badanie czy przycisk jest puszczony, i dopiero wtedy uruchamia się program: [syntax=basic4gl] $regfile...
Mundi - dobrze radzisz ale Antystatyk zrobił kompletny syf w przerwaniu i źle steruje wyświetlaczami. Twoja porada tu nie ma szans na prawidłowe zadziałanie. Antystatyk - Jak już widzisz, napisałeś to źle. Zobacz że wcześniej wspominałem o efekcie rozmazania na wyświetlaczach i napisałem w jakiej...
Witam Mam płytkę według schematu poniżej: dodałem tylko "ręcznie" podłączenie CLKOUT PCF8563 z INT1 i przełączyłem przycisk na inny port. Do tego podłączona jest płytka testowa z MAX7219 i wyświetlaczami 0,36 cala. Całość działa poprawnie z kodem jak poniżej: [syntax=basic4gl] $regfile = "m32def.dat" $crystal...
Witajcie moi drodzy W tym temacie poznamy podstawy przerwań i timerów w PIC18F2550 . Na początek będzie krótki wstęp teoretyczny, a potem wszystko przerobimy dokładnie na praktycznych przykładach. Do lektury tematu przyda się ogólna wiedza na temat przerwań i programowania w C, choćby taka...
Nastąpiły niewielkie postępy. Udało się uruchomić wewnętrzny timer, ale wynik bardzo odbiega od rzeczywistego. Najczęściej pokazuje wynik 0 lub jakąś liczbę jedno czy dwu cyfrową. Bardzo rzadko jest to liczba trzycyfrowa. Program teraz wygląda tak: 'Samochodowy obrotomierz 'Marcin Wiązania 'E-mail:...
hm Zegar = 8MHz Preskaler = 64 Obliczenia: 1 / (8MHz / 64) $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 Timer0 = Timer , Prescale = 64 ...
Witam Piszę sterownik grzałki lutownicy. Sam sterownik wstępnie działa dobrze. Natomiast po wykryciu obrotu enkodera w prawo lub w lewo zwiększam lub zmniejszam wartość zmiennej NASTAWA i wysyłam po UART do komputera oraz wyświetlam na LCD od nokii 3310. Co jakiś czas w wyświetlanym tekście zarówno...
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...
Witam, Dochodzę do szału ponieważ nie mogę odliczyć 1 sekundy w BASCOM-AVR $regfile = "attiny2313.dat" $crystal = 4000000 Config Portb = Output Config Portd = Output Config Timer0 = Timer , Prescale = 1 Dim Tim As Byte Dim Sek As Byte Dim Przerw0 As Word On Timer0 Odmierz Enable...
Witam! Postanowiłem przetestować tryb asynchroniczny timera0 z podłączonym kwarcem 32768 Hz na płytce #include <avr/io.h> #include <stdlib.h> #include <avr/interrupt.h> #include "HD44780.h" volatile int time=0; int main (void){ TCCR0|=(1<...
Witam. Mam taki problem i nie bardzo wiem czemu tak sie dzieje. Prosty programik: ____________________________... Portd = &B11111111 Portd = &B00000111 Config Timer0 = Timer , Prescale = 64 On Timer0 Czas Enable Interrupts Enable Timer0 Start Timer0 Do Loop End Czas: Ti...
Witam ponownie. Mam już wykonany program do pomiaru przyspieszeni, niestety mam spory problem z obliczeniem z tego prędkości. Próbowałem odczytywać wartość z przetwornika ADC co pół sekundy (16000000/256/500/125 = 1, a dla 63 to dwa razy na sekunde) i do tego wykorzystałem: $crystal = 16000000...
"nie Voltage #include <stdint.h> #include <avr/io.h> #include <stdlib.h> #include <avr/interrupt.h> #include "HD44780.h" #include <avr/sfr_defs.h> //w Project->configuration option ustawiamy freqency 16000000 #define LICZBA_KANALOW 4 //cztery...
Mam problem z komunikacją 1wire i jej kolizją z przerwaniami zewnętrznymi. Próbowałem wyłączać przerwania zewnętrzne na czas obsługi 1wire efekt jest taki, że temperaturę odczytuje bezbłędnie, niestety rozjeżdża mi się przerwanie zewnętrzne. Gdy, nie wyłączam przerwań zewnętrznych na czas obsługi...
mam taki kod '**************************** 'Konfiguracja '************************... = "attiny2313.dat" $crystal = 8000000 Config Portb = &B11111111 : Portb = &B11111111 Config Portd = &B11111011 : Portd = &B11111111 Config Timer0 = Timer , Prescale...
Witam Chcę zrobić sobie termostat :) ale jak na razie udało mi się tylko napisać termometr, a termostatu nie umiem ;( Chcę zrobić tak, że jak naciśnie się trzeci przycisk to wtedy wchodzi się w ustawienia temperatury i jak już się jest w ustawieniach to reguluje się temperaturę 2 pierwszymi...
Witam Chcę zrobić proste menu ale mam problem Napisałem taki program ale on nie działa i nie wiem co jest źle Chcę zrobić tak, że jak nacisnę przycisk P1 to wtedy ta strzałka > przejdzie na inne menu. np. Jest tak jak na zdjęciu 1 to jak nacisnę przycisk to ma być tak jak na zdjęciu...
Pracuje nas sterowaniem małego serwomechanizmu: Programuje w Bascom AVR i do tego celu wykorzystuję jedynie Timer0. Nie mogę wykorzystać dodatkowego timera1 bo ten będzie służył do odliczania czasu. Instrukcji Serwos() także nie chce wykorzystywać...jakoś nie mam do niego zaufania :/ Aktualnie...
Ty to jesteś krejzolka Aldoro wiesz hahahahaha Podłączył byś wyjście transoptora do wejścia INTx albo ustawił Timer jako Counter a wyzwalanie jako, na przykład Falling, Co sekundę sprawdzał byś ile impulsów nabiło przez sekundę. I to wszystko. Bez obsługi przepelnienia Timera osmiobitowego zmieścił...
Ktoś tu zaraz wstawi pewnie gotowy kod ale. Napisałęś około wiec dokładność chyba nie gra roli. Zrobić tak aby tajmer przepełniał sie sam (config timerx timer, start timerx, enable timerx, enable interrupts). W procedurze obsługi tajmera (on timerx przerwanie_tajmerx, przerwanie_tajmerx:) zrób zwiększanie...
Jeśli nachodziłyby na siebie przerwania, to nic byśmy nie mogli odczytać na wyświetlaczu, bo dane byłyby cały czas zapisywane do driver'ów i nie dochodziłoby do końca funkcji, gdzie dane są zatrzaskiwane. Według moich obliczeń, to tak wygląda: mamy kwarc (albo oscylator wewn.) 8MHz, to mamy 8 000...
Racja. Do tego typu obliczeń są potrzebne większe procki. Wracając do tematu licznika. Stworzyłem już kod, który odlicza czas i zlicza naciśnięcia(maksymalne wychylenia). Nie mogę dojść do sposobu jakim mam obliczyć resztę. Nadal ufam,że jeszcze na ATtiny uda mi się to zrobić :) Wzór G = k...
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...
Dawno Bascoma nie używałem ale to będzie coś takiego: On int0 czas 'przerwanie zewnetrze (wejście impulsów) do czestotliwosc=1... 'obliczenie czestotliwosci z czasu pomiedzy impulasmi loop czas: stop timer0 'zatrzymaj timer czas=timer0 'odczyt z timera timer0=0...
Witam wszystkich! mam zamiar zrealizować przetwornice na attiny13 tzn. końcówka mocy ma pozostać ale sterowanie na mikrokontrolerze. Według obliczeń wyszło, że generator na bramkach w tym układzie z kitu AVT ma ok 2,5kHz sprzężenie zwrotne nie wchodzi w grę. Napisałem taki kod w bascomie: [syntax=basic4gl]$regfile.....
Witam mam problem z programem do trawiarki mianowicie znalazłem na necie program do sterowania trawiarką chciałem do tego dopisać wybór menu żeby było jeszcze był drugi tryb sterowania trawiarką. Wgrałem program do uC i działało poprawnie potem chciałem wgrać ten sam program bez żadnych zmian na inna...
r"]Idę w jakimś kierunku ....... ? Niezupełnie, nie najlepsza ta droga..... Po pierwsze: wybór processora i parametrów. -Attiny13; praktycznie nie masz możliwości taktowania go 10 Mhz. Masz do wyboru: 1.2, 4.8, 9.6 Mhz. albo też 'zasilić' go (CLK1) z gotowego (zewnętrznego) źróła zegarowego...
Dokonałem optymalizacji kodu, rozmiar zmniejszył się o 2 %. Pilot RC5 działa, można zmienić czas/date, obsługę wyświetlania przeniosłem do przerwania Ale mam kłopot z wyświetlaniem kropki [syntax=basic4gl] '**********... Zegar 6 wyswietlaczy LED + PCF8563 $regfile = "m32def.dat" $crystal = 16000000 $hwstack...
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, ponownie piszę z tym samym pytaniem odnośnie polecenia generacji przebiegu PWM o okresie 14 ms i współczynniku wypełnienia 24% w trybie przerwania. Robione ponownie na 8051 w symulatorze EdSim. Problem udało się rozwiązać w poprzednim poście, z wykorzystaniem następującego programu:
kolego proponuję w ogóle zmienić podejście i sterować wyświetlaczmi nie w programie głównym a tylko w jednym przerwaniu. Niestety prowadzący powiedział, że to wszystko ma być w programie głównym. Dodał też, że sam napisał taki program, który zapala diody wyświetlacza tak mocno, jak reszta diod świecących...
Mam problem z programem w BASCOM'ie, który pisze do wytrawiarki. Po odpaleniu tego programu najpierw gaśnie mi wyświetlacz jedności i po chwili wyświetlacz dziesiątek. Nie mam pojęcia dlaczego :( $crystal = 4000000 Config Portb = &B11111111 Portb = &B11111111 Config Portd = &B1101111 ...
TO BEDĘ ZGADYWAŁ:-) Wyłączyłes przerwanie od timer0 jak uzywasz timere 2? moze po wrzuceniu w atmege wykonują sie obydwa przerwana wiec bedzie efeakt jakby chodził zegar dwa razy szybciej. W asemblerze nie do pomyślenia taka sytuacja nie wiem jak w C ustawia kompilator warinki poczatkowe? moze musisz...
nie chcę siać zamętu, ale jeśli dobrze pamiętam to istnieje błąd w Bascomie, który źle kompiluje powrót w subie zawartym w przerwaniu (wstawia RETI zamiast RET) Obecnie takiego błędu kompilator nie wykazuje: ;---- test.bas ----------------------------------------...
Witam, mam kod: [syntax=basic4gl] Config Timer0 = Timer , Prescale = 1024 Config Timer1 = Pwm , Pwm = 10 , Compare A Pwm = Disconnect , Compare B Pwm = Clear Down , Prescale = 8 Config Timer2 = Timer , Async = Off , Prescale = 1024 , Compare = Disconnect , Pwm = Off , Clear Timer = 1 Config Timer3...
Przeorganizowałem twój kod z pierwszego postu bo w tym z dzieleniem i modulo to może działać ślamazarnie. Jeśli ci pasuje oczywiście. Licznik obsługuj w przerwaniu timera. A zmieniaj tylko wartość zmiennej za pomocą przycisków. To musisz sobie dopisać. Gdyby obliczenia w przerwaniu były za długie, przenieść...
Witam, postanowiłem zbudować sobie miernik pojemności i indukcyjności. Znalazłem w internecie kilka rozwiązań, ale swój projekt chcę oprzeć następujące rozwiązanie: O ile znana jest mi metoda pomiaru i obliczenia indukcyjności i pojemności w obwodzie rezonansowym, to trudniej mi zrozumieć sposób...
Witam wszystkich Elektrodowiczów! Chcę uruchomić Timer na ARMie LPC11C24. Zrobiłem standardową inicjalizację Timera, jak w każdym przypadku, ale on nie chce ruszyć za żadne skarby. Zegar magistral AHB jest ustawiony na 48 MHz (kwarc zewnętrzny 12 MHz, dzielnik PLL P = 2, M = 4 i dzielnik AHB = 1)....
Cześć. Przeglądałem archiwum ale nic dla siebie konkretnego nie znalazłem. Mam problem z programem (konfiguracją przerwań). Chciałem wykonać mały i prosty licznik obrotów. Wykonałem przetwornik obrót/impulsy na diodach, zakładam że nie występują w nim "drgania styków" :) Otrzymany sygnał chciałem podać...
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...
Witam kolegów, głowię się już ładnych parę dni nad taką kwestią w procku: zrobiłem na Atmedze8 zegarek. Zewnętrzny kwarc 4MHz. Timer1 zajmuje się odliczaniem równych sekund, Timer0 osługą wyświetlania itp. Na czym polega problem? Zegarek spóźnia się, wg moich obliczeń na symulatorze w AVR Studio,...
to w takim razie książka godna polecenia. Widocznie do tego kodu nie potrzeba tych funkcji, bo jeżeli jest to tak ważne, to w książce pewnie byłoby to napisane, tym bardziej, że jest to książka dla początkujących. Proszę tego nie odebrać jako obrazę, jest to tylko moje zdanie. Wracając, początek...
Witam, tak jak napisałem w temacie - piszę programowy pwm na attiny2313. Program działa w oparciu o przerwania od przepełnienia timer0. Timer0 ustawiam w normal mode. Fusebity daję na wewnętrzny oscylator 8MHz (bez dzielenia). Z moich obliczeń wynika, że przy rozdzielczości 256 powinienem uzyskać...
Nie tylko wywołanie ale procedura obsługi przerwania zajmuje troszkę czasu. Może zdarzyć się taki przypadek że procedura obsługi przerwania trwa zbyt długo. W tedy aktualne przerwanie blokuje obsługę samego siebie. Przykład Timer0 - liczysz czar 8us. Po obliczeniu 8us następuje procedura obsługi...
Witam Głowiłem się ostatnio nad obsługą czujnika DS18B20. Trochę mi to zajęło czasu - szukanie, zrozumienie itd... Z kilku źródeł skleiłem poniższy program. W docelowym projekcie ma być to termometr do komputera zintegrowany w większym urządzeniu. Sprawdzanie i pomiar temperatury będzie wywoływane...
Witam Mam 7 układów DS18B20 i chciałem dokonywać ich odczytu w kolejności. W przerwaniu od Timer0 ustawiam co 4 sekundy flagę, która ma spowodować wywołanie programu odczytu. Wywołanie od przerwania Timer0 Wywołanie programu pomiaru Podprogram pomiaru Zdefiniowałem zmienne Case nie...
Witam W swoim programie wykorzystuję klasyczny kod dla DS18B20. Pomiar, obliczenia i odczyt podzieliłem na dwie części, każda wyzwalana flagą od od Timer0. Najpierw w podprogramie wywołuję DS'y pierwszym wystąpienie flagi od Timer0, a w następnej wywołuję podprogram konwersji i obliczeń. [syntax=basic4gl] $reg...
I tak - i nie. Sub nie jest funkcją a podprogramem (lub procedurą). Podprogram -> wywołujemy go bez przekazywania mu czegokolwiek Procedura -> wywołujemy go z przekazaniem mu zmiennej (zmiennych) ale niczego nie zwraca Funkcja -> wywołujemy ją z przekazaniem jej zmiennej (zmiennych) i zwraca ona...
] 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...
Wiedze na temat przerwań czerpałem z poradnika : kolega raz pisze ze load timer0 250 jest nie poprawny a potem pisze że poprawny wiec od czego jest zależne jaki czas jest po jednym przepełnieniu czy to ma 8ms lub 4ms jaki jest poprawny wzór na obliczenie jle ma być przepełnień z tego...