Z filmiku wychodzi, że fabryczny zegar mikrokontrolera (1 MHz) działa 4 za wolno (w 9,026 s zliczył: (12,58-10,34) s i częstotliwość pokazywania cyfr ok. 6,25 Hz) więc odznacz CKDIV8 i ustaw CKSEL zgodnie z rezonatorem na PCB (pewnie 4 MHz) https://ww1.microchip.com/downloads/en/D... - od str. 22 CKSEL3..1...
Z tą dowlnością w używaniu rejestrów byłbym bardzo ostrożny. Nieodpowiednia zmiana - program się wysypie. Nie wolno używać w trybie zapisu bez wcześniejszego zapamiętania: Y ( soft stack pointer ), R4:R5 ( frame stack pointer ), R6 ( status register ), R8:R9 ( data pointer ), R23 ( translate register ), R12:R13:R14:R15 ( fp calculator ). W sumie można...
Przeoczyłem to. Faktycznie trzeba dac pętlę nieskończoną. #include<avr/io.h> int dane; #define OSC 4 // definicja funkcji opóźniającej void waitms(unsigned char x) { unsigned char a, b; // zmnienne licznikowe for( ; x > 0; --x) // ta pętla zostanie wykonana x-razy for(b = 10; b > 0; --b) // a ta 10 razy for(a...
http://obrazki.elektroda.net/61_12840708... Przedstawiam mój sterownik awaryjnego zasilania mieszkania, pieca CO i pompy od solarów. Urządzenie w takiej, a nie innej formie powstało w sumie przez przypadek. Początkowo miało to być tylko podtrzymanie pompy solarów gdyby zabrakło napięcia w sieci, a temperatura na dworze była by zbyt wysoka...
No to coś napisałem na AVRStudio 4.05.0.181 (na kolanie) :) . Co prawda na ATmega8 , ale przeportowanie to pestka(niektóre wektory przerwań do skasowania/zmiany nazwy i "2313def.inc" zamiast "m8def.inc" , prędkość kwarcu Xtal też do poprawki...), raczej tu chyba nie ma rozkazów niezaimplementowanych w AT90S2313 . ;included in next file - line ".device...
https://obrazki.elektroda.pl/8025280500_... Witam! Przedstawiam wam w pełni automatyczną domową windę osobową! Jest to mój największy, najbardziej skomplikowany, i najdroższy projekt którym chwaliłem się jakiś czas temu w dziale „DiY w budowie”. (https://www.elektroda.pl/rtvforum/viewt... Na początku...
Napisz jakiś prosty program(Uart) który będzie korzystał z tego pinu i sprawdź czy zadziała bo bascom w paru miejscach jest niedopracowany
witam mam urządzonko które pracowało ponad rok z programem skompilowanym w bascomie 1.11.7.4 (uP 90s8515 (at) 8Mhz) , ostatnio potrzebowałem zmienić dosłownie jedną linijkę kodu , skompilowałem nową wersją bascoma 1.11.8.7 i program zaczą bardzo wolno działać , zamieniłem uP na mega8515 i ustawiłem zewnęczny rezonator 8MHz a program dalej działa ospale...
https://obrazki.elektroda.pl/5128171500_... https://obrazki.elektroda.pl/1498445100_... https://obrazki.elektroda.pl/5424905700_... Witam. Przed rozpoczęciem opisywania mojej konstrukcji chciałbym ostrzec: OZON W ZBYT DUŻYM STĘŻENIU JEST SZKODLIWY DLA ZDROWIA I MOŻE ZAGRAŻAĆ ŻYCIU ! Wszelkie próby...
Laminatorem do produkcji płytek posługuję się już od lat. Cały czas tym samym, kupionym niegdyś w Tesco modelem z wałkami grzanymi od środka i plastikową przekładnią, która jednak okazała się być bardzo trwała, w przeciwieństwie do obudowy laminatora, która się z czasem mocno powichrowała, dodatkowo sterowanie dorobione kiedyś okazało się być też kiepskim...
Witam Na wstępie się przywitam - na imię mam Piotr, jestem sobą początkującą w kwestii programowanie mikrokontrolerów AVR - przez ostatni rok "bawiłem" się w różne układy na m32 - pisząc soft w bascomie. Przesiadłem się kilka dni temu na procesor m1280 - i tu mam kilka problemów, których źródła nie potrafię zdiagnozować. Przede wszystkim - po wgraniu...
Po kolei: 1) sprawdź czy został przycisk naciśnięty, jeśli tak to 2) włącz buzzer 3) czekaj chwile 4) wyłącz buzzer 5) czekaj aż przycisk zostanie puszczony wolno
jakie jest ustawienie rezonatora wewnętrznego w atmedze 8 nowej? 1MHz Zmienić to można tylko fusebitami. Jeśli się boisz to tymczasowo - dla prób - możesz zmienić: "Counter1 = Counter1 + 34286 " na "Counter1 = Counter1 + 61629". Będzie prawie sekunda.
Wyjątek c0000005 - Access violation. Bascom próbuje gmerać gdzie mu nie wolno. Z tego wynika, że Explorerowi.exe, który martwi mnie teraz bardziej, też nie wolno tam grzebać. Czyżby Bascom coś popsuł? Usunąłem go w diabły, na noc wstawię skanowanie całego RAMu. Zrzut pamięci aplikacji nie powstał? :oops: A jak to zrobić?
I taktować procek czymś tak zaskakująco szybkim:) (A nie lepiej zrobić to na jakimś timerze? 5Hz to na prawdę wolno zmienny sygnał...)....
A jeśli wolno spytać ,dlaczego chciałeś zrobić to w(na) przerwaniu :?: Pzdr. Piotrek Sz.
(at)KJ - różnica między Arduino a BASCOM jest taka, że schematy, wymiary itp. są dostępne publicznie (otwarta dokumentacja) i autorzy nie mają nic przeciwko robieniu klonów (ale nie wolno używać nazwy arduino/genuino która jest zastrzeżona). BASCOM nie jest otwarty w żadnym stopniu. Rozwój arduino jest wspierany przez sprzedaż oryginalnych płytek i...
Bo to co chcesz zrobić to dramat jest:> NIE WOLNO TAK UŻYWAĆ ERAM! Nie wiem, czy zdajesz Sobie sprawę z tego, że ERAM ma skończoną ilość cyklów zapisu... Więc powinieneś używać jakiejś innej zmiennej w SRAM i po tym jak już użytkownik ustawi co chciał wpisać ją do zmienna (ERAM). Pamiętaj, nie WOLNO używać ERAMu jako zwykłych zmiennych... Rozumiesz?...
Tak na marginesie to w większości przypadków gdy coś działa źle , wolno lub program idzie w krzaki najlepszym rozwiązaniem jest pozbycie się tak z tematu jak i programu słowa BASCOM . Po prostu nie jest to środowisko do budowy poważnych prac konstrukcyjnych ani nawet zdobycia doświadczenia bo żadna poważna firma nie weźmie pod uwagę znajomości bascoma...
Witam. Nie chcę zakładać nowego tematu. Mam pytanie do zadowolonych użytkowników nowego Bascom na Viście : czy Wam też symulator (F2) działa tak koszmarnie wolno ? Dopiero zaczynam zabawę z procesorami i pisze sobie jakieś tam kody. Miałem wcześniej zainstalowaną wersje Bascoma z przed 2 albo i więcej lat i działało a po upgrade do obecnej zwolniło....
Hehe, ja też wiele wyliczałem, ale wszystko wzięło w łep bo uruchomić ten cały system jest strasznie trudno, a ustawienia rejestrów mają w większości wartości krytyczne, trzeba się nieźle namęczyć żeby to wogóle chciało działać, a prędkości to już bajka. Pamiętaj tylko że jest to transmisja pakietowa, z długą preambułą i przez te pakiety prędkość rzeczywista...
Poczytaj dokumentację leniu ;P Tam maz bardzo dużo danych dotyczących sterowania, między innymi ustawień bitów konfigurujących typ sygnału wyjściowego. Czyżbyś od autora tamtego postu otrzymał ten obrazek? Z tego co pamiętam, miał on problemy z ustawieniem przebiegu... Jeśli chodzi o prostokąt to sprawa jest o wiele prostrza i na AVR wydusisz pare MHz...
Cześć. Postanowiłem trochę pogrzebać i zapoznać się z AVR na testowej płytce AVT-3500 z EdW. Kłopoty zaczęły się już na starcie - Bascom (pełna wersja) nie wie z jakim procesorem ma do czynienia :( pomimo ustawień jakie podali w EdW. Tak się zachowuje na PC którego używam, przy próbie wejścia do programatora wywala info jak na screenie niżej. Potem...
Aha zapomniałem napisać,funkcja encoder jest w przerwaniu bo gdyby byla w pętli , za wolno by sie wykonywała ze względu na odpowiedni czas odświeżania dla lcd...
Rozwiązałem w międzyczasie ale dzięki bardzo. Przyjrzę się Twojemu rozwiązaniu. Ja nie mam ograniczenia liczby bajtów. Zapisuję je do tablicy a tablice wysyłam na LCD po Stopie. Adres mam ustawiany sprzętowo z portu mikrokontrolera. Obsługuję tez General Call. Do czasu wyświetlenia blokuje przerwanie od TWI aby niczego nie stracić - nie robiłem bufora...
Programuje się tak samo. Ale trzeba się upewnić, że fusy są dobrze ustawione. Bo defaultowo procesor chodzi na wewnętrznym oscylatorze i można się zdziwić czemu program tak wolno się wykonuje. UPDATE: A może pomyliło mi się z ATMEGA32 ?? :oops:
Zbyt wolno to leciało.. Zamiast 125 w pozamieniałem na 16, to minimalnie się po pewnym czasie spóźniały sekundy, a na 15 to minimalnie zbyt szybko.
Wine jest bardzo ubogie jesli chodzi o wspracie np. dla COM , trzeba edytowac rejestr , ale nawet po tym nie jest 100% kompatybilne , ja probowalem odpalic nawigacje na tym na COM , no i jeden program widzial i dzialal z GPS a drugi nie. Tak jak greg_matrix polecam instalacje banalna vmware + win 98 lub ME. To jaki jest wogole sens przechodzenia na...
Wszystko zależy od tego co jest źródłem impulsów. Jeżeli przycisk, to może to być efekt odbijania sie styków. Jeżeli to sygnał z innego urządzenia to może jego wydajność prądowa jest mała i zbocze zbyt wolno opada. A jeżeli sygnał jest dostarczany przez dodatkową rezystancję to może podciągający rezystor jest za mały.
połączenie kwarcu 4MHz z protokołem RS232 to naprawdę wielce "błędoróbna" kombinacja nawet przy 19.2kb/s Z tego co widzę, mniejszy błąd osiąga się przy 250kb/s ale nie jestem pewien czy Bascom się wyrobi. Może wymień go na 8 czy 16MHz i poczytaj datasheet zakładka USART-->Examples of baud rate settings Pozdrawiam
Witam W programie AVR studio dokonałem zmiany Fuses aby uzyskać możliwość pracy procesora z zewnętrzym rezonatorem kwarcowym 4Mhz wybrałem opcję : Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time: 14 CK + 4.1 ms Po tej zmianie procesor pracuje ale strasznie wolno nawet zwykłe polecenie w bascom wait 1 trwa ok 5 sekund zamiast jednej oczywiście dokonałem...
Jest tak dla tego żeby można było dokładnie przeanalizować działanie programu. Cytat z pomocy Bascom'a: Dyrektywa $SIM rzeznaczenie: Instruuje kompilator by nie generował pętli opóźniających dla instrukcji WAIT czy WAITMS. Spowoduje to zwiększenie szybkości symulacji. Składnia: $SIM Opis: Symulacja instrukcji WAIT może trwać dość długo, zwłaszcza gdy...
Obsługa LCD trwa długo , w tym czasie prawdopodobnie często Bascom blokuje przerwania . i dlatego są błedy. I jeszcze jedno - liczysz przerwania co 2ms a ile trwa proces wyświetlania na LCD? Możliwe że czasem nie zliczysz wszystkiego w ten sposób co piszesz. Spróbuj albo wywalić obsługę LCD i zrób wyświetlanie np na diodzie (jak jest równa iluś tam...
dzięki - jakoś przegapiłem i już miałem zapytać jak to jeszcze zapisać do EEPROM'a. jeszcze tylko jedno pytanie - w pdf-ie pisze , ze nie wolno nadpisywać bitów od 0 do 4 i 7. czy one są blokowane automatycznie, czy trzeba wpisać jedynki ( i 0 dla7.) do Configuration Register
Kolego zapodaj cały kod. Rozumiem że używasz symulatora do sprawdzania kodu. jak za wolno zwiększa to wstaw zamiast [syntax=basic4gl] incr pwm1a [/syntax] np tak [syntax=basic4gl] Pwm1a = Pwm1a + 10 [/syntax] Ale to nie tędy droga. Zrób tak że pomiar napięcia i zmiana wartości PWM przebiegała bardzo często a wyświetlacz odświeżał się np co 500ms.
Czesc Zumek ! Wiesz te procki przy uruchomieniu zachowuja się u mnie dziwnie, ciezko to opisac bo to wyglada na niestabilne dzialanie, raz go bascom "widzi" raz nie widzi,... Powinieneś poeksperymentować z liczbą w Options->Programmer->Delay. Nie napisałeś , czy procek chodzi na zewnętrznym kwarcu , czy jeszcze na ustawieniach "fabrycznych".Jak...
Obecnie taki odbiór rozwiązuję inaczej, ale w Twoim wydaniu coś czuję że to nie odbiór danych przy taktowaniu 16MHz zajmuje dużo czasu a bardziej wyświetlanie tego na LCD. Jeśli by Ci to odpowiadało to możesz: odebrac dane, i zrobić z nich tą tablice stringów po czym ustawić jakąś flagę "Refresh_lcd" Potem w każdym przejściu pętli wyświetlać/odświeżać...
Witam Juz sobie z tym dzisiaj poradzilem, ale dzieki ;-) Swoja droga dziala mi to troche za wolno (wiadomo, pierwsza ramka rc5 tracona jest na przerwanie). Zastanawiam sie, czy moze ktos kiedys popelnil wstawke assemblerowa obslugujaca rc5 z przerwania? Zastanawim sie jeszcze nad kodem standardu sony, jakies doswiadczenia?
może za wolno obsługujesz?? pewnie wyświetlasz, kasujesz zawartość i wyświetlasz, jak dobierzesz złe czasy to wtedy miga, bo kasuje szyko ale np wyświetla powoli i zanim wyświetli kolejne znaki mijatroszkę czasu potem przychodzi czyszczenie i teaz pomyśl ile były widoczne pierwsze znaki a ile ostatnie :)
Wchodzimy trochę na OT, ale czy nie jest tak, że flagę zajętości można odczytać dopiero po ustawieniu R/W w stan wysoki? Jeśli mam racje to kiedy możemy odczytać coś z wyświetlacza jeśli pin R/W jest w stanie niskim? "Gdyby ktoś pytał dokładniej kiedy to może się pojawić na nich stan wysoki - to odpowiadam - że wtedy, gdy np dokonujemy odczytu danych...
Wielkie dzięki. Spróbuję coś napisać pod AVR na początek w BASCOM potem może w czymś innym. Narazie napisałem w delphi i podłączyłem pod LPT. Niestety chyba zbyt wolno zczytuje ew. zła jakość odbioru bo jakoś trudno mi znaleźć stały ciąg PI. (choć czasem się powtarza ale nie co każde 104 bity). Narazie muszę zinterpretować : g(x) = x10 + x8 + x7 + x5...
wiem, impulsy przebiega ja wystarczajaco wolno zeby je liczyc co 1 tylko ze jak skonfiguruje timer0 to mi liczy cos nawet jak nic nie podlacze (ustawilem na 100% przewania z zewnatrzne :P ) a jak ustawie timer1 to mi nic nie liczy, a moze trzeba zastosowac jeszcze jakis uklad przed procesorem???? dzieki
Dokładnie e11 jak piszesz. Sam miałem podobnie. ZX spectrum widziałem pierwszy raz na ZPT :) (ktos jeszcze wie co to ZPT?? :) ) i to z daleka bo nie wolno go było dotykać. Szkoła programowania odbywała się wtedy jeszcze na Basic'u a już ekwilibrystyką było to, że z ciekawości po dorwaniu w bibliotece rozpiski kodu maszynowego dla Atari, zacząłem pierwsze...
Owszem w konfiguracji Timera głupi błąd, ale ku mojemu zdziwieniu przerwanie działało. W liczeniu czasu chyba się koledze przecinek przestawił. Przerwanie w teorii kompilatora bascom trwa ok 0,16ms. W praktyce: po dodaniu w przerwaniu " toggle portb.0" częstotliwość generowanego przebiegu prostokątnego to 3,289kHz więc przerwanie wykonuje się z częstotliwością...
Dziękuje Koledze za podpowiedź. Jak się człowiek wkurzy to najtrudniej wymyślić najprostsze ;) Pomogło oczywiście podłączenie zewnętrznego sygnału taktującego. Poprzestawiały sie FUSY odnośnie BOD na 4V, a uP zasilony z 3V3. Oraz taktowanie przestawiło się na zewnętrzny RC zamiast na zewnętrzny rezonator kwarcowy. Na przyszłość pamiętaj, że częstotliwość...
Fpwm=Fosc/prescale/510 (dla 8bit) Ale to jest w datasheet dla Atmega8. Przy małym wypełnieniu-(np30%)-silnik wcale nie ruszy-ma za mały moment. Przy zbyt dużej częstotliwości PWM(w dużym skrócie) prąd będzie zbyt wolno narastał-zależy to od indukcyjności uzwojeń silnika. Do sterowania silnika DC należy wykorzystać zaawansowane tryby PWM-poprawnej fazy...
Nic nie muisz resetować, robi to programator (właśnie do tego celu jest mu potrzebna końcówka resret procesora). M8 ma domyslnie wewnętrzny rezonator 1MHz, więc jak nie będziesz ruszał tych bitów od zegara to tak Ci cały czas pójdzie. Co do reszty bitów to czasami je trzeba przstwaić (np. jeżeli używasz wewnętrznego EEPROMa to trzeba aktywowoać BODEN,...
Powiem a raczej odpisze ci tak : Oscyloskop hmmm bascom do jeszyk wysokiego poziomu wiec prost osie pisze programy ale pamiętaj ze jeśli chodzi o czas to asm lub C W Bascomie prosto się pisze program to fakt a to dla tego ze bardzo dużo rozkazów jest zaimplementowanych jedne lepiej jedne gorzej , przede wszystkim trzeba stwierdzić ze pod Xmegi Bascom...
Resetu to ty kolego nie masz w ogóle bo na stałe jest podciągnięty pod +5V. Więc w sprzętowy reset nie wprowadzisz LCD bo nie masz jak no chyba że zamontujest sobie jakiś przełącznik aby zwierać go do masy lub podepniesz pod jakiś pin w procku aby robić to przez wymuszenie stanu logicznego "0". Reset jest wymagany przy starcie no ale to pikuś w porównaniu...
Po pierwsze zwolnij transmisję danych. W oplu chodzi ona bardzo wolno - do 1kHz (patrz wykresy Carluccio) - ustaw parametr na 255. Po drugie zrób spradzenie czy wyświetlacz odpowiedział na SDA po zmianie MRQ i dopiero później niech procesor startuje z resztą transmisji. Poza tym na samym początku zrób procedurę testu lini SDA,SCL i MRQ - pierwszy wykres...
bascom przerwanie wolno subiekt wolno wkrętarka wolno
mercedes diesel klasa przecinarka plazmowy uszkodzić atmega miernik
wkrętarka milwaukee zacisk hamulcowy tylny
Anadol EKO nie działa - diagnostyka i rozwiązania Zakup Balkancar DV1792 - Na co zwrócić uwagę?