Witam, Twój schemat przypomina trochę schematy z gazet - maksymalne upchanie elementów, co mocno utrudnia czytanie - tylko że tam jest to podyktowane ograniczonym miejscem. Ogólnie robi się tak - wejścia układu po lewej, wyjścia układu po prawej. Sygnały "płyną" z lewej na prawą. Punkty znajdujące się wyżej na schemacie mają zwykle wyższy potencjał...
Dla Twojego systemu automatycznej regulacji wymaga się aby utrzymywana była stała temperatura. Załóżmy, że zastosujesz prostą regulację włącz/wyłącz gdy temperatura spadnie/wzrośnie w stosunku do wymaganej temperatury. Może się tak stać, że temperatura otoczenia wahać się na będzie na granicy temperatury referencyjnej - spowoduje to, że układ wielokrotnie...
Nie rozumiem jak przerwanie od licznik 8 bitowe mialoby przeszkadzac w dzialaniu pozostalych przerwan czy calego programu.. Przerwanie np przy 16Mhz bedzie generowane 62500 /preskaler na sek od licznika 8 bitowego, a zajętość (stan CLI) procesora oceniam na ponizej 1 uS co chyba nie wplynie na pozostale zadania procesora.
Większość gotowych systemów alarmowych posiada wejscia parametryczne tzn takie, które wymagają rezystorów . Budowa takich wejść opiera sie o tzw komparator okienkowy ,który dość łatwo zrealizować w oparciu o dwa komparatory analogowe np LM393 lup poczwórny LM339. M16 to właściwy wybór pamiętaj tylko że układ w czuwaniu pracuje wiele godzin więc należy...
Na wejściu (PortC.0) pojawia się stan 0 (na przykład z układu ULN2803) to na wyjściu (PortA.0) pojawia się stan 1 wysoki. Np. tak: If PINC.0 = 0 then PORTA.0 = 1 end if Jak robisz coś takiego: Config Portc = Input to lepiej zrób to tak: DDRC = 00000000 A potem jeszce to wszystko podciągnij do 1 tak: SET PORTC Już nie wspomnę o wyłączeniu JTAGA bo inaczej...
Jak zmusić diodę alarmu do migania nie używająć procedur waitms ? Mam teraz zrobine tak: Używasz Timer0 jako pewnego rodzaju 'swoisty' prescaler: (4 ms; 100 ms; i 1 sec). Dlaczego okazyjnie nie wykrzystać tych 100 ms na miganie diodą? Wstaw tą wyżej procedure (troche zmodyfikowana - zamiast "set Porta.5" daj "toggle") w przerwaniu timera0 w miejscu...
a przejrzał kolega chociaż raz przykład odbioru RC5 z helpa Bascoma ??? oczywiście tam nie jest on w przerwaniu ale to nic. Za to są takie rzeczy jak: - maskowanie tooglebitu - sprawdzanie czy adres jest np = 0 - co oznacza pilota TV albo przynajmniej jakiś warunek czy adres < 255 - bo inaczej to będzie taki klops właśnie jaki u ciebie występuje...
Sprobuj jeszcze od timera0 obsluge przerwania w petli glownej, a Krotki kod generujacy tego prostokata, mozesz zorbic: -przeliczajac ile z danym kwarcem wynosi okres danej czestotliwosci wpisac do licznika timera1 polowe tej wartosci, aby co pol okresu zmienial stan wyjscia na przeciwnym, przerwanie od Timera1 oczywsice ze wzgledu na prostote zrob w...
Liczniki są osobnymi blokami uC, więc jeśli sygnał wejściowy jest poprawny, to impulsy powinny być zliczone poprawnie. Podany wyżej program to program użyty w moim mierniku częstotliwości okrojony z niepotrzebnych ci rzeczy, które mogłyby zaciemnić jego sens. Działa przy częstotliwości kilku MHz.
Instrukcja WAIT Przeznaczenie: Przerywa działanie programu na określony czas. Składnia: WAIT il_sekund Opis: Instrukcja wstrzymuje działanie programu na podaną ilość sekund. Odmierzany czas jest wartością przybliżoną, więc nie należy stosować tej instrukcji do dokładnego odmierzania czasu. Używanie przerwań, może znacznie wydłużyć działanie instrukcji....
Zapis LCD(0, Index) dałem umownie bo nie wiedziałem jak będziesz to wyświetlał. Wstaw swój Lcdtext Seq(index), 0, Index * 8... w pętlę For...Next wyświetlania i gra. :)
Wyrzuć ten wzór i obmyśl jakiś inny. W tej postaci to się absolutnie nie nadaje. Z ADC możesz uzyskać maksymalną wartość 1024, teraz podnieś to do potęgi 6 i wychodzi ci absurdalna liczba, program wywala się juz na pierwszym obliczeniu. Obliczanie napięcia może wyglądać tak: [syntax=basic4gl] Dim Obl_nap As String * 6 Dim Wartadc As Word Dim Tymcz As...
Sprawdź jeszcze jeden "myk" Wszędzie zamiast Chr( ) wpisz ten sam numer tylko w nawiasach klamrowych (bez Chr - tylko sam nawias i trzy cyfry) Przykład: Zamiast Chr(1) wpisz Lcd {001} Zamiast Chr(7) wpisz Lcd {007} Zamiast Chr(32) wpisz Lcd {032} Kod się znacząco zmniejszy co może się czasem przydać przy małych mikrokontrolerach. Chr( ) to funkcja zamieniająca...
Gdybym to robił bez wykorzystania peryferiów MCU, zrobiłbym to tak (albo podobnie, nie pamiętam czy Bascom pozwala na użycie zmiennej w wyrażeniach wait): Potrzebowałbym wygenerować 4 przebiegi pseudo-prostokątu do max 1kHz(sygnał CLK) z możliwością przestrajania częstotliwości. Nie muszą one działać równocześnie. Najlepiej to wykonać tak jak kolega...
A nie ruszaj jeszcze tych fusebitów- chociaż przez parę dni. A procesor ma zasilanie? A jaki programator ustawiony w Bascomie? A delay jakie do programatora? A kable dobrze wetknięte? A zwarć nie ma?
skoro umiesz wysłać tekst do drugiej atmegi to jak możesz nie umieć wysłać sobie jakichś zmiennych - oj chyba przegrzało przy ubieraniu choinki więc podpowiem ;) .... można to zrobić na milion sposóbów oczywiście i wszystko zależy od tego jakie to są zmienne, ale np załóżmy że masz zmienną typu Byte. 1. dokonujesz konwersji tej zmiennej na postać String...
Może się pomyliłem, ale chyba przerywasz sobie odbiór co 2ms. Dlaczego nie użyjesz wyższego preskalera? Np. 1024? Możesz nawet po ustawieniu Flagi wyłączyc Timer i po odbiorze włączyć ;) Timery można dowolnie konfigurować podczas pracy programu. Druga sprawa ustaw sobie odbiór do bufora w tle (Config Serialin = Buffered, Size..)
Witam. Może spróbuj tak po wywołaniu przerwania ( u Ciebie co sekunda) Odczytaj termometr DS. A następnie wydaj rozkaz pomiaru temperatury. W następnym przerwaniu odczytasz go o tak w kółko.
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...
Daj filtr dolnoprzepustowy RC na wejściu ADC
:arrow: Mictronic: Predkosc transmisji to 9600! Ponizej wklejam wycinki mojego programu do obslugi tego modulu: '------------------------------- ' modul RFiD ' ' 9600.1.0 ' dane 0xff,x,x,x,x,x,crc8 '------------------------------- {...} $baud = 9600 ' predkosc transmisji Config Serialin = Buffered , Size = 100 ' rozmiar bufora {...}...
Przeanalizuj swoje odwołania poprzez GOSUB. Masz na 100% zapętlone i stos ci się przepełnia. Najpierw piszesz Gosub Standby a potem w tej procedurze Gosub Glowne , a tam znów Gosub Standby w jednym z warunków. I tak w kółko program sobie skacze i po dwa bajty na stos.
Skoro kolega napisał już taką wersję jak przedstawił w tym temacie, to poradzi sobie i z tą wersją. Trzeba tylko ruszyć głową - zwłaszcza, że powyżej opisałem całą ideę działania...
hmmm no ja to robiłem wtedy w Bascomie mniej więcej tak: ustawiałem sobie tak któryś Timer, żeby przerwanie wykonywało się powiedzmy 64 albo 128 czy ze 200 razy w ciągu czasu trwania jednej połówki czyli w trakcie ok 10ms tak? Gdy pojawiło się przerwanie INTx to odpalałem ten Timer, który zaczynał tykać i wykonywać przerwanie tyle razy ile ustalonych...
Po pierwsze dodaj dyrektywę informującą kompilator z jakiego zegara korzystasz. Po za tym w przerwaniu nigdy nie używaj opóźnień bo to podstawowy błąd.
Witam Dokonałem tej zmiany i także wyrzuciłem zmienna S na Lcd i dalej program nie działa tak jak bym chciał. ................ Jest ok zmieniłem znak ''<" i działa . Do swojej podstawki programującej mam podłączone 2 przyciski do pin d.0 pierwszy do pind.1 drugi gdybym chciał zmieniać progi załączania pind.7 tymi przyciskami (czyli regulować temperaturę...
ale kabelki od komórek mają inne poziomy napęć 0V-3V w środku powinny byś jakieś didoy zenera albo coś. najlepiej zrób sobie swój kabelek do atmeli. Właśnie tego chciałem dociec :D Mój znajomy , podłączał taki kabeleko do proca przez MAX232 i dziwił się , że toto nie działa :) Piotrek
Jest też polecenie Shift.
LCD podłączony pod port D, z portu B biorę zasilanie. Eeeee mam nadzieję że to z tym B to błąd...... port ma wydajność 20mA a ty ciągniesz z niego całe zasilanie? Może jeszcze dopowiesz że podświetlanie wyświetlacz też ma?
Pomysł nie jest zły. Częstotliwość rzędu 400Hz (50-1kHz zależnie od źródła, niektórzy podają że im niższa tym folia dłużej żyje) Indukcyjność zależy jakie prądy chcesz żeby płynęły przez transformator. Tutaj jest spora dowolność. Może zobacz jak bedzie działać z ~1mH na stronie pierwotnej. Rdzeń o AL=60 moze sie okazać trudny do nawinięcia (mnóstwo...
Witam. Transformator zastosuj troszkę większy np.TS4/40, bo wiem że 2/14 będzie sę znacznie grzał przy wysterowaniu wszystkich przekaźników naraz, dodatkowo między reset a VCC wepnij opornik 4,7....10k tylko przy programowaniu go odłącz. Styki wykonawcze (obciążone) przekażników zabezpiecz warystorami., no i te diody jak kolega pisał wyżej koniecznie...
Jeśli nie wykorzystujesz tych samych pinów co kwarc zegarkowy to nic się nie będzie gryzło... O ile dobrze pamiętam wystarczy podpiąć kwarc 32,768kHz bez kondensatorów pod TOSC1 i TOSC2... Raz po uruchomieniu uC odpalasz timer2 w trybie asynchronicznym i tylko włączasz albo wyłączasz przerwanie od przepełnienia... Ustawiasz preskaler tak żeby przepełnienie...
Owszem, pewnie po zmianie czasu działałoby lepiej. Ale wiesz, warto uczyć się na doświadczeniu innych. Mnie kiedyś ten sposób pokazał na elektrodzie, przekazuję go więc dalej.
Ain0 w procku jest podłączone do masy? bo jak tak to raczej nigdy nie znieni się stan na wyjściu wewnętrznego komparatora, minimalne napięcie na wyjściu wzmacniacza operacyjnego (LM358N) wynosi około 0,7V. znam na to dwie rady: 1; na wejście Ain0 daj napięcie z dzielnika rezystancyjnego (może być potencjometr) 2; zwiększ wzmocnienie na wzmacniaczu i...
W ogóle nie masz jakiejkolwiek obsługi tych "duchów". Tak więc nie tylko trzeba je minimalizować, ale w ogóle jakoś obsługiwać. A robi się to tak że się najpierw wyłącza poprzednią cyfrę, a potem dopiero załącza kolejną. Najprościej to po prostu przed tymi wszystkimi Selectami ustawiaj Portb i Porta w stan nieaktywny (nie wiem jaki on jest więc nie...
Automatykon - czy Ty przeczytałeś mój wcześniejszy post w tym wątku? Przecież problem masz tam rozwiązany. teedd
$crystal = 14745600 Czy oprócz podłączenia takiego kwarcu ustawiłeś odpowiednie fuse bity? Następna rzecz to nie musisz robić resetu 1wire. Największy błąd polega na tym że nie czytałeś helpa bo gdybyś to zrobił to dowiedziałbyś się że zmienna do której zapisujesz ilość urządzeń koniecznie musi być typu WORD lub INTEGER. Na koniec radzę ci skorzystać...
W Bascomie jest do tego specjalna instrukcja Zaglądnij do Helpa na polecenie Pulsein Zauważ że zarówno instrukcja pulsein jak i pulseout mierzy tylko czas trwania impulsu a nie całego cyklu; patrz paniżej diagram: http://obrazki.elektroda.pl/1148630500_1... Zmierzysz tylko L1 albo L2 . Autor potrzebuje zmierzyc czas L (czas pomiędzy...
Oprogramowanie jest takie samo jak do 3210 i 3310. Różnica występuje w podłączeniu bo zamiast 8 wyprowadzeń 5110 ma 9. Polecam kurs z EP 5, 6, 7/2003. Programy w BASCOM'ie znajdziesz na forum. P.S. Wyświetlacze od NOKII to bardzo krucha materia. Łatwo je uszkodzić więc zapoznaj się z kursem i nie przesadzaj z kontrastem. (Zanim do tego doszedłem wykończyłem...
Szybciej byś kupił mową ATmega16 i po kłopocie....
Ale PRINT mimo wszysko skonwertuje zmienną na postać textową. To musi być PRINTBIN. ale co to wg ciebie znaczy, że skonwertuje zmienną na postać tekstową - może ja czegoś nie rozumiem. Przecież obojętnie czy napiszę tak: PRINT "A" ; czy tak: PRINT 65 ; czy tak: PRINT chr(65) ; to zawsze zostanie przesłany ten sam - jeden bajt o wartości...
Wiec tak: W ogóle wyrzuciłbym zmienna/flagę F. Nie jest potrzebna tutaj. W programie głównym zamiast sprawdzania F, sprawdzaj A, czyli warunek IF z przerwania przenieś do programu głównego, łącznie z zerowaniem A. W przerwaniu zwiększaj tylko A. Zamiast: If F = 1 Then Cls Locate 2 , 1 Lcd "przerwanie" Wait 1 Cls F = 0 Enable Int0 End If zrobilbym...
Nie prościej generować przerwanie co np 1s od timera?
Jeżeli podłączysz kondensator do minusa jak jest to w EDW to nic nie uwalisz , zegar tylko będzie chodził szybciej.Zmniejsz wartość oporników na 1 kohm. i sprawdź co ci odczytuje procesor.
przydał by się schemat
No cóż. Wprawa i rutyna (niestety). Zapraszam do nauki. Z uC można 1000000 razy więcej.
Wydaję mi się że jest to możliwe ale procedura umieszczona w podprogramie powinna być bardzo krótka. Pewniejszym sposobem jest stosowanie flagi w przerwaniu a w pętli głównej przetwarzanie jej.
Kodzik jest przykładowy. Musisz myśleć :P Zwiększ te Waitms 10 pod Loop Until bo nawet mrugniecie oka trwa dłużej... Zwykłe "debounce" najczęściej ustawia się na 25ms a Ty masz 10...
Zerknij do wiadomości PW...
Zastosuj podciąganie: Portb = &B11111111 A poza tym to widzę taki sam temat w koszu. Pewnie ktoś zaraportował jako obniżanie poziomu.
Emarcus on liczy przepełnienia timera, który generuje przerwania, co 4ms i coś tam robi w przerwaniu. Ostatnia linijka postu, który cytujesz.
No to kawa na ławę. Instrukcja Getrc5 w czasie działania używa jest licznika TIMER0 i związanego z nim przerwania. Licznik ten jest służy do generacji wymaganych opóźnień podczas próbkowania sygnału. TIMER0 może być dalej używany przez program, lecz należy się liczyć z wynikłymi opóźnieniami, gdy wykonywana będzie funkcja GETRC5(). Jest tylko jeden...
A widzial kolega to: http://www.elektroda.pl/rtvforum/topic17... Zwróć uwagę co robię z INT0 podczas odczytu 1W Poza tym u Ciebie w podprogramie odczytu temperatury nie dajesz nic wytchnienia dallasowi i czytasz temperaturę zaraz po rozkazie konwersji. Kolejna sprawa to czy zawsze przed odczytem musisz szukać czujników? Nie lepiej jest to zrobić...
A jak skofigurowałeś UART ?
Zmień rezonator kwarcowy, bo pewnie padł. Zdarza się.
Albo masz zamienione linie SCK i SDA :) , jeśli masz baterie włożoną, to sprawdź czy na pinie 3 masz 3V. Jak nie to podepnij go do masy. 100n ceramik na zasilaniu tuż przy układzie jest mile widziany. Ja bym obstawiał na hardware.
http://www.mcselec.com/index.php?option=... Proszę bardzo.
1. W swoim kodzie wyżej dodałem deklaracje zmiennych - przepisz je; 2. Wyświetlaj odebrane dane gdy Flaga = 1; 3. Sprawdź taktowanie uC !!! Zrób miganie diodą i sprawdź, czy czasy włączenia i wyłączenia będą prawidłowe; 4. Napięcie na RX jest wartością średnią (zmiany poziomów podczas nadawania danych).
Dlaczego do bufora 32 znakowego wpisujesz 64 znaki? Lekko zmodyfikowałem funkcję ReadUart, aby wypisywała zmienną buf: Jakbyś jeszcze kończył string w miejscu, gdzie skończyły się dane, to nie wypisywałyby się śmeci. Coś w tym stylu: [syntax=cpp] ret = ReadFile(hPort, buf, len,&retlen, NULL); buf[retlen] = 0; cout << buf; [/syntax] Tak w...
No to spróbuj tego: $regfile = "m16def.dat" $crystal = 4000000 $hwstack = 32 $swstack = 32 $framesize = 32 config 1wire= portb.7 Do 1wreset if err=0 then print "PP_ok" ' czy LCD "PP_OK" - co tam masz else print "PP_err" ' j/w endif waitms 500 Loop Napisz o wyniku doświadczenia :D Piotrek
Witam. Szukam 2 dni i nic. Jakiś przykład kodu czy coś. Atmega 16, podłączony kwarc zegarkowy do TOSC1/2. Kod programu to: $regfile = "m16def.dat" $crystal = 8000000 'Oscylator wewnętrzny Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Portb.3 , Db6 = Portb.4 , Db7 = Portb.5 , E = Portb.1 , Rs = Portb.0 Config Clock = Soft...
Bez pętli do loop w podprogramie działanie jest dokładnie takie samo. Generalenie oprocz tego jednego fragmentu o którym wspomniałem wszystko działa bezbłędnie. Wcale nie twierdze, że kod jest bezbłędny i optymalny (nie jestem biegły w programowaniu) lecz wydaje mi się, że nie pętla jest powodem błędnego działania. Niektóre dziwne komendy były dopisywane...
Zainteresuj się poleceniem FUSING. Przeczytaj helpa i zobaczysz, że da się zrobić.
po pierwsze nie wiem dokładnie jakiego czujnika używasz ale zakładając że jest to DS18B20 to za mały czas dajesz na konwersję 100ms po drugie - dokonujesz weryfikacji 1wverify Dsid1(1) tzn chcesz odpytać konkretny czujnik na magistrali więc podajesz do sprawdzenia jego numer Dsid(1) - a skąd on się u ciebie miał niby tam wcześniej znaleźć? jeśli...
No to zaczynamy po raz kolejny. Coś takiego jak stworzyłeś to niestety za szybko nie będzie działać. Mega z kwarcem rs 14 z groszami działa naprawdę szybko i można zrobić bardzo dużo w jedna sekundę. Do odbierania i wysyłania danych można sobie napisać własną procedurę - nawet w bascomie i jest ona sporo szybsza i działa rewelacyjnie. Deklarujemy przerwania...
mam nadzieje ze to ktoś czyta :) While raczej nie będzie działało bo jest źle zastosowane... Może coś takiego: do waitus 10 loop until UCSRA.TXC=0 srawdzę w domu... PS zastanawiam się czy to ze nikt nie odpisuje to wynik mojego geniuszu czy głupoty
Witam i proszę o wyrozumiałość ,to moje pierwsze, totalnie pierwsze podejście .Mam problem chce zbudować przełącznik kilku pozycyjny i utknąłem ktoś podpowie jak to rozwinąć $regfile = "m16def.dat" Config Porta = Output Porta = &B11111111 Config Portc = Input Portc = &B11111111 Do If Pinc.0 = 0 Then Porta.7 = 0 If Pinc.1 = 0 Then Porta.6 =...
Jak masz ustawione fuse bity? Po za tym dlaczego te 2 linijki masz jako komentarz? '$regfile = "m16def.dat" 'rejestry mikrokontrolera atmega16 '$crystal = 8000000 'częstotliwo.ć taktowania mikrokontrolera
A moze to nie jest kwestia Bascoma tylko tego ze Atmega nadal chodzi na wewn. oscylatorze 1MHz. Z objawow by tak wynikalo ze tak wlasnie jest. Przestawiales fusebity na prace z zewnetrznym kwarcem ?? Pozdro Dexter
Witam! Potrzebuję zastąpić nietypową klawiaturę w maszynie. Dopiero zacząłem bawić się Bascomem i AVR. Podłączyłem do Atmega16 klawiaturę od PC i LCD. Napisałem program oparty o wbudowane polecenia Config Keyboard. Kody klawiszy naciśniętych odczytuje poleceniem getatkeyb, getatkeybraw. Wszystkie potrzebne klawisze juz umiem odczytac i wysterowac potrzebne...
"zasilanie dla przetwornika" nie do końca wiem o co chodzi?? Czy to piny na przeciwko zasilania tz. AVCC GDN??
Witam serdecznie! Co znaczą znaki zapytania przy odbiorze i odczycie danych z PCF8583, przy godzinach minutach i sekundach , błąd komunikacji? Jak w ogóle powinien zareagować układ co powinien wyświetlić przy pierwszym poprawnym odpaleniu? Dzięki :)
Witam Przekopałem całe forum manuala i mam kłopot bo nie znalazłem odpowiedzi na moje pytania. Polecam Ci , jeszcze jeden manual : [url=http://pierwszeliceum.bedzin.pl/ftp... Opis i zasada działania TIMER1 w ATMega16 , rozpoczyna sie od strony 23.Jeśli zrozumiesz - a powinieneś...
Metod rozwiązania jest wiele ale wystarczy zastosować odpowiedni algorytm lub korzystać z tabeli przeliczników by dowolnie kształtować charakterystykę wyjść PWM
Skoro kolega chce zliczać Timerem 2 opadające zbocza impulsów, to na którą nóżkę M16 podaje kolega te impulsy? Przeglądałem opis wyprowadzeń i nie widzę tam wyprowadzenia T2.
Można bazować też na tutorialu na atmega8... Jest nieco więcej chyba tutoriali na ten uC... Oczywiście trzeba się zapoznać z dokumentacją do mega16 bo konfiguracja portów jest inna... Pozatym drastycznych różnic niema... Co do języka to bascom faktycznie jest nienajlepszy i chyba nawet nie warto się w niego pchać... W miarę dobrze znam C a asembler...
Dopiero jak się wgra bootloader, jeśli go brak trzeba przez ISP.
Porównuj etapowo. Najpierw dzień i jeśli się zgadza to potem minuty itd.
Dokładnie tak jak masz napisane, z tym, że konfigurujesz jeden z timerów do dliczania czasu. Przykładów w Bascomie z obsługą timera znajdziesz bez liku.
Witam ! Wyłącz JTAGa. Pozdrawiam. Stefan
Panie Piotrku (Zumek)... Obecny :wink: Proszę o więcek danych , a najlepiej o załączenie kodu źródłowego i wynikiwego (BIN lub HEX).Wtej chwili , pracuje u mnie wyświetlacz 16 * 2 , którym steruje program oparty na proponowanej bibliotece. Piotrek
Standard 5V, czytnik wysyła kod ciągle po zbliżeniu transpondera i przestaje wysyłać po oddaleniu go, "wpisać na sztywno" miałem na myśli spisać w program jeden transponder (zmienna, może jakaś tablica) i porównywać to z odczytem, o do zamieszczenia kodu lub schematu to wolał bym napisać na nowo cały program, atmega działa na 100%, Kwarc mi nie robi...
Zainteresuj się funkcja Printbin oraz podziel dane na osobne bajty.
Nie potrzebny jest tu timer. Poczytaj o pięknej funkcji Bascoma jaką jest PULSEIN. Jak ogarniesz tą dyrektywę to oniemiejesz z zachwytu.
Nie każdy posiada na stanie chyba :)
Nie działa to znaczy co dokładnie się dzieje?
Ja to robię dokładnie tak samo tyle że nie używam do tego celu timera. Mam w układzie PCF-a i on generuje mi przerwanie co 1 sekundę i w tym przerwaniu sobie zliczam czasy. Oczywiście po naciśnięciu klawisza zeruję zmienną czasu. Dodano po 1 Jeśli nie potrzebny ci dokładny czas powrotu to możesz zrobić tak: If Pinx.0 = 1 Then Incr Y If Y = 10 Then Y...
A mnie właśnie działa bez problemu z BASCOMEM, mam impulsator od kuchni mikrofalowej i jest OK. Jak chciałem zrobić na przerwaniach to liczył cuda. Więc dałem sobie
Witam, na poczatku chcialbym uprzedzic ze moja zabawa z uP zaczela sie b. niedawno :) Moj problem polega na tym, ze chcialbym uruchomic modem gsmowy na tej atmedze. Jednak mam pewne problemy z komunikacja. Ktos poradzil mi, zebym zwarl tx i rx po wyjsciu z max232 zeby sprawdzic ustawienia transmisji (odbior - wysylanie). I faktycznie uczynilem tak jak...
dzieki za odpowiedz a czy jesteś w stanie mi napisać co będzie się działo np. gdy będe miał 4 alarmy aktywne i dwa alarmy bedą z parowane z diodami które muszą być włączone dopóki ktoś nie naciśnie reset-u a na lcd etykiety musza w miare płynnie wskakiwać dopóki alarmy są aktywne??? z góry dzieki
Proszę bardzo, masz tu program który obsługuje impulsator. Cha Alias Pind.2 Chb Alias Pind.5 Config Cha = Input 'wej.kanał A encodera INT0 procesora Config Chb = Input 'wej.kanał B encodera Config Pind.4 = Output 'wyjście + Config Pind.3 = Output 'wyjście - Config Pind.6 = Output 'sygnalizator impulsów LED Config Int0 = Falling Const Debouncetime =...
Witam Ustaw 4 jedynki. Pozdrawiam
Właśnie cały problem w tym, że program główny ma co robić i nie jest pustą pętlą.. Temperatura musi być stale kontrolowana choćby dlatego aby włączać wentylatory (jest to wzmacniacz) lub reagować np wyłączaniem zasilania.. Dlatego zależy mi aby działało to poza programem głównym.. I pomijając estetykę programu... Czemu to nie chce działać? Co ma odczyt...
Witam, nie mogę sobie poradzić z uruchomieniem scalaka max31855 w współpracy z atmega16. nota : http://datasheets.maximintegrated.com/en... z tego co mi wiadomo układ max31855 miał być zamiennikiem poprzedniego układu max6675 ale niestety coś u mnie nie za bardzo. na początku do odczytu chciałem wykorzystać sprawdzony kod który działa w...
w wersji 1.11.9.5 jest już waitms ze zmienną, a waitus dopiero w wersji 1.12.x.x
Bascom powinien mieć do tego funkcję ABS() (nie sprawdziłem, dostępna jest w większości języków).
napisaalem program i dziala idealnie na symulatorze bascoma , jak przenosze go do Atmega16 to niestety juz nie dziala , skompilowany plik otwieram w Pony Prog obslugujacy programator stk200/300. Czy mial moze ktos podobny problem i jak go rozwiazal? Poprawiłem tytuł i przeniosłem do właściwego podforum http://www.elektroda.pl/rtvforum/topic10...
Poprawione sa przyciski ale mrugania temperatura nie ma
To jest niemożliwe. Jak PCF jest odpowiednio skonfigurowany to po prostu generuje sygnał co 1s. Nie raz a stale- dopóki ma zasilanie. Czy ma podtrzymanie bateryjne i odpowiedni układ diod? Kondensator przy zasilaniu? Za diodami? Późno, jutro do pracy. Daj cały kod- można by go sprawdzić.
Instrukcja Sound kiedy trzeba.
bascom atmega16 atmega16 eeprom atmega16 ds1820
toyota corolla akumulator prostownik dławik głośnik pudło obliczyć
toshiba 32l4353d toshiba 32l4353d
Regulacja gaźnika w pilarce Oleo Mac 937 - śruby L i H Błąd Oxc19a0002 w drukarce HP 3525 - Rozwiązania