Tak oczywiscie reset podciagniety. Okrojony do minimum program: $crystal = 7372800 $regfile = "m168def.dat" Config Aci = Off Config Lcd = 40 * 2 Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Portb.3 , Db6 = Portb.0 , Db7 = Portb.1 , E = Portb.4 , Rs = Portb.5 Config Timer1 = Timer , Prescale = 64 On Timer1 Timer1_int Config Pinc.4 = Input '...
Różnice w tych procesorach w skrócie: • Changes to Bit and Register Names • Changes to Interrupt Vector • Oscillators and Selecting Start-up Delays • Improvements to Timer/Counters and Prescalers • Improvements to the U(S)ART • Enhanced Watchdog Timer • Changes to EEPROM Writing • Programming Interface...
Zainstalowałem AVR Studio4 i lecę od początku z google i pdf na temat ASM i AVR Powiedzcie chociaż czy w dobrym kierunku zmierzam? Bo jak w złym to odpuszczam i daje sobie spokój, pobawię się migającymi diodami w Bascomie. Tam gdzie nie ma komentarza to nie wiem co to znaczy i co robi ale było w pdf lub innych opisach, jeżeli ktoś może mi wyjaśnić instrukcje...
Witam, piszę sobie program na A128 i nie umiem sobie poradzić z jednym problemem ... wykorzystuję instrukcję encoder jaka jest w bascomie do zliczania zmiennej LONG + - i jednocześnie dokonuję pomiaru napięcia V kod programu [syntax=basic4gl]'----------------------... 'name : BG30dB_LCD.bas 'copyright...
Zrobiłem aktualizacje do 2.0.7.6. Obsługuje bez problemu USBasp, no i biblioteki do SD faktycznie lepsze - obsługują SDHC i można np. sprawdzić rodzaj karty SD. Tylko zapisywany ciąg na karcie trochę inaczej jest. Zamiast spacji jest teraz "kropka" i cały tekst bardziej "zbity" w całość. Co do rC5 to nic się nie zmieniło, właściwie to gorzej bo pracuje...
Witam wszystkich Forumowiczow, do tej pory nigdy nie miałem potrzeby pisać postu bo wszystkie problemy rozwiązywałem opcja search ;-) az do tej chwili. buduje układ przetwornika AD 24 bitowego, ktory komunikuje sie z Atmega8 po SPI hardware a ta z kolei z moim PC po RS232. Docelowo maja byc 2/3 przetworniki, poki co jest jeden i walka trwa ;-) Całość...
Witam. Od jakiegoś czasu próbuje zbudować miernik głośności wyjścia słuchawkowego. Oczywiście wszystkie moje projekty jak do tej pory działają nie zbyt dobrze. pomyślałem że sięgnę po gotowca i znalazłem coś takiego: ----------------------------------------... 'name : BG30dB_LCD.bas 'copyright : (c)...
Cześć wszystkim ;) Pisze w sprawie takiej ze postanowiłem połączyć atmege32 i kartę microSD 2 gb i tu sie pojawiaja problemy a mianowicie program nie pokazuje mi pojemnosci karty niby inicjacja przebiega ok ale cos nie tak nizej wstawiam kod programu $regfile = "m32def.dat" $crystal = 8000000 $lib "Lcd-pcf8833.lbx " 'special color...
No to jest to czego szukałem. Tylko teraz pytanie: Dlaczego zawartość rejestru R0 to zawiera,a nie można odczytać z MCUCSR jak jest opisane w DSie?? edit Aaa już wiem gdzie robiłem błąd. Można odczytać WDRF moim sposobem tylko przed Config Watchdog, bo ta instrukcja czyści rejestr MCU(C)SR. Wszystko pięknie jest wyjaśnione w Helpie od wersji 2.0.1.0...
hmmm Przede wszystkim: Enable Interrupts On Timer0 Przerwanie Stop Watchdog Config Timer0 = Timer , Prescale = 1024 Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down , Prescale = 256 'PWM=250Hz Load Timer0 = 195 To włączenie przerwania jest wstrętne w tym miejscu:P Co do wniosków... może spróbuj zwiększyć stos o...
W przerwaniu INTx ustawić watchdog w tryb przerwania na czas około 1 sekundy i wrócić do power down. Po przerwaniu od watchdoga sprawdzić stan wejścia i podjąć odpowiednie kroki. PS. W attiny każde wyprowadzenie może wybudzić procesor. Lepiej używac pin change interrupt moim zdaniem.
$crystal = 8000000 Config Lcd = 16 * 1a Config Int0 = Falling Config Timer0 = Timer , Prescale = 256 Config Watchdog = 2048 Config Pind.0 = Input Config Pind.1 = Input Config Pind.3 = Output Config Pind.4 = Output Config Pind.5 = Output Dim Regulation_counter As Byte Dim On_off_flag As Bit Dim Regulation_type_flag As Byte Dim Int_counter As Byte Dim...
Czy czas wybudzania procesora nie będzie zbyt długi? W trybie IDLE wstrzymywany jest tylko CPU poprzez odcięcie sygnału zegarowego. Idle Mode When the SM2..0 bits are written to 000, the SLEEP instruction makes the MCU enter Idle mode, stopping the CPU but allowing SPI, USART, Analog Comparator, ADC, Two-wire Serial Interface, Timer/Counters, Watchdog,...
Jest kilka możliwości. Tak samo w Bascomie jak i w każdym innym języku/kompilatorze. Można uruchomić WATCHDOGa i odczekać w pustej pętli aż zresetuje, można połączyć dowolne wyjście mikrokontrolera z wejściem resetu i zresetować, gdy potrzeba. ? Niezupelnie, Watchdog - OK Druga alternatywa - NIE Owszem, RESET jest tez zewn. Interrupt ale nieco inny...
A czy to też nie działa : Config Watchdog = 16 Start Watchdog Disable Interrupts być może Bascom odblokowuje przerwania w starcie watchdoga?
Witam.Piszę soft który ma na celu obsługę kart SD i LCD od 6100.Samą obsługę LCD opanowałem (na atmedze8) jednak nie wiem czy SD będzie działać.Jako kartę wykorzystam m2 1gb (została po starym telefonie).Jak na razie nie mam dostępu do atmegi bo właśnie co ją spaliłem jednak pytam się o poprawność softu.Jak widać w sofcie brakuje jeszcze odczytywania...
Hmm... A co ma cena procesora do ceny In-circut debuger-a ? Procesory kupuje się wielokrotnie, a debuger raz, po za tym dla AVR istnieją tańsze, nieoryginalne wersje - sam JTAG, bez obsługi DebugWire, już za trochę więcej niż 100PLN (np. na www.propox.com ) - również na USB. ATmega8 - 7-9PLN, możliwości : • Advanced RISC Architecture – 130...
Próbowałem ustawić wyzwalanie zboczem FALLING instrukcjami Bascoma, oraz wprost w rejestrach. Nie dawało to nic. Nie wiem, czy dalej wyzwalało się poziomem, czy przyczyna była inna. Poniżej fragmenty programu, które według mnie są istotne. Może ma tu jakieś znaczenie fakt, że pin INT1 jest w trakcie przerwania zmieniany na wyjście i z powrotem na wejście....
Wiem ze w PHP operatory sa takie same jak w c, dlatego ucze sie C na uC, a nie np BASCOM'a ;] (choc C lepsze ;]). Dzięki za pomoc, teraz jest ok. Dodano po 14 A jednak nie, wystąpiła jeszcze bardziej komiczna sytuacja. Scislej: Gdy nacisne przycisk, do pamieci zapisywany jest czas wciscniecia, gdy w krótkich odstepach czasu nacisne kilka razy, mam po...
Zobacz jak ja to zrobiłem na Mega8 http://obrazki.elektroda.pl/8838731900_1... Program jaki zastosowałem korzysta z przerwania INT0 które po naciśnięciu klawisza wyprowadza procesor ze "śpiączki" , wysyła dane na IR i usypia go ponownie.Dla mnie takie rozwiązanie jest lepsze niż chwilowe zasilanie procesora poprzez diody. Poniżej wklejam...
Witam, Z tej stronki [url=http://mirley.firlej.org/node/1137]... dowiedziałem się jak obsługiwać moduły komunikacji radiowej RFM12B. Przykład nadanika: [syntax=vbnet]$regfile = "m8def.dat" $crystal = 8000000 '8MHz $hwstack = 70 $swstack = 70 $framesize = 160 '$noramclear Config Submode = New Config Watchdog = 512 '512ms Start Watchdog '---------Constants---------------------...
Czyli gdzie jest znak = ma być , ? wszędzie? Zegar mam na 8MHz.Już zmieniłem. Bit 103 jest na zero, watchdog na jeden zrobiłem tak $regfile = "m128def.dat" $crystal = 8000000 Config Pina.0 = Output Config Timer 0 = Timer , Prescale = 256 On Timer0 Odmierz_1s Dim Licz_8ms As Byte Enable Interrupts Enable Timer 0 Load Timer0 = 250 Do Loop End Odmierz_1s:...
http://obrazki.elektroda.pl/1899461000_1... Ostatnio zaprojektowałem na potrzeby dyskoteki switch DMX. Wykonałem 8 sztuk, jak na razie pracują bez zarzutu. Nie publikuję płytki, bo wymaga dopracowania, a nad publikacją wsadów i źródła się zastanowię. Co do PCB, to i tak zaraz dostaną mi się pewnie słuszne baty za zbyt małe odstępy części...
Witam, Bardzo proszę o sprawdzenie czy program jest poprawnie napisany. Nie korzystałem do tej pory z instrukcji Watchdog, więc nie mam pewności czy jest ona poprawnie umieszczona. Zadaniem programu jest stały pomiar napięcia i w razie wystąpienia spadku załączany jest przekaźnik na czas 2 minut. Jeżeli spadek będzie występował czały czas to przelaźnik...
programu nie wstawiłem bo nie wiem czy będzie potrzebny a jest strasznie pokręcony chodzi mi o samą zasadę dzialania coś porównane do czegos i nie wiem moze przypisane jakiejs innej zmiennej Troche haotycznie piszesz jaki to ma byc projekt. Z tego co zrozumialem, to potrzebujesz zrobic regulowany timer do kontroli czasu pracy i przerw silnika pedzacego...
Witam, mam sterownik który co kilka minut zapisuje w pamięci AT24c1024 jeden z 4 parametrów, są to 3 wartości typu Byte oraz jedna typu Word. Niestety raz na 1-2 dni występuje problem z zapisem, "zacina" się komunikacja i sterownik najczęściej zostaje zresetowany przez watchdog'a, jeśli wyłączę watchdoga sterownik przestaje reagować. Na magistrali jest...
Zrobiłem to tak: 'Odebranie jakiejkolwiek informacji z modułu GPS $regfile = "m16def.dat" $crystal = 8000000 $baud = 9600 Enable Interrupts Enable Urxc On Urxc Przerwanie_rx Config Lcd = 20 * 4 ' Wyswietlacz 20x4 Config Lcdpin = Pin , Rs = Porta.0 , E = Porta.1 , Db4 = Porta.2 , Db5 = Porta.3 , Db6 = Porta.4 , Db7 = Porta.5 Cls Dim Dana As...
(at)dondu Twoje artykuły czytałem dokładnie ;-) Z kodu poniżej wycięte ustawianie portów (bonie widziałem żadnej różnicy w zużyciu prądu). Procek ustawione fusami na 8MHz wewnętrzny z podziałem przez 8 [syntax=vbnet] $crystal = 1000000 ' ustawiamy prędkość zegara $baud = 9600 ' ustawiamy prędkość transmisji $hwstack = 220 ' ustawiamy wielkość stosu...
Odkopałem oniegdaj popularny BASCOM AVR z myślą o przygotowaniu prostej aplikacji Low Power na ATMEGA328p, plan jest taki by co 8s WATCHDOG interrupt budził uP z POWERDOWN czy POWERSAVE na chwilę by zwiększyć wartość zmiennej i iść dalej spać do czasu gdy wartość tej zmiennej da sumarycznie te 5 min wtedy wykona się docelowy program i tu pytanie jak...
Napisałem kod według Help-a. Zegar się wyświetla, kompilator nie zgłasza błędów, ale nie chodzi. W pomocy jest podane kilka procesorów z którymi ta instrukcja jest aktywna, jest tam też Mega32(3). Co oznacza te 3 w nawiasie to nie wiem. Jasno jest napisane że Timer uC musi posiadać tryb asynchroniczny. Czy ATMega32A go ma? W pdf-ie nie udało mi się...
Witam. Mam problem z prawidłowym odczytywaniem danych z eepromu atmega 8. Dzieje się to po kilkunastu startach procesora, zamiast np. 90 wskakuje mi 10 lub inne głupoty... do procka mam podłączony kwarc 8MHz z każdego +5V 100nF, reset podciągnięty do +5V przez 5,1k i kondensator 100nF do masy, fusy mam ustawione na CKOP = 0 , kwarc zewnętrzny czyli...
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...
Cały program ma ponad 1500 linii więc cały soft nic tu nie wniesie. Aktualny wycinek dotyczący w/w tematu: [syntax=basic4gl] $regfile = "m16def.dat" $lib "I2C.LBX" '$lib "mcsbyte.lbx" $lib "Ds1307clock.lib" $crystal = 4000000 ' Konfiguracja pinow DS1307 Config Sda = Porta.6 Config Scl = Porta.5 Config I2cdelay = 100 ' opoznienie magistrali I2C Const...
Witam ponieważ w programie będe używał polecenia CONFIG SERVOS co powoduje iż Timer0 jest zajęty przez tę komendę potrzebuje zamienić wykorzystany wcześniej timer0 do przerwań na timer1 aby timer0 był wolny do sterowania serwem. Pozamieniałem w programie komendy timer0 na timer1 odpaliłem układ w symulatorze i nie działa. Dopiero uczę się programować...
:-) tak zgadza się trzeci efekt uboczny GOTO - działające przerwania, faktycznie trzeba by zrobić najpierw disable interrupts. Jednak z trzech opcji wolę watchdoga jako najbardziej bezwzględną metodę :-) Ten miernik co linkowałem to nie oscyloskop... ale analizator RS232 z dekodowaniem transmisji i pomiarem czasów każdej zmiany stanu. Celowe "zamulanie"...
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ę...
Próbowałem na tej zasadzie. Ktoś wspominał jeszcze o watchdogu - można go w sumie wykorzystać, ale chyba timer będzie lepszy. Przepraszam za bałagan w kodzie, ale jak człowiek się wkurza, to i nie myśli dobrze;] Dlaczego czas odmierzasz w tak małych odcinkach (rzędu milisekund), gdy tymczasem obserwowane zdarzenia występują w odstępach sekundowych....
Dzięki możesz podesłać, zerknę również sobie na obsługę menu (jestem też w trakcie tworzenia) i również proszę was o pomoc. Kod wygląda tak: [syntax=vb]'----------------------------... '--------------------KONFIGURACJA-------... $regfile = "m8def.dat" 'informuje kompilator...
OK Przepisałem cały program od nowa. 73% po kompilacji. Teoretycznie wszystko powinno działać ale nie mogę dostać się do menu "termostat" tzn.po naciśnięciu przycisku "menu" program powinien przejść do podprogramu termostat i na wyświetlaczu powinna pojawić się ustawiana temperatura ale tak nie jest. Czy ktoś mądry mógłby zerknąć na kod i powiedzieć...
Nie analizuję jak to działa, ale zmieniony tak jak pisałem kompiluje się bez problemu. Jeśli poniższego listingu nie potrafisz skompilować to znaczy że używasz jakiejś archaicznej wersji i nie da się pomóc dopóki nie przesiądziesz się na nowszą. WDVALUE=16,32,64,128,256,512,1024,2048,4... Zawsze możesz wpisać mniejszą wartość dla Config Watchdog.....
Witam :) Mam problemy z programem analizatora widma z obsługą RC5. Na lcd wyświetla głupoty albo resetuje się Atmega32.Czy w programie wszystko OK jest? Oczywiście sam program analizatora widma akustycznego działa poprawnie. $regfile = "m32def.dat" $crystal = 16000000 Config Pinb.2 = Input Config Int2 = Falling Enable Interrupts 'obsługi RC5...
Nie ukrywam, że to moje pierwsze zetknięcie z bootloaderem dla AVR (nie stosowałem). Pewien sterownik działa w sieci RS485. Mogę się do niego zalogować, i wydawać polecenia tekstowe. Chciałbym by jednym z nich było "upgrade" po którym nastąpi wywołanie pętli, która skończy się tym, że watchdog zresetuje procesor. Po resecie włączy się bootloader, który...
$regfile = "m8def.dat" 'informuje kompilator o pliku 'dyrektyw mikrokontrolera $crystal = 8000000 'informuje kompilator Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portd.5 , Db5 = Portd.6 , Db6 = Portd.7 , Db7 = Portd.4 , E = Portd.3 , Rs = Portd.2 Config Adc = Single , Prescaler = Auto , Reference = Internal Config Watchdog = 2048 'reset wystąpi...
Ok wklejam kod: $crystal = 8000000 $lib "mcsbyte.lbx" $lib "i2c_twi.lbx" $regfile = "m8def.dat" Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portb.1 , Db5 = Portb.0 , Db6 = Portd.7 , Db7 = Portd.6 , E = Portb.2 , Rs = Portb.3 $baud = 9600 Config Serialin = Buffered , Size = 15 $eeprom Data 0 , 22 , 22 , 22 , 0 $data '$prog &HFC , &HE2 , &HD9...
Witam! Mam problem z oprogramowaniem (które piszę sam w BASCOM) do sterownika na atmega16. Sterownik steruje na podstawie timera1 oraz ds18b20 pięcioma wyjściami 220V (za pomocą przekaźników) oraz 4 12v za pomoca bc546b. Przy ustawienu czasu, godziny włączenia, zakresu temperatur sterownik zaczyna prawidłowo pracowac ( bez obciążenia urządzeniami na...
Witam, przerobiłem nieco program kol. Teedd, pod swój mikrokontroler i kwarc, niby działa, ale nie mam regulacji częstotliwości, reguluje mi tylko wypełnienie, kończą mi się pomysły.. $regfile = "m8def.dat" $crystal = 8000000 $hwstack = 32 ' default use 32 for the hardware stack $swstack = 10 'default use 10 for the SW stack $framesize = 40 'default...
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 *****************...
Nie ma problemu! Na następny raz: 1. Wstaw "loop" wcześniej w kodzie - w ten sposób zawęzisz krąg poszukiwań, 2. Zaremuj wszystko to, co nie jest konieczne - watchdogi, timery itp. 3. Wyłącz przerwania (cli lub disable interrupts), 4. Zawężaj program do procedur które nie działają, a po rozwiązaniu problemu dopisuj resztę, za każdym razem testując działanie...
Wystarczy... 😉 To może zacznę najpierw od nauki bascom a i za jakieś dwa lata będzie to śmigać 😀 Dodano po 8 Panowie, znalazłem wczoraj kod, który działa na zasadzie „rejestratora” czasów, i zapisuje wyniki do Eeprom. Później je porównuje z odebranym kodem biorąc pod uwagę pewne odchylenia w czasie trwania impulsu. Program...
Teraz program działa idealnie jeśli chodzi o wybory i realizacje , ale nie podoba mi się robienie przerw za pomocą waitms i chciałem uruchomić timer0 tak żeby można było zmienić czas cyklu od 1 sek do 2 sek. Wprowadziłem zmienna A jako byte , ograniczyłem do 99 , ze są 3 diody to cykl byłby co 33 gdzie wartość 99 mogla przyjąć od 1 do 2 sek . Nie wiem...
watchdog interrupt bascom interrupt watchdog bascom
kolor komórka alarm panel volcano nagrzewnica
renault arkana discord weryfikacja wieku
Problem z Wi-Fi w Samsung Galaxy G350 - Rozwiązania Parametry głośnika B&C 15PS100 4 Ohm z 2017