Najpierw dajesz Config INT0=Falling Wprowadzasz zmienną opisującą wybrane zbocze wyzwalające przerwanie (Edge_) i w procedurze obsługi tego przerwania: If Edge_ =0 Then Start Timer1 Config INT0=Rising Else Stop Timer1 Config INT0=Falling End If Niektóre AVR'y umożliwiają konfigurację typu Config INT0= Change Wtedy przerwanie wywoływane będzie po stwierdzeniu...
Trzeba zrobić detekcję zbocza np. poprzez użycie dodatkowej zmiennej- flagi Zmienna ta ustawiana byłaby np. na 1 po wysłaniu SMS-a, a wejście do podprogramu wysyłającego SMS pod warunkiem, że ta zmienna = 0 If Pir_1 = 0 And Mw_1 = 0 And Flaga = 0 Then ....... (program wysyłający SMS) Flaga = 1 En If Gdzieś w głównym programie If Pir_1 = 1 And Mw_1 =...
To trzeba zmienić priorytet z 12 bitów stałokodowego pilota na odbiór HCSa lub całkiem usunąć obsługę pilota 12 bitowego. może tak: [syntax=vbnet]'*************************... '========================= przerwanie przy kazdym zboczu ICP, odczyt czasu trwania impulsu...
Witam. Procek tak się zachowuje bo nie określiłeś czy przerwanie ma być generowane przez zbocze opadające, rosnące czy przez stan niski na końcówce INT. Domyślnie wyzwalane jest stanem niskim więc wykonuje się raz za razem. Instrukcja Config INTx. Przeznaczenie: Konfiguruje sposób wyzwalania przerwania INTx. Składnia: CONFIG INTx = LOW LEVEL | RISING...
Witam! Po pierwsze to z reguły przyciski powinny zwierać piny wejściowe do masy a nie do zasilania. Wynika to z faktu posiadania przez procesory AVR wewnętrznych rezystorów pull-up podciągających wejścia do +vcc, czyli panuje na nich stale stan wysoki (oczywiście gdy zostaną uaktywnione). Po drugie to akurat sygnał CLK ma się zmieniać, podczas narastającego...
Może tak If PINX.1=0 then coś tam 'Opadające lub If PINX.1=1 then coś tam' Narastające
http://obrazki.elektroda.pl/7329866000_1... Miernik częstotliwości o całkiem niezłych parametrach, bo potrafiący mierzyć częstotliwości od 1Hz do 10MHz (9,999,999Hz) z rozdzielczością 1Hz w całym zakresie. Idealny do generatorów funkcyjnych lub jako zwykły miernik. Do tego tani i prosty w wykonaniu, z ogólnodostępnych części, a małe wymiary...
Jetem świeży w temacie dlatego proszę Was o pomoc. Czy jest możliwe zrealizowanie przy wykorzystaniu mikroprocesora AVR np. ATmega8 i Bascom następującego projektu: Co jakiś czas (co ok. 10-20s) na wejście µProcesora podawany jest analogowy sygnał napięciowy (0-200mV). Zadanie jakie ma wykonać µP to wykrycie zbocza narastającego sygnału wejściowego...
pytanie tylko czy dorobić układ przejścia przez zero czy wystarczy pomiar narastającego lub opadającego zbocza ?
Może uaktywniłeś obydwa zbocza ??
Uwaga! Przedstawione przez autora urządzenie nie spełnia wymogów standardu I²C (IIC) co zostało wyjaśnione w dalszej części dyskusji w szczególności od tego postu: http://www.elektroda.pl/rtvforum/viewtop... Dlatego też decyzją grona moderatorów zmieniono tytuł na "Izolowany galwanicznie interfejs jednokierunkowy open-drain...
Transoptor zdaje się generować delikatnie poszarpane zbocza - przez co na jednym zboczu zlicza mi kilkadziesiąt malutkich zboczy...
A i B są poprawne :) Odnośnie jeszcze punku B. Powinieneś mierzyć szerokość impuslu, czyli czas od zbocza narastającego do opadającego. Ponieważ ATMega tego nie potrafi robić całkowicie sprzętowo, więc zostaje punkt A. Szerokość sprzętowo może mierzyć dopiero XMEGA. Można też czasy pomiędzy kolejnymi zboczami opadającymi, ale wtedy trzeba zadbać o to,...
Witam, Zlecę napisanie kodu źródłowego w języku bascom. Układ będzie wykonany na atmega8 i ma pełnić funkcje 6-kanałowego przekaźnika bistabilnego. Porty D0-D5 to wejścia na które będzie podawany sygnał masy a dokładniej zbocza narastającego w celu włączenia odpowiedniego wyjścia na portach od B0-B5. Podanie zbocza narastającego na D0 włącza wyjście...
Zmienia ale nie ma opadającego zbocza na ENABLE, czyli nic się nie powinno stać, chyba, że w oryginale programu jest inaczej.
Proszę postępuj zgodnie ze schematem użytkowym, który załączyłem (post #4 21 Lip 2015 21:39). Tam jest przedstawione gotowe rozwiazanie. Zacisk 21 podłączasz do masy, zaś zacisk 20 do GPIO. Stanem aktywnym jest zwarcie pinu GPIO do masy. Następuje to w momencie pojawienia się impulsu (dokładnie w momencie kiedy na ORNO mrugnie dioda). Dalsza procedura...
Nie piszesz czy to ma być liczenie w jednostce czasu ani jakie zbocze Cię interesuje (opadające/narastające)... Jeśli to tylko zwykłe liczenie impulsów to rozwiązanie jest wprost banalne. Najpierw określ jakie zbocze ma liczyć. Odczytujesz stan portu i czekasz na jego zmianę jeśli się zmieni wtedy "INCR coś tam", czekasz na powrót do zbocza i wracasz...
Bo bascom uparcie twierdzi, ze ATmegi przerwania generuja wyłaczie dla LOW LEVEL. Nie wiadomo czemu tak jest, ale jest. Ale dobrze wymysliłes z tym MCUCR. Ja tez tak to ustawiałem w mega8 i działało. Tylko dal zbocza opadajacego jak pamietam MCUCR.1 trzeba ustawić na 1, a nie )0. Z resztą sprawdź jeszcze w dokumentacji.
Czyli wystarczy zmiana z configu z opadającego zbocza na rosnący ? Ale pamiętasz że przed prockiem jest optoizolacja która zmienia stan ? Czytam tę note z wielką tabelą rejestrów i mam to rozumieć Address Name Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 $34 ($54) MCUCSR JTD ISC2 ---- JTRF WDRF BORF EXTRF PORF Adres - to miejsce w pamięci...
a moze wykorzystac timer/counter do zliczania impulsow zewnetrznych? chyba po to jest. dla 2313: do TCCR0 zaladuj 0b00000110 dla opadajacego zbocza a 0b00000111 dla narastajacego zbocza. wtedy licznik bedzie zliczal impulsy z wejscia T0 czyli PD4 czyli pin 8. licznik T0 jest 8-bit czyli 256 zliczen, wiec jak potrzebujesz pojemnosc 65536 (16-bit) musisz...
A nie możesz wykorzystać przerwania od zbocza np INT0? Jak pojawi się dodatnie zbocze to robisz krótki sygnał i program pracuje dalej. Dopiero jak ktoś puści przycisk i znów naciśnie pojawi się znów zbocze narastające które może wywołać przerwanie. Ideałem byłoby abyś po pojawieniu się przerwania od narastającego zbocza, włączał Buzzer potem uruchamiał...
Jdno pytanie czy ponizsza konfiguracja bedzie prawidłowa : Chodzi o to aby licznik zliczał impulsy wewnętrzne z kwarcu przez czas jaki na int0 bedzie stan wysoki. w momencie pojawiania sie zbocza opadającego aby program przchodził do obsługi przerwania : Fragmenty w bascom : config timer0 = timer , gate = external , mode =1 set Tcon.0 - reakcja na zbocze...
czodi o to ... heh tak myslalem ze jakis uklad ale myslalem tez ze cos mniej skaplikowanego Jak masz enkoder AB, dający sygnał TTL a nie taki z myszki, to możesz darować sobie 74HC14 i jego peryferia. Układ zlicza oba zbocza sygnału A enkodera, więc podwaja jego rozdzielczość.
Funkcjonalnosc jest odwrotna do '575, czyli PISO. CE i DS podlacz na stałe do masy. Na wejsciach D0..D7 masz jakies stany. Zeby je 'zatrzasnąć' do wnętrza scalaka, ustaw pin PL na niski. Na Q7 pojawi się stan D7. Potem ustaw PL na wysoki, i generując zbocza narastające na CP na wyjsciu Q7 będą się pojawiać stany kolejno D6,D5,....,D0 a potem same zera...
albertb - ten "and" akurat jest tam nie potrzebny, bo chce odczytać cały port ale to jest maska które piny mają być odczytane w przerwaniu Też tak słyszałem, że Bascom zamuli wszystko a Asembler powinien wyrobić. Może ktoś wie jak tu wstawić jakieś wstawki Asemblerowe do Bascoma, może w tedy wyrobi, tylko że na Asemblerze w ogóle się nie znam. Chce...
Czy może mieć na to wpływ to z jakich pinów korzystam? Na pewno ma. Moim zdaniem nie da się poprawnie obsłużyć klawiatury bez wykorzystania przerwań. Nie mam pojęcia jak jest to obsługiwane w BASCOMIE ale wiem jak działa klawiatura. W takt zmian sygnału CLK są przesyłane dane DATA. Całość sprowadza się do sprawdzania stanu na pinie do którego podłączony...
Tak shift in wczytuje dane. Widzę na lcd jak zmieniają się piksele natomiast nie działa żadne adresowanie czyli dane są nieprawidłowe. Myślę że mój problem jest tu: If Pind.3 = 0 Then Shiftin Pind.1 , Pind.0 , Komendy_we , 5 , 8 Gosub Konwersja Program zaczyna czytać dane w momencie gdy na RS jest L a wtedy jest jeszcze wysyłany bit DB0 poprzedniego...
Nie do końca rozumiem o co Ci chodzi, ale: Jeśli timer pracuje jako czasomierz (zlicza wewnętrzne cykle zegarowe), to pin nie ma nic do rzeczy. Można go wykorzystywać w dowolny sposób. Jeśli natomiast timer skonfigurowany jest do pracy jako licznik i zlicza impulsy / zbocza na wejściu T1 (czyli pinb.2) to pozostaje jedynie zrezygnować z tej funkcji...
Linie danych wszystkich kości rozszerzających łączysz do wspólnego (dowolnego) portu, sterowania \OE do masy, linie taktujące CP do kolejnych wolnych linii dowolnego portu. Wysłanie danych na port wymaga: 1. Ustawienia odpowiednich stanów na porcie danych 2. Przepisania danych do przerzutników wybranego układu 74LS374 przez wystawienie przedniego zbocza...
Hehe, nie wiem co to jest volatile :) Programuję w bascom i na razie spełnia w 99% moje oczekiwania chociaż robię przymiarki do assemblera... Przychodzi mi do głowy jeszcze jedna rzecz związana z gubieniem impulsów. Piszesz, że badanie robisz przy każdym zboczu dla zwiększenia rozdzielczości (nawet sam tak miałem na początku w sowim projekcie pozycjonera)...
Napisałem coś takiego. Czy to ma sens? Po pojawieniu się pierwszego zbocza opadającego na Int1 powinno uruchomić Timer1 i po podaniu drugiego zbocza opadającego na wyświetlaczu powinno pokazać wartość Timer1. W symulacji pokazuje na lcd cały czas zero. Gdzie jest problem? Na razie chcę mierzyć tylko czas między przerwaniami $regfile = "m8def.dat"...
Ad 1. Nie że chce jednocześnie INT0 i Timer0 wykożystać do liczenia tych samych impulsów. Tylko jak wpisuje: config Timer=counter gate=internal mode=1 enable interrupts enable timer0 a impulsy podaje na P3.4 to timer nie liczy nic. Dla pewności załączałem też dodatkowo przerwanie INT0 (rozumiem że to bez sensu). Chyba że ustawienie na zliczanie zbocza...
Niestety mój poziom programowania to na razie tylko BASCOM i to też początki. Myśle, że procesor się wyrobi jeśli odpowiednio użyje przerwań zewn. i timera(ów). Czujnik z położenia wału będzie generował przerwanie co 90° przerwanie to będzie wpisywało obliczoną wcześniej wartość czasu i uruchamiało timer, którego przerwanie będzie załączało i wyłączało...
A więc Twój projekt ma właściwie do wykonania cztery zadania: - obsługę LCD (inicjalizację i procedury wysyłania danych i rozkazów) - obsługę przycisków (detekcja zbocza opadającego, likwidacja efektu drgania styków) - obsługę liczenia czasu (odpowiednie skonfigurowanie licznika) - obsługę wyliczeń matematycznych (max. 9!=362880, a więc mówimy tu o...
Kurczę nie wiem jak to ugryźć. Zastanawiam się czy ten Capture Mode zdał by egzamin u mnie, ponieważ impulsy podaje bezpośrednio na port INT0 i tak mam już skonstruowana płytkę. Więc muszę się już tego trzymać. [syntax=vb] $regfile = "m16def.dat" 'informuje kompilator o pliku $crystal = 8000000 'informuje kompilator o częstotliwości oscylatora Config...
więc tak jak kolega będzie niegrzeczny to napewno nikt ci nie pomoże. rozwiązanie twojego problemu może być funkcja bascoma PULSEIN var , PINX , PIN , STATE ale ona jest dość mało dokładna i zależy od kwarcu. ja bym ci proponował zrobić tak ustawic timer w tryb timera i tak dobrać preskaler aby napewno nienastąpiło przepełnienie. następnie dodać instrukcje...
Próbuję zrobić emulator dekodera PT2272 (dekoder pilotów radiowych), transmisja nie jest zbyt skomplikowana i wykonanie kodera było proste. Problem zaczyna sie po stronie odbiorczej. Na przebiegu zaznaczyłem wszystkie 4 stany jakie występują w słowie kodowym. Są to odpowiednio "0" "1" "T" i ostatni synchronizujący. http://obrazki.elektroda.pl/4855744500_1...
Przede wszystkim nie wiecz czy wykrywasz początek bitu startu, jego środek, czy może prawie koniec. Gdybyć wykrywł zbocze z wykorzystaniem przerwania, to dopiero wtedy mozna mówić o synchronizacji. Przecież on b. szybko wykonuje kod, a jedyne co sprawdza to czy zbocze opadło. Nie ma możliwości, żeby udało mu się podczas np. skoku do początku pętli...
Narazie odpuszczam tryb powerdown aż nie zrozumiem dokładnie o co chodzi z flagami. ] Teraz diody migają ale całkiem inaczej niż przewiduje program i dzieje się to niezależnie od stanu przerwania int0. Czy jeszcze gdzieś jest błąd? Program jest dość krótki, niemniej jednak jest w nim kilka pdstawowych błędów. Zwróć uwagę na: Int0 masz na wejściu PB1,...
Hmm, moim zdaniem gdzieś jest zmienna 8 bitowa (Byte) musisz zmienić ją na większy typ. np. Word, Long. zmienna word Dodano po 1 A czy trzeba konfigurować port Config Pinb.0 = Input Set Portb.0 pod counter0 atmega 32 Dodano po 11 [syntax=basic4gl] $regfile = "m32def.dat" $crystal = 8000000 $hwstack = 32 $swstack = 8 $framesize = 24 Config Lcd = 16...
witam! Chcialem prosic o pomoc osoby bardziej doswiadczone, mianowicie mam problem w tym, ze nie chce mi uklad wejsc w obsluge przerwania od timera1, ktory ma liczyc. Projekt ma dzilac tak, by po pojawieniu sie zbocza opadajacego ma wejsc w obsluge przerwania, a nei chce tego mi zrobic :( oto wycinki programu...: $lib "glcdks108.lbx" $crystal...
Poszukałem trochę dodatkowych materiałów do wchłonięcia przez moje szare komóreczki :) 13 Liczniki Słowo licznik to próba przetłumaczenia słowa timer. Ja używam tego słowa jako odpowiednika, ale nie wszyscy się z tym zgadzają i twierdzą, że należy używać słowa timer, gdyż nie można dokładnie przetłumaczyć znaczenia. Licznik to układ liczący o rozdzielczości...
Witam Zasiadłem do BASCOMa AVR i poczyniłem zawiły ale zadowalajacy (jak na to srodowisko) soft dla atmega8, wszystko byloby ok gdyby nie mały problem z obsługą przerwania... mianowicie, na jedno z wejść tj. INT0 podaje przebieg prostokątny, okres 20ms, w aplikacji wymagane jest aby w chwili gdy wystąpi zbocze opadające owego przebiegu (dopiero od pewnego...
bascom charakteryzuje sie latwoscia programowania o ile w asemblerze musisz dobrze znac budowe procka to w bascomie az taka duza wiedza nie jest potrzebna <co moze jednak nie jest az takim duzym plusem :roll: >chac np uruchomic licznik w asemblerze trzeba wpisac odpowiednie stany w odpowiednie rejestry natomiast w bascomie zalatwiaja to wpisane...
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" 'Info dla kompilatora. $crystal = 16000000 'Informujemy kompilator o kwarcu 16MHz....
Ok, nikt więcej nic nie podpowiedział, więc pomyślałem jeszcze trochę. Wydaje mi się, że sniffowanie transmisji będzie łatwiejsze. Wyświetlacz obsługuje sprzęt audio, więc nie ma tutaj szybkich zmian na wyświetlaczu. Po przeczytaniu datasheetów, doszedłem do wniosku, że w momencie opadania zbocza E wszystkie sygnały muszą być stabilne. Wydaje mi się,...
Witam, potrzebuję porady i sprawdzenia toku myślenia w następującym problemie: Potrzebuję wykonać program, który umożliwi sterowanie pot. cyfr. DS1267S spod atmegi16. Mój problem polega na doborze odpowiednich czasów trwania poszczególnych etapów transmisji. Wujek google nie znalazł żadnego rozwiązania problemu w języku C, a o takie mi chodzi, gdyż...
Nie wiem czy kod w Bascom na coś Ci się przyda ale właśnie na takiej zasadzie jak w tym programie zrobiony mam pomiar prędkości wiatru w moim pozycjonerze. Troszkę inaczej wykorzystuję tu timery niż założyłeś ale... Zostawiłem Ci tylko fragment odpowiedzialny za liczenie impulsów i dodałem obsługę wyświetlacza. Program jest na tyle prosty, że z interpretacją...
Witam Właśnie piszę program do sterowania diodami na dyskotekę tzn. wąż świetlny. Projekt jeszcze nie jest skończony ale niby działa i niestety pojawił się problem. Przycisk Sv1 Alias Pind.3 służy jak na razie do wyboru programu (zwiększa o jeden) Na razie jest 6 programów. Owy przycisk działa na zasadzie przerwania od przepełnienia timer0, które to...
Dobry wieczór (dzień dobry? :D ) wszystkim. Ostatnio postanowiłem się wziąć za obsługę wyświetlacza jak z tematu. Pogrzebałem tu i tam i zmontowałem taki układ: http://obrazki.elektroda.pl/8094079400_1... Jak widać, nieco namieszałem jeśli chodzi o konwersję napięć z 5V do 3.3V oraz podwyższenie napięcia do podświetlenia wyświetlacza...
zbocza bascom bascom wykrywanie zbocza nachylenie zbocza
pompa odpływowa zmywarka bezpieczniki volvo lusterka brotje energy błędy
Toshiba 55UA2063DG Firmware: Official Sources, Main Board 17MB170/17MB180, Panel VES550QNDB-N2-N43 Wydajność tonera startowego HP LaserJet M110w