1) jeśli używasz przycisków to zawsze podłącz go tak aby przyciśnięcie zwierało nóżkę portu do masy czyli do -. To naprawdę ułatwia sprawę i zawsze działa 2) dobra praktyka - przyciski, jumpery itp podłączaj do pinu procesora przez rezystor np 180 omów. Chodzi o to że kiedyś możesz się pomylić, ustawić pin jako wyjście, dać na nim 1 czyli napięcie +...
instrukcja Pinx.y służy do odczytu stanu portu natomiast Portx.y do ustawienia stanu na porcie
Jak napisać program termostatu w BASCOM dla mikrokontrolera ATmega8 z czujnikiem DS18B20? Przykładowy kod, konfiguracja i sterowanie elementem wykonawczym.
A Twój program nie chce działać? Jaki jest problem. To co w programie masz nieprawidłowo to odczyt stanu przycisku. Procedura odczytu przycisku powinna przewidywać takie sytuacje jak drgania styków lub przypadkowe zakłócenia na linii przycisku. Jedną z możliwość odczytu przycisku jest: [syntax=basic4gl]If Wejscie = 0 Then Waitms 100 If Wejscie = 0 Then...
Zmień schemat: Przyciski podłącz do masy, elektrolit zamień na ceramik 100nF a diodę podłącz przez rezystor do zasilania a katoda do uc. Program: $regfile = "attiny2313.dat" $crystal = 1000000 ddrb =&B11111100 PORTB = &B00000011 ddrd =&B11111111 PORTD = &B00000000 do if pinb.0 =0 then waitms 100 portd.0 = 0 end if if pinb.1 =0 then waitms...
[syntax=basic4gl]while a=1 x++ if x==100 zapal led if x==200 zgas led x=0 waitms 5 wend zgas led[/syntax]
tak, teraz te 2 przypisania odnoszą się do Timera 1 i wyprowadzeń oc1a i oc1b, więc poprawnie zakładając, że konfiguracja uwzględnia tryb 10-bit, czyli: Config Timer1 = Pwm , Pwm = 10, Compare A Pwm = Clear Up, Compare B Pwm = Clear Up, Prescale = 1
Dawno nie pisałem w Bascomie, ale myślę że na końcu każdego podprogramu musisz dać return. Inaczej program idzie w następne etykiety. A u ciebie jest tylko na końcu ostatniej .
1.Konfiguruje się PORT 2.Podciąganie do plusa włącza się w PORT 3.Przyciski czyta się z PIN Sterować można PORT`em a sprawdza się PIN [syntax=basic4gl] Config PORT.x = Input 'nie podłaczamy driverow - port bedzie wejsciem PORT.x = 1 'sterujemy portem, podłączamy wewnętrzny rezystor Przycisk Alias PIN.x ' PIN PIN PIN PIN! [/syntax]
Napisz podprogramik migniecia dioda i wywołuj go po każdym warunku sprawdzającym czy jest wciśnięty przycisk.
Problem powoduje używanie waitms. Podczas wykonywania waitms procesor pracuje tak jakby w pętli do..loop i nie reaguje na nic. W zasadzie nie powinna być używana. Rodzi więcej problemow, a wcale nic nie ułatwia. Zastosuj timer do sterowania diodą zamiast waitms.
Witam Jestem nowy na forum i w temacie mikrokontrolerów. Mam płytkę Evb 4.3 v4 na procesorze Atmega644p (duży sprzęt jak na początkującego, ale lepiej kupić raz a lepiej). Czytałem trochę na temat programowania w BASCOMIE na stronie http://www.dioda.com.pl/forum/topics20/k... (kopiowałem sobie programiki...
A ile maksymalnie możesz (chcesz) policzyć bo np: przy kwarcu 12Mhz taktów zegara po 10s jest 120 000 000, taktów maszynowych 10 000 000. Widzisz, że liczby robią się dosyć poważne wiec ten LCD musi mieć dużo miejsca do wyświetlenia. Do liczenia najlepiej użyć timera w trybie 16bitów. Za każdym razem jak policzy do końca wiesz że taktów zegara było...
Chodzi Ci o zapalanie diody stanem niskim? Musisz ustawić kierunek pinu na wyjście i wpisać do niego 0. Tylko tyle:) P.S. Sprecyzuj, czy chodzi Ci o zapalanie diody, czy obsługę jakiegoś przycisku, po naciśnięciu którego dioda ma się zapalić.
Najprościej coś takiego: 1. pętla czeka na naciśnięcie przycisku 2. zmiena stanu diody led 3. pętla czeka na puszczenie przycisku 4. idź do pkt1 PS obie pętle muszą jeszcze dodatkowo mieć wprowadzone opóźnienia w celu debouncingu przycisku.
Witam mam takie pytanko jak napisac w bascomie avr aby np po nacisnieciu chwilowym (wyłacznik niestabilny) zapaliła się się dioda zaś po przytrzymaniu przucisku przez około 5 sekund zapaliła druga dioda ?
Witam ! Źle ! Do Set P1.7 WAIT 0.5 Reset P1.7 Loop Kod na miganie jednej diody powinien wyglądać tak: $regfile = "89c2051.DAT" ' tę linię można zadeklarować w opcjach $crystal = 8000000 ' tę linię można zadeklarować w opcjach do set p1.7 waitms 250 ' 250 to chyba max w Bascomie 8051 waitms 250 ' 2x250ms około 0,5sek reset p1.7 waitms 250 '...
To pokaż jak ustawione są fusebity po ich przeprogramowaniu przez ciebie, (może zrzut ekranu z MkAvrCalculator) po wciśnięciu żółtego przycisku "Sprawdź podłączony AVR" w zakładce programator - ok?
Tak. Tak. Tak. Tak.
Jeżeli przyciski masz do VCC, to todaj rezystory od pinów do masy (10...100k). Dodano po 7 W pierwszym programie pomyliłeś porty. Portb ustawiłeś jako wejście a tam podłączyłeś diodę. Portd ustawiłeś jako wyjście i tak podłączyłeś przycisk.
Witam Mam problem z odczytem zwyklego przycisku na tej atmedze. podlaczenie: gnd +rezys 10k+port.d=2 nastepnie podaje przyciskiem +5v na port.d2. kod: config PORTD.2= input config pinb.5=output set PORTD.2 . . Do if PIND.2=1 then waitms 30 if PIND.2=1 then Toggle pinb.5 end if end if loop Przycisk zapala diode ale jej nie gasi w/g mnie nie wraca do...
Załadowałem do symulatora i program DZIAŁA! A symulator w BASCOMie to wyrocznia? Wiele moich programów działa na hardware a symulator się wysypał... A tak poza tym, skoro symulator działa to poszukałbym błędów w połaczeniach fizycznych. Nie wiem jaka masz wersje BASCOMa, ale może zamiast CALL BUZKA daj CALL SUB BUZKA. I może zacznij od standardowego...
tak jak w temacie chciałem zrobić tak żeby po naciśnięciu przycisku zapala sie dioda :P i niewiem jaką komendą to mam zrobic Pomocy
rozwiązałem mój problem. w przykładach Bascom GETRC5 jest tam linijka: Command = Command And &B10111111 doszedłem po długich testach do tego, że u mnie musi to wyglądać tak: Command = Command And &B01111111 nie wnikałem dlaczego tak się dzieje! pilot działa raczej w RC5 bo mogę nim sterować też drugi TV w innym pokoju (NEPTUN) w oryginalnym pilocie...
sam impuls nie będzie miał jakiejś dużej szybkości maksymalnie 300 impulsów na sekunde , natomiast ważne jest możliwie najmniejsze opóźnienie pomiędzy "nacisnieciem przycisku " a "zapaleniem diody"
i odrazu po wait'cie daj ponowne sprawdzanie przycisku czy jest wcisniety
Stawiam na brak podciągania wejść przycisków.
Jak podciągniesz wszystkie wejścia do '+' to masz dla nich jedynkę. Nie napisałeś żadnego warunku, co się stanie jak jest "1", więc nic się nie zmienia: If Pind.0 = 0 Then Portb.0 = 0 ;tutaj dla "zera" If Pind.1 = 0 Then Portb.0 = 1 ;tutaj tez dla "zera" Ponieważ piny są podciągnięte do "1", żaden z tych warunków się nie wykona, czyli nadal będzie "0"....
Na pasku narzędzi symulatora wciśnij przedostatni przycisk (rączka wskazyjąca na kartkę). W konfiguracji portu z zer zmień na jedynki (zero - wejście, jedynka - wyjście)
zapewne tak tez bedzie działać, udalo mi sie z tym poradzić tyle że ja użylem komendy toggle, ale dzieki za pomoc:) If I3 >= 270 Then ' jezeli temp i3> 600 to... If Flaga2 = 0 Then Lowerline Lcd " !!PIEC!!" ; Ss ; Chr(0) Sound Speaker , 329 , 63 ' nuta dzwiekowa Sound Speaker , 369 , 99 ' nuta dziwekowa Portb.2 = 1 'zapalamy...
Mam pytanie do kolegi bo nie wiem na jaki procesor chciał podłączyć te przyciski AVR czy 8051 bo jak ten drugi to podana funkcja toggle nie istnieje dla 8051 trzeba zanegować bit portu przy pomocy NOT początek taki sam jak kolega Adamusx podał powyżej tylko w ciele funkcji if musi znaleźć sie zanegowany bit portu na który jest podpięta dioda.
Ciepło, ciepło :) Na początek selekcje najlepiej umieść jako podprogram wywoływany z pętli głównej - w sumie może być razem z podprogramem "Wlacz:". W pętli głównej natomiast zastosuj jakieś opóźnienie zrobione w nieblokujący sposób - możesz się oprzeć o rozwiązanie jak [url=http://www.elektroda.pl/rtvforum/vi... które...
Działanie programu: Naciśnięcie przycisku S1 będzie zmieniał stan diody D1 na przeciwny, naciśnięcie przycisku S2 będzie zmieniał stan diody D2 na przeciwny. Program: $regfile = "m8def.dat" $crystal = 1000000 Config Pind.0 = Input Config Pind.1 = Input Config Pind.2 = Output Config Pind.3 = Output Led1 Alias Pind.2 Led2 Alias Pind.3 S1 Alias Pind.0...
Uuuupsss a jak to się stało, że tego nie zauważyłem ?????? Trzeba ubierać okulary. :D Ale to i tak delikatne tłumaczenie, ja znam wersję z fu...... zamiast F :)
Czyli która to nóżka przy GND 10k? Ta do której masz podłączony przycisk S1
Odpuść sobie BASCOM, jak już coś robiłeś w Bascomie to czas na przesiadkę na C. A jak nie to tym lepiej, nie będziesz miał złych nawyków. A tak poważnie, jak zaczynasz przygodę z mikrokontrolerami, obojętnie w Bascomie czy w C czy ASM, zacznij od najprostszych rzeczy, jak np sterowanie diodą LED, stanu przycisku. Inaczej zajedziesz się od razu i stracisz...
Witam. Można tak: $regfile = "attiny13.dat" $crystal = 1200000 Config Portb.3 = Output Config Pinb.4 = Input set pinb.4 reset portb.3 do if pinb.4=0 then do Set PORTB.3 Wait 1 Reset PORTB.3 Wait 1 Loop end if Loop W pętli odczytujesz stan przycisku i jak będzie niski zacznie migać.
diody na D a przycisk na B
1. rezystor wywalić - przyciski bezpośrednio do GND 2. diody odwrotnie (obydwie) 3. w kodzie (część konfiguracyjna) uaktywnić wewnętrzne podciąganie do Vcc PIND5 i PIND6 (PORT.X = 1 : DDR.X = 0) 4. no i oczywiście zmienić interpretację przycisków w programie na przeciwny stan Pozdr, Light-I
Czy aby na pewno masz dobrze ustawione bity w rejestrach ? Sprawdzałeś np. za pomocą diody wyjście INT ?
hmm no dobra w takim razie obadam motyw z dioda, zeby sie upewnic na 100%
Przyciski na pb2 pb4, wyjście na pb1, wyjście idzie na bramkę buz11, dren do wiatraczka, źródło do masy, równolegle z wiatraczkiem wpięta dioda anodą do drenu, katoda diody i druga noga wiatraczka idzie na +12V:) Polecam się:) P.S. nie chce mi się tego rysować:) Aha no i 8MHz kwarc:)
To pytanie na szybko odemnie, czy "config Pinb.0 = input : Portb.0=1" spowoduje ze do portu nie trzeba dodać rezystora aby działał z przyciskiem?
If P3.3 = 0 then Wait 5 'To czas trzymania przycisku, po którym zaświeci się LED if P3.3 = 0 then Led = 0 End If P: If P3.3 = 0 then Goto P Else Led = 1 End if Za Led wstaw konkretną końcówkę do której podłączyłeś diodę - świeci jak końcówka = stan niski. Przycisk zwiera końcówkę P3.3 z masą. P. S. Nie wiem czy składnia jest zgodna z Bascom 8051...
Led Alias P ort b.1 Przycisk Alias P in b.2 I wszystko jasne. Dioda do Vcc przez 470 ohm, przycisk do masy.
Sprawdziłem właśnie powyższy program i działa na zasadzie zapalenia diody przy włączeniu i gdy nacisnę i trzymam switch PD.0 zwarty do masy to dioda gaśnie, zapala ponownie się po puszczeniu switcha. Podłącz diodę w odwrotnej polaryzacji, będziesz miał odwrotny skutek... Zdaje się że o to ci chodzi. Robisz próby statyczne z przyciskiem, to tak mniej...
Możesz podłączyć poprzez rezystory bezpośrednio do portów, tylko trzeba pamiętać, że diody mogą wziąć 20mA i to teoretycznie pin ma wytrzymać, ale też chyba nie można brać więcej niż 100mA na cały port. To tyle teorii a w praktyce to sam sprawdzisz i pewnie procek to zniesie. Wprowadziłbym jednak pewna optymalizację. Wyświetlacze podłącz do portów PB...
Fnkcja LOAD robi przeliczenia za ciebie. Jeżeli użyjesz Timerx = y to będziesz musiał sam poodejmować. Najlepiej przenieś zmianę stanu portu do przerwania, a w pętli głównej daj tylko wyświetlanie i obsługę przycisków.
Jakiś użytkownik też miał z tym kiedyś problem, rozwiązał to w taki sposób: Pinb.0 = 0 ' pin RW Waitms 100 Initlcd Nie sądzę, że jest to potrzebne, gdy pin został skonfigurowany w config lcdpin . Co z tą częstotliwością? W symulatorze raczej jest podany czas wykonywania kodu (sprawdź bez $sim ). Nie podałeś, jaki masz kod, ile się wykonuje na mikrokontrolerze,...
a ja bym to zrobił na przerwaniu. podpinasz wszystkie przyciski przez diody do jednego z wyprowadzeń (int0) i po problemie ;-)
Po zgaszeniu diody dodaj oczekiwanie na zwolnienie przycisku
Pisałem abyś wszystkie diody LED połączył przez rezystory do +5V , a Ty tego nie zrobiłeś ? Mam rację ? Dziękuję za 10, nie trzeba było. GG6293398
Witaj, powiem tak, niewiele nauczysz się zlecając komuś pracę. Jeżeli urządzenie ma służyć do nauki to może spróbowałbyś je sam wykonać. Ja polecałbym Ci zacząć od prostych rzeczy, jak np wykonanie płytki(jakiś starter kit na avr'ce) lub coś prostszego znalezionego w sieci. Potem zacząć pisać proste programiki jak np migająca dioda, obsługa przycisku,...
W stanie rozwartych przycisków układ nie posiada połączenia z masą czyli prąd nie popłynie przez kontroler czyli kontroler nie działa. Przy wciśniętym przycisku diody również skutecznie zapobiegną umownemu przepływowi prądu w kierunku masy czyli kontroler również nie działa. Zaiste skąd taki pomysł, że to zadziała? Może lepszym rozwiązaniem byłoby normalne...
Dzięki, o ile dobrze zrozumiałem, celem kodu o który zapytałem jest usunięcie informacji o dłuższym przytrzymaniu przycisku. Czyli po wciśnięciu i przytrzymaniu "dłuższy czas przycisku 1 na pilocie dioda sama zmienia stan na 1 i potem 0 i tak w kółko..."
Witam. Jestem poczatkujacy w zwiazku z czym prosba. Mam prosbe odnosnie napisania programu pod ATMELA np. 89C52, gdyz taki posiadam obecnie. Zalozenia: -Dwa przyciski ( S1 i S2) -12 diod -Porty dowolne -Po przycisnieciu niech nie wykonuje kolejnej czynnosci, dopiero po zwolnieniu przycisku i ponownym kliknieciu Program mialby dzialac nastepujaco: -Kazde...
Użyj przerwania timera do migania diodą, a najlepiej do wszystkiego (czyli również do sprawdzania stanu przycisków).
To nie zadziała bo każde zmniejszanie PWM o 1 będzie trwało ponad 5 sek , czyli zgaszenie diody będzie trwało ponad 20 godzin.
Pętla była gdy ta dioda miała migać, ale ponieważ nie migała więc postanowiłem napisać prostszą wersję tylko by wygasić diodę czyli ustawić stan wysoki na PB1 (Przycisk=1 albo inaczej PINB.1=1).
Witam Robie pierwsze kroki w programowaniu w języku bascom. Stanąłem przed problemem zdefiniowania w tym języku pewnych warunkowych komend dla procka atmega8. Jeśli ktoś może mnie nakierować to z góry dziękuję. O to moje problemy: 1. Konkretnie chodzi o to by układ reagował np poprzez zapalenie diody led w chwili gdy przycisk podłączony do tego układu...
Nie obsługę przycisków zrób w głównej pętli
Ponieważ jesteś zielony w temacie, to zacznij od książki w ZIELONEJ okładce, podanej na końcu :))) wyjaśni ci wszystko od początku. -Jaki mikrokontroler najlepiej kupić? Taki jaki jest potrzebny do konkretnego projektu. :)))) (żeby można było go programować bascomem AVR, żeby miał wbudowany oscylator, więcej niż 4KB pamięci,żebym mógł do niego alfanumeryczny...
witam. od jakiegoś czasu zacząłem sie bawić z AVR. Chcę zaprogramować w bascomie AT90S2313 tak, aby po nacisnięciu przycisku losował jedną z 12 diod, po wylosowaniu, gdy wciśniety zostanie przycisk diody powinny wracać do pierwotnego stanu (diody wygaszone), diody reaguja na stan niski i sa podpiete pod wszystkie porty prócz d0-przycisk, d4 i d5- kwarc....
Musisz przyjąć że pin normalnie jest wyjściem i steruje diodą. Co jakiś czas zapamiętujesz stan wyjścia, przełączasz na wejście, odczekujesz moment na ustabilizowanie się stanu na wejściu i pobierasz stan wejścia a następnie przełączasz port na wyjście i odtwarzasz jego stan z przed odczytu stanu przycisku.
Kolega napisał: "guzik", zwierany chwilowo do masy więc nie zostaje na 1. Faktem jest, że przycisk będzie działał odwrotnie.
A co nie chciało iść do przodu? Skoro już sięgasz po C tzn jest szansa abyś się jednak na niego zdecydował i to Ci właśnie proponuje - prędzej czy później i tak zmienisz język a najgorsze jest w tym to, że zmienisz go (bo będziesz zmuszony) robiąc już dość zaawansowane programy a po zmianie języka znów zaczniesz wszytko od początku czyli od zapalenia...
Podłącz tak 1745968800_1454575169|HF0m6G20JH ... i wrzuć ten kod Dioda powinna świecić tylko kiedy naciśniesz przycisk. [syntax=vbnet]$regfile = "m8def.dat" $crystal = 1000000 $hwstack = 40 $swstack = 16 $framesize = 32 '********* TUTAJ SOBIE USTAW JAK CI PASUJE ********** Pin_wyjsciowy Alias Portb.0 Przycisk Alias Pind.1 : Set Portd.1 '***************************************...
A moze moglbym otrzymac jakis schemacik i listing zebym sobie wklepal w bascomie np programik do zapalenia diody przyciskiem albo jakis innym dowolny sposob zebym byl pewien w 100% ze kablek jak i mikrokontorler sa sprawne? Nie przeczytałeś dokładnie tego wątku... Za karę :) poszukaj w nim linku w moim poście w temacie "Kurs Bascoma" (w większości...
Hej! Oto programik w Bascom-AVR. Jeżeli naciśniesz przycisk(portd.0) na mniej niż pieć sekund to zapli Ci się dioda(Portb.7), a jeżeli będziesz trzymał przycisk wciśnięty przez pięć sekund to przesunie Ci jedynkę po całym porcie b. Config Pind.0 = Input Config Portb = Output Dim I As Dim I=1 Program: Do If Pind.0 = 0 Then For I = 1 To 5 Wait 1 If Pind.0...
Nie rozumiem po co dioda LED ukazująca stan nawiewu jest podłączona do osobnego pinu. Nie ma takiej potrzeby, a nawet jest to nie wskazane. Stan wejściowy pinu portu D, nawet kiedy w DDRD jest on ustawiony jako wyjście, można odczytać z rejestru PIND, natomiast wyjściowy z PORTD - tak, ten rejestr można również odczytywać. Nie programuję w Bascom, ale...
Wiem o tym, czytałem te wszystkie wywody na temat jaki to Bascom jest plugawy , ... Zastanów się młody człowieku co czytasz i piszesz. ... stąd też przy tym głupieję ( sam fakt, że muszę w tym Bascomie operować jest dość... ). :) ... ale nie mam wyboru - z przyczyn ode mnie niezależnych muszę go jakoś okiełznać... (a przynajmniej w stopniu podstawowym)...
1. Trzeba zdecydować się na język, w którym ma być napisane oprogramowanie; BASCOM, C++, ASM 2. Wstępne założenia sprzętowe; ilość diod; ilość przycisków sterujących 3. Algorytm działania zegarka Zobacz jak zrobiony jest na większym ATmega: http://www.elektroda.pl/rtvforum/topic64...
Witam. Poszukuję pomysłu na sterowanie jednym przyciskiem (docelowo odbiornikiem podczerwieni) zapalaniem diod. Tzn. chodzi mi o coś takiego: Wciskam przycisk Zaświeca się 1 dioda Wciskam drugi raz Zaświeca się dioda 2 a gaśnie 1 Wciskam trzeci raz Zaświeca się dioda 1 i 2 Wciskam czwarty gasną diody 1 i 2 Napisałem program do tego, ale nie działa prawidłowo....
Witam. 1./ Jeżeli definiujemy piny jako wejście najlepiej używać instrukcji config pinb.0=input ' przycisk pierwszy config pinb.1=input ' przycisk drugi config portd.0=input ' pin sterujący diodą LED 2./ Podłączenie przycisków do plusa zasilanie tak jak w tym kursie jest złe. przyciski powinny być podłączone do masy. Po prostu przycisk po wcisnięciu...
Osobiście też już nie pisze w Bascomie ale robisz błędy które łatwo wychwycić. Na pierwszy ogień zapomniałeś o pull-upie. Po za tym jak już opóźnienie to w warunku(eliminacja drgań). Do autora tematu: popraw schemat bo nawet rezystorów nie dałeś do diod.
Może jest to spowodowane drganiami styków klawiszy? Spróbuj przylutować kondensatory(1nF-100nF) równolegle do przycisków. U mnie takie coś pomogło. Pozdrawiam Yakuza
Tak jak sam napisales jest to przerwanie programu obojetnie w ktorym momencie, to do tego sluzy takie cos jak "przerwanie" int0/1 Uzyj wyszukiwarki i helpa do bascom, a o wszystkim sie dowiesz.
Jestem początkujący i zmagam się z poznaniem reguły if w programie bascom. Niby wszystko jasne ale przychodzi co do czego to nie działa prosta regułka włączania przyciskiem, diody. Dodam, że robie to na atmega 32. Wczesniej robiłem podobne reguły na atmega8 i takich problemów nie miałem. Co wiec w poniższej regule jest nie tak? $regfile = "m32def.dat"...
Dzień dobry. Kompilator przecież pisze o co chodzi :D Zamiast "jeśli przycisk = 0" napisałeś "jeśli przycisk = Duża litera O" Brakuje też przecinka przed Right. http://obrazki.elektroda.pl/7581088600_1... Poniżej film z uruchomionej symulacji :D https://filmy.elektroda.pl/100_144731640... Miłego dnia. P.S. Do Gunslinger - Myślę że...
Mam problem z zaprogramowaniem procesora, ściślej chodzi mi o napisanie programu pod niego w Bascomie . Jestem zielony w tym języku i proszę o podanie mi wyjaśnienia komend jakie w tym języku występują. Prydał by się kod źródłowy do jakiegoś prostego programu np. migacz led z jakimś tam przyciskiem po naciśnięciu będzie następowało najpierw miganie...
Masz błąd na schemacie. AVR nie mają pull-down, więc przycisk powinien zwierać z masą (minusem baterii). Program też nie wydaje się dobry, choć nie znam Bascom. Na moje oko trzeba tak: $regfile = "m8def.dat" $crystal = 8000000 Config Portb = Output Config Portd = Output Config Portd.4 = Input P Alias Pind.4 D Alias Portb.6 Set Portd.4 Do If...
Zdecydowanie jakis mniejszy mikrokontroler :) W bascomie można spokojnie takie cos napisać.
Sorry że takie pytania zadaje ale w sprawach uC jestem początkujący. Robiłem kiedyś samochody elektryczne ale bez takich mikrokontrolerów i stąd te pytania :). Do silnika tranzystory, a do innych rzeczy? Np. do diod, albo jakichś przycisków.
Dziękuje za szybką odpowiedź, jednak chciałbym pozostać przy rozwiązaniu że uP nie pobiera nic a nic w stanie spoczynku, chce by mój pilot był tak jak inne (zwykłe piloty od tv/radia itp) gdzie używamy tylko jednego przycisku.
W pętli głównej wpisz Debounce Pinb.0 , 0 , Zatrzymaj , Sub a na końcu programu po słowie End wpisz Zatrzymaj: Wait 2 Return Jak wciśniesz przycisk to program wskoczy do podprogramu gdzie zatrzyma się na 2 sekundy. Potem wróci do pętli głównej, w której będzie dalej migało diodą lub diodami.
Zacznij od timera - przerwanie z częstotliwścią np. 100 Hz, w nim testowanie przycisków i sterowanie diodami.
po pierwsze dodaj podciąganie do linii przycisków po drugie poczytaj nieco o timerach to wyeliminujesz wait'y i program będzie działał jak chcesz ;-)
http://obrazki.elektroda.pl/3094119600_1... W obliczu tego że przez dłuższy czas posiadałem kilka niepotrzebnych mikrokontroklerów Attiny2313 i dwa duże wyświetlacze LED postanowiłem je w jakiś twórczy sposób wykorzystać. W ten sposób wpadł mi do głowy pomysł na zbudowanie urządzenia przeznaczonego do przeprowadzania teleturniejów....
Jak napisać program w bascomie i jak wszystko połączyć do siebie żeby jak nacisnę przycisk [url=http://allegro.pl/item762862203_prz... to dioda się zapali i za 2 sec zgaśnie i cały układ się wyłączy.
Weź diodę LED. Anodę przez rezystor 680R podłącz do VCC, a katodę do PD1. Powinna mrugać z częstotliwością 0,25Hz.
Zrób tak żeby ci się dioda nie spaliła: http://obrazki.elektroda.net/42_12592744... Natomiast żeby się "mocno świeciła" przy sterowaniu procesorem, to w programie zrób w pętli: - odczyt (kilka taktów procesora), - ustaw 0 na pinie i delay 500 czy 200 ms. ps. ustawianie rezystora pull-up na porcie jest zbędne, i tak ci dioda na nóżkę podaje napięcie...
Mam wielką prośbę mianowicie: napisałem już wiele programów i wszystkie działały zgodnie z moimi oczekiwaniami (w symulacji programowej :) ), ale nigdy ich nie wrzucałem do procka, no i nadszedł ten sądny dzień kiedy to zbudowałem układ, ale za nic w świecie nie mogę sobie poradzić z obsługą pinów procka i tu moja prośba czy mógł by ktoś napisać najprostszy...
Z racji tego, że raczkuję w BASCOM potrzebował bym podpowiedzi od was jak zabrać się za funkcję która ma za zadanie: - zliczać impulsy z portu (INT0)PORTD.2 i przeliczać je na obroty (1 impuls = 1 obrót) - na wyświetlaczu LCD ustawiać za pomocą przycisku wartość obrotów przy których zapali się dioda LED (wartość ustawiana byłaby poprzez przytrzymanie...
W ogóle jak patrzę na ten kod to mam wrażenie że nie znacz poleceń shift i rotate. No nie znam, muszę zaopatrzyć się w jakąś dobrą książkę o Bascomie dla początkujących z przykładami. Internetowe kursy jakoś mi nie leżą. Układ zadziałał. Dopatrzyłem się swojego błędu. Źle podlutowana druga nóżka GND. Dziękuję wszystkim szukającym błędu. Ale mam kolejne...
"attiny13.dat" $hwstack = 32 $swstack = 18 $framesize = 8 ' tiny13 Dlaczego na samym wstępie wyrzuca mi błąd w liniach: Pwm1a = 0 Pwm1a = 0 Pwm1a = 255 czy nie można przypisać stałej wartości dla Pwm1a? Kolejne błędy są również powiązane z pwm1a. Oczywiście że możne jeżeli taka funkcja jest dostępna. ATtiny13 takowej nie posiada bo nie ma Timera1,...
mam schemat ale tutaj mi cos ten przycisk wstaw obrazek nie dziala:/ wyskakuje mi IOError. nie chodzi o lenistwo po prostu nie chce mi to dzialac
mój program oparty jest o 5 czujników - przycisków, które będą działały w tej samej kolejności od pierwszego do piątego. Wraz ze zmianą napisu na wyświetlaczu, pod układ jest podłączonych również 5 diód. Program tak działa, że do każdego czujnika- przycisku przypisana jest jedna dioda i w chwili gdy przycisk zadziała to dioda się zapala, a na wyświetlaczu...
W pętli czekaj aż przycisk zostanie naciśnięty, zrób co należy dla odpowiedniego przycisku po czym czekaj aż przycisk zostanie zwolniony. Unikniesz w ten sposób wielokrotnych operacji przy trzymaniu wciśniętego przycisku. Albo po wykonaniu poczekaj jakieś 0,5s wówczas diody zmieniać będą się co taki czas.
hmmm zastanowie sie na temat tego multipleksowania. Zobacze czy uda mi sie plytke zaprojektowac na ktorej by bylo dosyc miejsca na popodlanczanie diod do osobnych wejsc mikro. Co do uspienia gdy diody beda zmultipleksowane jest to mozliwe gdy diody beda sie zaplac na przycisk. czy jest mozliwosc uspienia porcesora w jezyku bascom?
Witam. Mam pytanie odnoście Bascoma, czy da się napisany program zapisać w procesorze attiny 2313 za pomocą programatora VP990 ( programator ten obsługuje takie układy)? Chcę się nauczyć pisać jakieś programy ( nigdy z tym nie miałem do czynienia) posiadam na zakładzie taki programator więc nie chciałem robić żadnych pająków do programowania przez Bascoma...
Jak zacząć pisanie kodu programu , który ma działać ..... 5 przycisków typu switch pierwszy załącza na stałe np ; diodę 1 , tym przyciskiem 1 mogę ją wyłączyć, jeśli jest załączona dioda 1 to drugim wyłączam pierwszą diodę a załączam drugą . Drugi przycisk działanie funkcji tak ja pierwszy i tak 5 przycisków W zasadzie to program już masz napisany...!...
przyciski diody bascom bascom diody bascom atmega8 przyciski
huawei gniazdo naprawa tda2030a zasilanie ciche pikanie
kamera cofania alternator rozładowuje akumulator
Canon drukarka miga pomarańczowa dioda, litera P EKOKONDENS CRYSTAL II PLUS - ustawienie temperatury CWU