No przecież prosto. Konfigurujesz timer1 do pracy w normalnym ale nie robisz start timer. robisz przerwanie dzialajace na zbocze np. narastające-> Dalej : robisz zmienną flaga w przerwaniu robisz if flaga=1 then start timer1 flaga=0 else stop timer1 w rej od timera masz czas... kopiujesz gdzie Ci tam pasuje flaga=1 zerujesz licznik endif I tyle, oczywiście...
mała podpowiedź było troche błędów w Twoim programie i przeczytaj co dopisałem wyżej odnośnie pull up [syntax=basic4gl]'----------------------... '--------------------KONFIGURACJA-------... $regfile = "m8def.dat" 'informuje kompilator o procesorze $crystal = 8000000...
Mam już gotową płytkę, impulsy z obrotomierza kieruję na ICP tak jak zasugerował tmf. I teraz pytanie do Was czy pomożecie w pisaniu programu, żeby odpalić obsługę tego ICP ? Obecnie mój program wyglada tak: [syntax=vb]'--------------------KONFIGUR... $regfile = "m16def.dat" 'informuje kompilator o pliku...
Jest tego sporo, DCF77, 7 x DS18B20 i DHT11 ( akurat jeśli chodzi o niego to mam wątpliwości, czy ten kod działa, bo jest na obydwu płytkach podpięty i zdarza się zawieszenie ) Nadajnik Atmega328p Dodano po 16 Odbiornik Atmega644P - trochę zmieniłem obsługę przerwania, wydaje mi się, że w przerwaniu nie powinno się wykonywać dużych obliczeń. [syntax=basic4gl]...
$crystal = 8000000 $regfile = "M16def.dat" $hwstack = 128 Tu zmieniasz wg wlasnych parametrow '- deklaracja zmiennych dla usart ---------------------------------------- Dim Index As Byte 'kolejny znak w buforze odbioru Dim Odebrano As Bit 'flaga ustawiona po odebraniu znaku Dim Buf(10) As Byte 'bufor wejsciowy - 10bajtow '- konfiguracja...
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 bez problemu ) [syntax=basic4gl] $include "Config_AVR-DOS.BAS"...
Masz rację na forum jest to tylko cześć okrojonego programu. Wklejam składowo pełny program, wyciąłem tylko poszczególne obliczenia. Może teraz będzie coś więcej wiadomo co może być przyczyną. [syntax=vb]'--------------------KONFIGUR... $regfile = "m16def.dat" 'informuje kompilator o pliku $crystal = 8000000...
Jak dam dword to kompilator wywala mi blad niechce sie skompilowac...dlatego dawalem word i moze przez to niedzialalo. Pozniej sprubuje tylko na zaplonie pobujac i sprawdzic. Ale dziwne bo nawdr gdyby tam raz na jakis czas spadlo do 4L to srednia nie wyszla by 4L. Musialo by byc przez 10 pomiarow okolo 4L. Wrzuce tez pelny kod bo teraz pisze z kom....
Poopuszczałeś trochę, a do tego literówki i dlatego wyrzucało błędy. Ten program kompiluje sie poprawnie. $regfile = "attiny2313.dat" $crystal = 11059200 $hwstack = 32 $swstack = 10 $framesize = 20 'DEKLARACJA ZMIENNYCH I PROCEDUR Dim Flaga As Bit , Flaga1 As Bit Dim Wylacz As Byte , Znak As Byte , Adres As Byte , Licznik As Byte Dim Znak1...
Wracajac do tematu czy moglbym prosic przynajmniej o pseudo kod obslugi przykladowo drgania w przyciskach , wysterowania przekaznika np przez 2s oraz komunikacji 1wire jednym timerem (atmega8 ma az 2 timery wiec pewnie szybko skoncza sie jego mozliwosci chcac napisac kod bez zatrzymywania) Cały dowcip polega na tym że z tego 8 bitowego timera możesz...
Przerwania PCINTx wykonują się przy każdej zmianie stanu logicznego, niema możliwości konfiguracji np. tylko dla zbocz narastającego lub opadającego. Stan zbocza na poszczególnym pinie sprawdzasz w przerwaniu. Attiny13 ma 6 pinów PB.0-PB.5 (PCINT0 do PCINT5) które mogą wywołać przerwanie. I tu jest jedna myląca rzecz :) dla tych pinów jest tylko jeden...
Jak używasz jakiejś bardzo starej wersji spolszczonej to możliwe, ale Demo2075 już nawet to potrafi. Możesz użyć Twojej poprzedniej konfiguracji z Load Timer, ale dodaj ustawianie tej flagi 5ms w przerwaniu.
Nie wiem czy dobrze ustawiłem dim'y Wyswietlanie,Trybprzycisk, Trybpomocnicza1 mają być Byte ? W takim układzie przyciski będzie zczytywało co 4ms, ale co z odświerzaniem LCD co 100ms i 1sek ? Aha i gdzie mam określić port przycisku PORTA.7. [syntax=vb]$regfile = "m16def.dat" 'informuje kompilator o pliku $crystal = 8000000 'informuje kompilator o częstotliwości...
Następnym razem napisz jaki mikrokontroler i z jaka prędkością jest taktowany. Problemem może być to że chcesz coś wyświetlać w procedurze obsługi przerwania. Lepiej unikać takich sytuacji. Pewniejszym rozwiązaniem będzie ustawienie tylko flagi w przerwaniu i szybki powrót z niego. Potem w programie zająć się wyświetlaniem kiedy napotkamy flagę. Druga...
Program Trawiarki PCB przerobiony nie działa nie daje się kompilować Schemat http://obrazki.elektroda.pl/5213318500_1... Wejścia przełączników podłączony do portd.3 i portd.4 oraz wolny portd.5 chcę wykorzystać do załączenia pompki do napowietrzania po osiągnięciu temperatury 35 stopni oraz załączania oświetlenia miejsca trawienia. [syntax=vbnet]'*************...
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 za pomoc: [syntax=basic4gl] '************* Konfiguracja...
Przetestuj ten. Tak go poopisywałem, że aż mi się nie podoba :D [syntax=basic4gl]$regfile = "m8def.dat" $crystal = 8000000 $hwstack = 40 $swstack = 16 $framesize = 32 '# wyświetlacz 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 Cls '# timer ' 8000000Hz(8MHz)/256(Prescaler)=...
Dzięki za zainteresowanie. Reszta programu to w tej chwili praktyczne konfiguracja pinów i zmiennych, oraz pętla główna programu: wait 1, zapal drugą diodę, wait 1 zgaś diodę - tak abym wiedział że program w ogóle działa... Kwart ustawiony oczywiście na zewnętrzny i potwierdzony - bez kwarcu nie działa. Pętla główna też potwierdza dobre działanie i...
Tu tez jest mały problem, ponieważ w chwil wystąpienia przerwania, na lcd musi być to zakomunikowane, wiec uznałem ze tam należy to wstawić, wait jest tam po to by mrugał napis " NOT-AUS AKTIV ! “ zobacz jak to można zrobić bez tych dziwacznych wait w procedurach przerwań: '************ konfiguracja ... ... Dim Flaga as Bit Flaga = 0 Config Int0...
Nie bardzo się mogę połapać w dokumentacji ATMegi8. Chcę ustawić timer1 jako 8 bitowy FastPWM (non-inverting), z porównaniem do OCR1A i wyjściem na OC1A. W PDF'ie jest podana konfiguracja rejestrów, np. WGM13:0 = 15 ale zupełnie nie wiem jak to mam odczytywać... przecież WGM13 to jeden bit (flaga) w rejestrze TCCR1B, jak mam mu przypisać wartość 15??...
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 ATmege8 i okazuje się że teraz program działa trochę...
Witam Piszę do was bo nie mogę rozpracować histerezy w poniższym kodzie programu. Program działa prawidłowo ale jest mały problem. Histereza zawsze działa, a raczej jej brak (załączanie i wyłączanie) działa równo przy 30 stopniach. Potrzebuję aby histereza była ustawiona na 5 stopni. Proszę pomóżcie mi wyeliminować ten problem. Program musi mieć funkcję...
Witam po raz kolejny pojawił się problem z moim programem otóż chcę aby kiedy wzrośnie temperatura i będzie wyższa lub równa zadanej to serwo obraca się w prawo poczym się zatrzymuje następnie kiedy temperatura będzie niższa od zadanej wtedy serwo obraca się w lewo i zatrzymuje się. [syntax=basic4gl] '************* Konfiguracja uC *****************...
Witam Moja Atmega 16 wiesza się w pętlach Uszczenianie i Paletyzacja poniższego programu: 'Listing programu obsługującego symulator procesów. Program został napisany ' i skompilowan w programie BASCOM-AVR 1.11.9.8. $regfile = "m16def.dat" 'określenie typu procesora $crystal = 8000000 'określene szybkości zegara 'Watchdog Wdtcr = &B00011111...
Więc po kolei... 1.tak w tym kodzie jest błąd :) ale w programie go nie ma ponieważ nie kopiowałem tylko pisałem w poście od nowa. 2.na moja wiedzę flaga jest zerowana w momencie skoku do przerwania a nie w momencie powrotu z niego.... w momencie skoku zerowana jest flaga wystąpienia przerwania i zerowana flaga globalnego zezwolenia przerwań. W momencie...
Witam! Jak wspomniałem, mam drobny problem z odbiorem sygnału lasera. Mianowicie mam w sumie wgrany taki oto kod: '---------------------------------------... REJESTRY I CZESTOTLIWOSC ZEGARA $regfile = "m8def.dat" $crystal = 8000000 '---------------------------------------... KONFIGURACJA LCD Config Lcd = 16 * 2 Config Lcdpin = Pin...
Tak, są to znaki NULL (o kodzie ascii 0). Są na pewno nadawane, ponieważ mam jednocześnie uruchomione dwa odbiorniki - jeden podłączony do mikrokontrolera, drugi przez przejściówkę USB-UART do komputera. Wszystkie transmisje obserwuję jednocześnie w terminalu i w urządzeniu odbiorczym. Kombinuję i kombinuję... Doszedłem do takiego rozwiązania: [syntax=basic4gl]...
Dlatego następnym razem należy jasno i wyraźnie opisać Swoje intencje. I już dwa błędy są w tym programie: 1. Deklaracja częstotliwości: FastAVR = 16MHz, Bascom = 8MHz. Programowo zauważalna ale tu nieistotna. Sprzętowo zaś bardzo ważna, bo cykl przyjęcia przerwania będzie 2x krótszy. 2. Konfiguracja przerwań po ich włączeniu. Nie ważne, że Enable Interrupts...
Witam kolegów mam taki problem: mimo różnych prób nie mogę ustawić na portd.0 stanu 1. Oto kod: Konfiguracja portów: [syntax=basic4gl]Config Pinb.1 = Output Config Pinb.2 = Output Config Pind.0 = Output Config Pind.1 = Output Config Pind.2 = Input Portb.1 = 0 Portb.2 = 0 Portd.1 = 0 Portd.0 = 1[/syntax] Obsługa portu: [syntax=basic4gl]If Grzalka = 1...
niezależnie kiedy odczyta powinno wyzwolić w jednym i tym samym momencie czyli na sygnał pochodządy z int Pod warunkiem, że flaga przerwania od Int0 nie jest ustawiona, w przeciwnym przypadku wykona się natychmiast. Nie wiem czy taka konstrukcja: disable int1 --->wyłącz przerwanie end if Return ---> rzeczywiście wykonuje się RETI, które kasuje flagę...
Mam problem ze zliczaniem czasu przez timer w układzie PCF8583. Na starcie programu ustawiam timer: I2cstart I2cwbyte 162 I2cwbyte 0 'rejestr kontrolny I2cwbyte &B00000100 'alarm aktywny I2cstop I2cstart I2cwbyte 162 I2cwbyte 8 'rejestr kontrolny timera I2cwbyte &B01000010 'zapis rejestru alarmu 'odmierzanie sekund ' włączony alarm timera I2cstop I2cstart...
Jest taki sobie termometr - moduł ma BT222 podłączany przez złącze http://obrazki.elektroda.pl/1320347600_1... Wgrywam do niego kod Bascom: [syntax=basic4gl] $regfile = "m8def.dat" $crystal = 4000000 '$baud = 9600 ' predkość transmisji $hwstack = 64 ' rozmiar stosu sprzętowego $swstack = 24 ' rozmiar stosu programowego $framesize = 48...
Witam! Przeczytałem sporo na ten temat i w wypowiedziach kolegów wszystko jest proste - a nie zawsze jest dla początkującego. Napisałem: odbiór RC5 w pętli głównej a drugi programik: odbiór w przerwaniu INT0. Pierwszy działa znakomicie a drugi niestety daje wynik 255. Oto kod 1: [syntax=basic4gl][/syntax] 'kody rc5 w pętli głównej $regfile = "m8def.dat"...
Witam Jestem w trakcie robienia zagara nixie ze strony http://mirley.firlej.org/zegar_nixie Mikrokontrolerem jest Atmega8 a wkład zrobiony na Bascomie. Potrzebuję dodać opcję chwilowego wyłączenia lamp, w celu zabezpieczenia lamp przed zatruciem. Bardzo proszę o pomoc. To kod: '************* Konfiguracja uC ***************** '***************************************...
Timer0 włączam na początku przy konfiguracji '********** Konfiguracja Timer0 Config Timer0 = Timer , Prescale = 1024 Enable Timer0 On Timer0 Czas w programie głównym '************ sterowanie czasem jasnością podświetlania LCD If Flaga_lcd = 0 Then Ocr2 = 80 End If If Enter = 0 Then Ocr2 = 200 Flaga_lcd = 1 End If później mam program Timer0 Czas:...
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,...
Witam wszystkich. Borykam sie od paru godzin z funkcją ELSE. Otóż w programie, gdy ADC wykryje napięcie mniejsze od 3.35V, wtedy ma pojawić się tekst "naladuj" i ikonka pustej baterii. Po wykryciu podpiętej ładowarki ma się wyświetlać tekst "laduje" i ikonka baterii z piorunem. Próbuję na różne sposoby z funkcją ELSE i prawie jest ok. Prawie dla tego,...
Witam Mam płytkę sterującą dwoma kanałami PWM - przez ULN oraz MOSFETY. Płytka ma dwa wejścia oraz wejście czujnika PIR - INT1. Ma przede wszystkim sterować włączaniem taśmy LED 12V z czujnika PIR ( oprócz tego z drugiego wejścia ). LED włączona przez PIR ma docelowo świecić określoną ilość czasu ( zależną od natężenia światła ) i się wyłączyć. Żeby...
Zrobiłem se coś takiego, ale nie działa tak jak powinno Jeżeli Pind.0 i Pind.1 są wejściami to konfiguracja portu 'D' winna wyglądac mniej więcej tak: [code][syntax=basic4gl] ................. Config Portd = 124 'Pd.0 i Pd.1 jako wejścia Portd = 127 'podciągnięte ................ [/syntax] Przewidywana żywotnośc EEPROM jest ok. 10 000 wpisów. W twoim...
Doszedłem do takiego stanu. '****KONFIGURACJA PROCESORA**** $crystal = 4000000 $regfile "attiny2313.dat" $lib "mcsbyte.lbx" '****KONFIGURACJA PORTÓW**** Config Portb = &B11111111 Portb = &B11111111 Config Portd = &B1111000 Portd = &B1111111 Config Rc5 = Pind.2 '****KONFIGURACJA ZMIENNYCH**** Dim I As Byte Declare Sub Wprawo Declare...
Ten program jest przepisany z Nowego Elektronika. Wszytko się zgadza. Nie da się skompilować. Proszę umieszczać kod w znacznikach syntax . Opcja Listing kodu .
Witam wszystkich pisze ponieważ mam problem z obsługą wyświetlacza w moim układzie wyświetlacz 2x8znaków Programuje układ w Bascomie Avr mam pytanie dotyczące opcji konfiguracji wyświetlacza a opcjach Bascomu nie mam tam wyboru wyświetlacza 2x8znaków i jeszcze jest tam opcja konfigurowania portów procesora potrzebnych do komunikacji z wyświetlaczem...
A więc tak : Konfiguracja( mam 4 uarty i pokażę to na czwartym): Config Com4 = 19200 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0 Config Serialin3 = Buffered , Size = 200 , Bytematch = 13 'Enter=13 Config Serialout3 = Buffered , Size = 50 Config Input = Cr , Echo = OFF 'CR= 13 Open "COM4:" For Binary As...
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 , Prescaler = Auto , Reference = Avcc 'ustawianie przetwornika AC...
Stos OK. Mówię Ci. Skasuj flagę przed "Enable INT1". Generalnie kolejność mam w kodzie taką: Config Int0 = Falling 'opadajace zbocze wywoluje przerwanie Config Int1 = Falling 'opadajace zbocze wywoluje przerwanie Config Timer0 = Timer , Prescale = 8 'konfiguracja Timer0 jako timera z preskalerem przez 8 'Przerwanie od przepelnienia Timer0 jest generowane...
Witam Chciałem do kuchni wstawić czujnik PIR, ale z dodatkową zaletą, czyli stopniowym zwiększaniem i zmniejszaniem PWM, dodatkowo jeśli podczas zmniejszania PWM nadejdzie przerwanie INT1 od czujnika PIR, to program ma przestać zmniejszać, tylko zacząć zwiększać i to nie od zera, ale od wartości na której "zastało" go przerwanie INT1 od PIR. W sumie...
Witam, Nie mam zamiaru wykłucać się co jest w HELP BASCOMA a czego nie. W błąd zostałem wprowadzony właśnie przez bascom więc i nie sprawdzałem w nocie producenta (mój błąd). No ale po to jest to forum, żeby ludzi małodoświadczonych (jak ja) wyprowadzać z błędu. Dzięki Piotr Takich "kwiatków" w Bascomie jest dużo więcej :( Np. A w BascomieAVR polecenie...
Pisze sobie program i mam problem z jedną sprawą, niby trywialną bo chodzi o przyciski. Na pewnym etapie program ma zapisać wartości z ADC do eepromu po zwolnieniu przycisku (sygnał z przycisku pochodzi z transoptora), więc musi to byc jednorazowa pewna reakcja. Przyznam, że dopiero niedawno wziałem sie z programowanie i mam jeszcze pewne problemy nawet...
Muszę wprowadzić zmiany w programie aby zamiast wyświetlaczy segmentowych użyć lcd. Czy jest z tym dużo pracy? [syntax=basic4gl]'************* Konfiguracja uC ***************** '***************************************... $regfile = "m8def.dat" $crystal = 8000000 Config Portb = &B00000000 : Portb = &B11111111 Config Portc = &B11111111...
Witam Chciałem sterować roletami przeciwsłonecznymi za pomocą pilota. Przetestowałem pare programów i schematów w sieci odnośnie nadawania i odbierania w RC5. Dobrałem pilota który działa tylko z jednym programem który był w książce "Programowanie mikrokontrolerów AVR w języku Bascom" Pytanie jak przerobić ten program by po naciśnięciu klawisza np 1...
To czekamy na prezentację jak już wszystko będzie działać :) Prezentacja na pewno będzie jak już wszystko złożę w całość. Jak na razie w wolnych chwilach pomiędzy zajęciami staram się dopracowywać wszystko na płytce stykowej. Zaobserwowałem dziwną rzecz. Atmega po kilku przejściach programu (czyt. po kilku uaktywnieniach ledów z czujnika) samoistnie...
Witam Ja osobiście zrobił bym to porządnie czyli z urzyciem przerwań, bez żadnych podprogramow, korzystając z etykiet. Ponizej przedstawiam przykladowy kod. Mogą być w nim literowki gdyż pisałem prosto z palca bez kompilacji: '************* Konfiguracja uC ***************** '***************************************... $regfile = "m8def.dat"...
Starsza wersja: Enable Interrupts 'Deklaracja procedury obsługi przerwania od TWI On Twi I2c_check 'Konfiguracja sprzętu 'Wyświetlacz LCD Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , E = Portb.5 , Rs = Portb.4 Dim Status As Byte ' Status operacji na magistrali odczytywany w przerwaniu Dim...
Sporo tego ( obsługa SD, PCF8563 + menu do ustawiania daty, obsługa PCF8574 w przerwaniu INT1 )- ale nie ma problemu - zmieniła się tylko zawartość podprogramu Pomiar była taka, jak w pierwszym poście oraz wyłączyłem w wyświetlanie na LCD tych wartości wskazań z DS18B20, oczywiście dostosowałem pozycje wyświetlania do LCD 4*20 - załączniku spakowany...
Kolego neo_84 Sprawdziłem Twój program , jest zagmatwany jakiś taki nieczytelny. Powinieneś maksymalnie opisywać kod ,a poszczególne odrębne funkcje umieszczać osobno aby jak najbardziej program był czytelny nie tylko dla Ciebie , ale i dla innych elektroników (to bardzo pomaga!) Podam Ci szkielet kodu jaki ja stosuję przy multipleksowaniu i odczycie...
Witam Atmega328 i Attiny2313 przez RS485 Atmega328 Master - zapis na razie wyzwalany przez Timer If Flaga_001 = 1 Then Set Re_de Waitms 1 Print "MOD001 " ; Chr(13); Waitms 1 Reset Re_de Flaga_001 = 0 Licznik_mod001 = 0 End If ATtiny2313 Slave $regfile = "attiny2313.dat" $crystal = 8000000 $baud = 4800 '*********************...
Witam. Mam prośbę do kogoś kto zna Bascom'a lub przerabiał program z kitu AVT5341 do współpracy z drugim skrzydłem bramy. Nie znam się na programowaniu a potrzebuję zmodyfikowaną wersję wsadu do procesora. Wg autora: Modyfikacje programu ograniczą się do: – zmiany konfiguracji pinów PC0…PC2 z wyjść na wejścia A/C; – nadania pinom PD2...
A czy mógłbym prosić o jakiś konkretny przykład? Albo poprawić ten: Config Timer0 = Timer , Prescale = 1024 On Timer(15) Gosub procedura 'czekaj 15sec. Timer On Do Loop End Procedura: Cls Lcd "ok" Waitms 500 Return Nie wiele tu mozna poprawic bo od poczatku do konca masz bledny koncept pracy z timerami. Po pierwsze: w konfiguracji wartosc 'Prescale'...
Load Timer0 = 144 ............... Jeśli tak napiszę kod w Bascom przy zastosowaniu kwarcu 7.3728 MHz to przerwanie odmierz_1s będzie faktycznie co 1 jedną sekundę? Tak jak to miało miejsce w przypadku kwarcu 8000000 MHz (patrz mój pierwszy post w temacie) Minął ponad rok od założenia tego tematu, ale teraz muszę to już zastosować w praktyce i w końcu...
Witam Mam płytkę z Atmega8 połączoną z czujnikiem PIR ( wejście INT1 przez transoptor ), do tego pomiar ADC ( od wartości adc zależy czas po jakim PWM będzie zmniejszone, opcjonalnie chcę też pod INT0 podpiąć przycisk, coby włączyć światło, gdybym nie znalazł się w zasięgu czujnika. Dodatkowym "bajerem" jest to, że światło ( listwa LED ) powoli się...
Witam, miałem na zaliczenie zrobić jakiś projekt z wykorzystaniem mikrokontrolera AVR, jako ze miałem tak mało czasu jak doświadczenia to zrobiłem działający projekt ze strony '************* Konfiguracja uC ***************** '***************************************... $regfile = "attiny2313.dat" $crystal = 16000000 Config Portb = &B11111111...
Witam Robię sterownik do bramy, przerobiłem kod "pod siebie" Sterownik steruje silnikiem, lewo, prawo, sprawdza jaki prąd pobiera silnik i wyłącza go gdy prąd będzie za duży. Funkcja która porównuje wielkość prądu to: If Rez >= Pot_max Then ..... Problem jest w tym, że silnik na starcie pobiera za duży prąd i trzeba by wstrzymać wykonywanie tej funkcji...
Miałem dokładnie ten sam problem ale szybciutko go rozwiązałem :) W moim urządzeniu (to nie brama ale jeździ w te i we wte) sprawa wygląda następująco: obie krańcówki spięte są równolegle i podłączone do jednego portu - chciałem nieco uprościć konstrukcje i oszczędzić jeden port. Wykrywanie kierunku nie jest problemem, bo definiuje to program i zaznacza...
Ok po kolei, wywalam wszystko z programu, zostawiam tylko sterowanie IR i dopisuję obsługę przerwania INT1 wyzwalanego zboczem FALLING, w przerwaniu dodaje lub odejmuje jeden od zmiennej "impulsy" zależnie od zmiennej "ścisk" zmienna impulsy jest zwiększana o kilkanaście a nie tylko o jeden $regfile = "m8def.dat" $crystal = 8000000 Config...
Witam Odświeżę wątek. Dodałem układ UDN2981A pomiędzy Atmege a wyświetlacze, wyrzuciłem tranzystory które sterowały anodami oraz ich rezystory z baz. Działa całkiem nieźle. Jest jedno ale... jasność. Steruje to takim kodem: [syntax=basic4gl] '************ Zegar 6 wyswietlaczy LED + PCF8563 $regfile = "m32def.dat" $crystal = 8000000 $hwstack = 64 ' rozmiar...
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ę (więc wynik od razu w Hz). Po upływie sekundy ma...
Program poprawiłem, ale dalej jest problem z drugim timerem tzn. działa tylko z TIMER0 , działa klawiatura, funkcja rozpędzania wirnika. włączenie drugie timera wiesza program. Zamieszczony program (tylko z TIMER0) działa fizycznie. [syntax=vbnet] $regfile = "m2560def.dat" $crystal = 16000000 '$sim '***************************************... Config...
Rozebrałem układ i wygląda on tak: http://images39.fotosik.pl/152/052ac899b... Kod programu (w części dot. USART): $regfile = "m16def.dat" $crystal = 8000000 $hwstack = 128 $swstack = 128 $baud = 19200 '- zmienne uart ----------------------------------------... Dim Buf(200) As Byte 'Bufor odbioru danych...
Tak też robię :) Wszystko się zgadza oprócz tego, że nie sprawdzam przerwania po I2C. Kwestia jest taka, że ten zegar generuje przerwanie jednokrotnie, więc w obsłudze przerwania w procesorze trzeba ponownie ustawić pewne flagi by zegar wygenerował kolejne przerwanie za sekundę i tak w kółko. Problem w tym, że nie wiem czemu po pewnym nieustalonym czasie...
Witam wszystkich, Tak jak w temacie: Poszukuje sprawnego programu aby zrobić zegar LCD na ATMEGA8. Program musi być w języku bascom. Znalazłem coś takiego ale nie działa :/ Opoźnienie sekundy wynois jakies 4s 'Program zegara wykorzystującego przerwania od Timer1 'Przerwanie przepełnienia Timer1 jest generowane co 1 s '8 MHz/256/31250 = 1 s 'Przycisk...
Witam Napisałem program, który dekoduje sygnał DCF77 ( ustawia flagę ), następnie zapisuje ( przy pierwszym uruchomieniu ) wartości zmiennych do PCF8563 i cztery razy na dobę wysyła przez RS485. do tego dwa razy na dobę koryguje czas w PCF8563. I to działa bez problemu. Do celów testowych mam podłączony LCD. Chciałem dołączyć możliwość pomiaru i wysyłania...
Witam, jeszcze proszę praktyczne rozwiązanie takiego problemu, gdyż program jest praktycznie ukończony, ewentualnie drobne poprawki kosmetyczne:), ale w obecnej wersji odczyt i zapis wykonywany jest z poleceniem "wait", przez co wskazywane temperatury nie są czasem poprawne - wyskakuje BRAK ds'a. Już nie mam pomysłu jak to zrobić, proszę tylko o jakieś...
Na tej stronie z linku na dole znalazłem taki kod: '**************************** 'Konfiguracja '**************************** $regfile = "attiny2313.dat" $crystal = 12000000 Config Portb = &B11111111 : Portb = &B11111111 Config Portd = &B11111111 : Portd = &B11111111 Config 1wire = Pind.5 Config Timer0 = Timer , Prescale...
Oto kod programu: '************* Konfiguracja uC ***************** '***************************************... $regfile = "attiny2313.dat" $crystal = 16000000 Config Portb = &B11111111 : Portb = &B11111111 Config Portd = &B00000000 : Portd = &B11111111 Config Timer0 = Timer , Prescale = 8 Enable Timer0 : On...
Witam, drogich forumowiczów. Mam problem z komunikacją kilku urządzeń w sieci rs485. A tak prawdę mówiąc to z komunikacją pomiedzy dwoma, jednym "master" i jednym "slave". Normalnie staram się zadawać pytania w ostateczności na forum Elektroda, ale po prawie 3 tygodniach siedzenia przy problemie, przeglądaniu masy poradników i postów związanych z rs485...
Witam, Projektuje sobie urządzenie które w zasadzie będzie zegarem, ale z kilkoma funkcjami. Chodzi mi o to że np. o godzinie 12 w południe chcę aby na jednym z pinów procesora pojawił się stan wysoki do np. godziny 13. Zegar programowo jest ok, odlicza czas, wszystko jest na LCD, nie wiem tylko jak zrealizować te ustawiane godziny. Prosiłbym żeby mnie...
Witam Poniżej załączam kod, który ma sterować wyświetlaniem informacji na LCD oraz zmianą koloru podświetlania. Niestety po upłynięciu czasu ( różnie, czasem kilkanaście minut, czas kilka godzin ) procesor zawiesza się i na LCD wszystko się zatrzymuje. Wstawiam tylko część kodu którą obsługuję RC5, gdyż jego usunięcie ( ale pozbawienie obsługi RC5 )...
Witam jest dość początkującym w dziedzinie programowania i potrzeba mi połączyć tak aby na jednym wyświetlaczu pojawił sie zegar i licznik impulsów z halotrona jako obrotomierz zegar: $regfile = "m8def.dat" 'informuje kompilator o pliku 'dyrektyw mikrokontrolera $crystal = 8000000 'informuje kompilator 'o częstotliwości oscylatora 'taktującego...
Ciekawy pomysł z przeniesieniem odczytu na początek- to sprawdzę. A Timera0 nie można zatrzymywać bo obsługuje coś jeszcze. Timer1 i 2 też są zajęte. Chyba się cholera udało- z jedną flagą :D : $regfile = "m8def.dat" $crystal = 8000000 '********* Konfiguracja wyświetlacza ********* $lib "Lcd4busy.lib" Const _lcdport = Portd Const...
Witam, na początek dodam że dopiero zaczynam z Bascom'em. Mam problem w przepisaniu programu z ATTINY2313 na ATMEGA8. Oryginalną wersję zamieszczam poniżej: '************* Konfiguracja uC ***************** '***************************************... $regfile = "attiny2313.dat" $crystal = 16000000 Config Portb = &B11111111 : Portb...
Witam serdecznie jako że jestem zielony w temacie programowania Mikro kontrolerów prosze was o pomoc w przerobieniu programu lub jakichś podpowiedziach jak sie za to zabrac. Chciał bym by lampka świeciła w płynnie zmieniających się, losowo ustalonych kolorach od razu po włączeniu zasilania. wiem który fragment odpowiada z to ale nie rozumiem w ogóle...
Widzę że nie ja jeden mam problem z odbiorem danych z ds-ów a wszyscy je polecają hm w zamian można dać jakieś np. Lm35 tylko nie wszystkie mają ujemną temperaturę i są droższe. Będę miał jutro czas to posiedzę jeszcze nad tym programem mam nadzieje że dam rade, w razie czego tu jeszcze napisze. Mam książkę M.Wiązania bardzo fajna właśnie fragmenty...
Czy Kolega będzie może wiedział co jest nie tak od strony programistycznej ? Tzn. jeśli wyświetlam stałe wartości to jest ok, podobnie jak wyświetlam w pętli For... Next od 1 do 59. Dodałem jeszcze obsługę LCD, żeby widzieć, co się dzieje z czasem. Ale jak podepnę do tego PCF8563 i odczytuje czas z niego, a dopiero później wysyłam do SAA1064 to jest...
Witam Ostatnio nie mialem za duzo czasu zeby usiasc do tego projektu ale teraz mam :) Hmm... sprawa przedstawia sie tak: mam wpieta przejsciowke USB->RS232 system widzi jak jako COM2 mam do niej program napiany w C++ #include <windows.h> #include <stdio.h> #include <iostream> using namespace std; int main(int argc, char** argv)...
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 na komputerze, jak i na wyświetlaczu pojawiają się...
Odgrzebuje, bo mam podobny problem ze swoim układem, jak koledzy: Schemat układu zamieszczam poniżej, układ zgodny z książką: "Programowanie mikrokontrolerów AVR w języku BASCOM". Program też zgodny z listingami z książki. http://img259.imageshack.us/img259/7086/... (Odnośnie schematu, jest dołączony zewnętrzny rezonator 8MHz -nie zaznaczone...
Tak właśnie mam tak zrobione. Ale wolałbym jednak móc podawać ID czujnika do odczytania do funkcji np tak: Declare Function Myfunction(Byval I As byte) As string Z = Dsid1(1) ' ID czujnika 1 T = Myfunction(z) Function Myfunction(byval I As Byte ) As String 1wreset 'Resecik 1wwrite &H55 'Będzie odpowiadało tylko urządzenie...
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] $regfile = "m644def.dat" $crystal = 14745600...
janbernat --> tak na pierwszy rzut oka to w tym rozwiązaniu do obsługi klawiatury nie ma jednak żadnego mechanizmu eliminacji drgań styków i stąd może być to wrażenie, że niepewnie się przełącza itp moim zdaniem. Zobacz, naciskamy klawisz - rozpoczynają się drgania (zawsze występują prawda?) u ciebie od razu na pierwszy sygnał drgania styku reaguje...
Witam. Borykam się z problemem odbioru sygnału w podczerwieni. na razie prosty program obsługi kodu RC5. Schemat układu zamieszczam poniżej, układ zgodny z książką: "Programowanie mikrokontrolerów AVR w języku BASCOM". Program też zgodny z listingami z książki. http://img259.imageshack.us/img259/7086/... (Odnośnie schematu, jest dołączony...
Witam! Potrzebuję pomocy przy budowie pewnego urządzenia, miałoby ono przy uruchomieniu czekać na komendę z pilota i zapamiętać ją. Przy następnym użyciu pilota mikroprocesor powinien porównać odebrany kod z zapamiętanym i w przypadku zgodności przejść do dalszych działań. Wymyśliłem coś takiego: $regfile = "m8def.dat" $crystal = 8000000 Config...
na każdym który napiszę jest tak samo, w nowym temacie powyżej podałem ustawienia fuse bitów, zaraz wkleję kawałek na którym teraz się bawię Dodano po 4 to kod na którym teraz się bawie '***************************************... '-------------------- konfiguracje ----------------------------------------... $regfile...
Witam. Jestem początkującym w dziedzinie programowania na elektronice znam się dobrze. Chciałbym zbudować komputer pokładowy do mojej hondy civic i znalazłem na elektrodzie projekt z pod tego linku. http://www.elektroda.pl/rtvforum/topic22... Płytkę zaprojektowałem na nowo pod atmege128 reszta bez zmian. Wyświetlacz od Siemensa s65 ls020 podłączyłem...
Witam W oparciu o projekt Kolegi _Duch - rejestrator pogodowy zrobiłem swój ( na razie prosty ) rejestrator. Wykorzystałem podane w wątku pliki config_mmc.bas i Config_AVR-DOS.BAS . Na płytce testowej EVB 4.3 v.4 . Podłączenie z SD standardowe. Niestety nic się nie zapisuje na karcie SD ( próbowałem 2 Gb Kingston i 1 Gb Sandisk - formatowane na FAT...
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 Pind.7 = Input 'MAX Config Pinb.6 = Input 'Suchobieg Config Pind.1 = Input 'Start Config Pind.0 = Input...
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 czujniki DHT11 - odczyt z PCF8574AP w przerwaniu ( klawiatura )...
Witam Wiem, że temat przycisku jest mocno nadwyrężony, ale ... Program ma jednym przyciskiem przy dłuższym przytrzymaniu zwiększać i zmniejszać wartość wyjścia PWM ( na zmianę ) lub przy krótszym włączyć/wyłączyć, czyli pwm1a = 0 lub pwm1a = 255. Każda z tych funkcji osobno działa ok, ale razem działa tylko włącz/wyłącz przy krótszym przytrzymaniu W1,...
Witam W ramach dalszego eksperymentowania z AVR i Bascom popełniłem połączenie odczytu z DS18B20 z sterowaniem wyjściem uC ( przez tranzystor FET ) + dodatkową atrakcję - buzer, który sygnalizuje wł/wył tranzystora/wyjścia. Chciałem dodać możliwość zmiany temp max i min, przez proste menu. Menu zrobiłem w oparciu inny mój kod obsługujący ustawianie...
Heh wierz mi, czy nie... napisałem to... i byłoby wszystko ok, gdyby nie to, że nadpisywałem przykład z "Samples" w program files... i już było napisane klikam save i co...? Bascom zdechł a wraz z nim plik zniknął... (Zapomniałem, że vista nie pozwala szarakom na dotykanie P.Files...)... Także sorry nie mam siły drugi raz tego pisać... Dodano po 8 No...
Po co ciągle konfigurować tego ESP? Mojego skonfigurowałem raz. Teraz jak podłaczę do niego terminal to po włączeniu/resecie sam loguje sie do mojego routera. Sam pisze, że WIFI CONNECTED i WIFI GOT IP Czyli dokąd nie zmieni się sieci WiFi to nie trzeba konfigurować, ewentualnie po otrzymaniu WIFI GOT IP można zapytać jeszcze o IP - "AT+CIFSR", no...
flaga bascom bascom flaga bascom konfiguracja
reset tuszu epson rotor silnika compressor supreme
radzio modbus dobór dławików kompensacyjnych
Instrukcja obsługi i serwisowa Hyundai N71S – manual, schemat, typowe usterki monitora FAAC 740 – programowanie pilota XT2, XT4, XR2-433, SLH, dodawanie pilota MASTER