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...
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...
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...
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...
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:...
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---------------------...
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...
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...
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...
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...
Zdravim muzu mit prosbu....jsem tak trochu amater a nejde mi zkompilovat jeden zdrojacek v BascomAVR a hlasi mi to chybu na "Enable Timer1" jako "Unknown interrupt source $regfile = "m8def.dat" $crystal = 16000000 '----------------------KONFIGURACJA-----... Const Falloff = 1 Const Lcd_offset = 1 Const Czulosc = 20 '----------------------STAŁE------------...
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 serdecznie Program ma obsługiwać pomiar napięcia i wyświetlić na wyświetlaczu Led wartość odpowiadająca do 1 do 6 oraz wartość n. Problem polega ze dla wartości 1 oraz 2 brak stabilności pracy. Napięcie jest mierzone na pinie 23 uP przez dzielnik napięcia. Moje pytanie czy jest możecie sprawdzić źródło pod katem błędy dlaczego tak się dzieje?...
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...
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...
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...
http://obrazki.elektroda.pl/6151182100_1... Witam wszystkich, zapewne większość forumowiczów ceni sobie prywatność, a może nawet ma młodsze rodzeństwo które niczym siostra Dextera sieje spustoszenie w jego wynalazkach i za nic ma wszelkie zakazy grzebania w nie swoich rzeczach. Tak właśnie zrodził się pomysł stworzenia prostego zabezpieczenia...
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...
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...
$regfile = "m8def.dat" $crystal = 800000 Config Timer0 = Timer , Prescale = 64 Dim Licz8ms As Byte Enable Interrupts Dim A As Byte 'Enable Timer0 'On Timer0 Procedura Load Timer0 = 250 Reset Portc.5 Reset Portc.4 Reset Portc.3 Set Portc.0 Set Portd.4 Config Watchdog = 2048 Config Portc.5 = Output Config Portc.4 = Output Config Portc.3 = Output Config...
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...
a możecie mi pomóc w tym: mam gdzieś błąd i n ie wiem gdzie. do zabezpieczenia jest dobrze i dlaczego jak mam napis ,,URSUS C-360 3P" to na końcu mam ,,_" jak jej nie mam wpisanej. tak samo jest z 00.00 to zamiast ostatniego 0 jest kreseczka $regfile = "m8def.dat" 'informuje kompilator o pliku 'dyrektyw mikrokontrolera $crystal = 8000000 'informuje...
Witam. Robię sterownik (do teściowej :) ) do kotła z możliwością regulacji prędkości dmuchawy i jest drobny problem, stosuję wyświetlacz led który wyświetla róże parametry (multipleksowany jest i wykorzystuje do tego celu timer0), jak uruchomię przerwanie zewnętrzne INT0 to zaczyna mi strasznie migotać,tzn. wyświetlacz jest taktowany częstotliwością...
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...
:-) 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ę...
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...
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...
Na podstawie tematu [url=http://www.elektroda.pl/rtvforum/to... chciałem opracować termostat do bojlera. Wprowadziłem stosowne zmiany do kodu ale za nic nie mogę zmieścić tego w pamięci attiny. Założenia do zmian to: -wykorzystanie trzech przycisków do funkcji; 1.przejście do wyświetlania nastawy temp., powrót do wyświetlania temp (pinb.4)...
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...
Jeśli chodzi o temperatury to w zasadzie ma to być tylko jeden czujnik, procedura obsługi była zaczerpnięta z mojego poprzedniego programu dlatego tak zostało. Usunąłem też podział na etapy, który tutaj nie będzie potrzebny i poprawiłem resztę wg. Twoich wskazówek. Co do deklaracji portów, przyciski mam podciągnięte sprzętowo do 1. Wygląda to tak: [syntax=basic4gl]'----------------------...
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, 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...
Nie wiem czy dobrze kobinuję, przy takiej konfiguracji bardzo szybko odświerza mi LCD prawie nic nie widać. Nie wiem też jak ugryść wyświetlanie poszczególnych podprogramów jednym przyciskiem. Zastosowałem skoki opisywane [url=http://www.elektroda.pl/rtvforum/to... [syntax=vb]$regfile = "m16def.dat" 'informuje kompilator o pliku $crystal...
watchdog interrupt bascom interrupt watchdog bascom
daewoo zielona czerwona podłączyć elektryczną antene ekspres krups filtr
czajnik kitchenaid mikrokomputer cobra1
Seat Alhambra 1999 – prowadzenie przewodów przez tylną klapę, przelotka, wiązka naprawcza Neoplan Cityliner – falujący wskaźnik temperatury cieczy chłodzącej, czujnik ECT, diagnostyka