Można zrobić tak: $hwstack = 32 $swstack = 32 $framesize = 32 Dim Aa As Double Dim B As Double Aa = 5 Aa = Aa / 6 Print Aa B = Sin(0.2) Print B Do Loop End ...i będzie działać ! Pozdrawiam...
A jeśli chodzi o "Błędne operacje matematyczne" , to: Czy rozumiesz dlaczego zmienną Pokaz , zadeklarowałeś jako Integer , a nie np. Byte,String czy Double :?: Sprawdź jakiego typu zmienne oferuje Bascom Basic , postaraj się zrozumieć czym one się miedzy sobą różnią , a wtedy 1-szy problem masz z głowy ;) Piotrek
Robi się to prosto na wejściu ICP Atmegi, mierzysz czas pomiędzy kolejnymi zboczami, raz jest opadające, raz narastające itd.. potem to tylko interpretacja wyników, liczenie bitów i po odliczeniu 64 bitów z transmitowanych 66, bo dwa ostatnie dla uproszczenia procedury pomijasz. wyświetlasz na LCD lub wysyłasz po RS232 do komputera, a tam wyświetlasz...
Można zadeklarować prawidłowo zmienną eeram W ten sposób Dim Adres_er(size_t_mac) As Eram Byte At Adres_p_mac Poprzez komende AT znam adres, po jaki będzie się odwoływać zmienna eeram w pamięci. Niestety, ale z Eepromem ten numer nie przejdzie , ponieważ Bascom ignoruje etykiety w Eepromie. Deklaruje, jakie wartości powinny być zapisane w eeram...
atmega128 bascom
Dzięki za naprowadzenie ... kierunek dobry ale zrobiłem bez tworzenia zbędnych zmiennych. Według przykładu musiałbym stworzyć ich 1152 szt. a co najważniejsze je nazwać i samo operowanie na nich było by problemem. Kol. KJ chciał cię naprowadzic, ale wygląda że nie w pełni zrozumiałeś concept "OVERLAY" Overlay nie zajmuje dodatkowej pamięci a jest tylko...
bo następuje wtedy konwersja liczby double na ciąg znaków :D Uroki bascom'a
Może uaktualnij Bascom. Nie sprawdzałem na starszych wersjach bo mam nowy komputer, ale na najnowszej wersji działa bez problemu. https://obrazki.elektroda.pl/4663276300_... Help również zdaje się informować inaczej niż to przedstawiasz....skoro potrafi czterobajtową LONG a nawet DOUBLE to dlaczego nie miałby poradzić sobie z DWORD?...
Zaokrąglenia single... na LCD. Powiem szczerze ze pomysłów mi już brakło. Spróbuj więc takiej funkcji: CONFIG SINGLE = SCIENTIFIC , DIGITS =1 co obcina zbędne miejsca zmiennej 'single' do jednego miejsca po decimal point. Zamiast 1 może byc dowolna wartośc w zakresie 1 do 7. albo jak wyżej "FUSING". e marcus Ta funkcja również zaokrągla ?, działa przy...
witam jak w temacie prosta funkcja z jedną zmienną wywala błąd w postaci : error 61 : line 12 Label not found[_LPMBYTE ], in file..... a program poniżej hmmm może o czymś zapomniałem ? line 12 to wskazuje na ostatnia linię programu $regfile = "m48def.dat" $Crystal=4000000 $hwstack=40 $swstack=16 $framesize=32 Dim A As Double A = 0.000101299243148 Pozdrawiam...
Witam, mam wrażenie że Bascom strasznie pożera pamięć RAM, wystarczy zadeklarować kilka zmiennych typu double i już program nie chce się kompilować, podczas gdy na analogicznym procesorze PIC, programowanym w C, te same instrukcje nie powodują zajęcia pamięci RAM, a robi to dopiero inicjacja zmiennych, czy wykonywanie na nich operacji arytmetycznych,...
Witam, pytanie jak w temacie - czy w C jest to wielki kłopot (tak mi się to teraz jawi) aby zamieniać liczby zmiennoprzecinkowe na tekst w jakikolwiek sposób???? (zapewne niedługo i w drugą stronę będę potrzebował konwersję) doczytałem już o sposobie z funkcją sprintf ale to masakra (akurat testy robię na ATtiny2313 i implementacja tej funkcji zżera...
Skoro jedna komorka pamieci eeprom ma dlugosc Byte, to maksymalna liczba jaka mozesz wpisac jest &B11111111 czyli 255 ... Odpowiem pytaniem na zapytanie ;) Skoro jedna komórka pamięci RAM ma długość 8 bitów, to jakim cudem Bascom oraz inne języki programowania, potrafią zapisać np. liczbę 2147483647 w zmiennej Long :?: Mało :?: Bascom potrafi w eepromie...
Witam serdecznie, Nie mam pojecia o Delphi, czy ktos moglby mi pomoc zrozumiec ten kod piszac komentarz (wiersz po wierszu) W zasadzie ten program nie robi nic wiecej poza wczytaniem phi, lambda i JD (katy i czas), przeliczenia po kolei wzorow, i podania wynikow kazdego kroku w formie tekstowej. (oblicza pozycje Slonca na niebie w zadanej chwili i miejscu)...
Hmm. Głośno myśląc kombinowałbym tak: Zadeklarowałbym zmienną Double (osiem bajtów) pod określonym adresem w pamięci za pomocą Dim...As...At... Zmiennej tej nadałbym jednym ruchem wartość odpowiadającą poszczególnym bajtom "teoretycznej tablicy" - Zmienna = &HABCDE Dostęp do poszczególnych elementów uzyskałbym przez zmienna bitowa = INP(adres). Nigdy...
Chyba w podobnym temacie umieściłem nawet film i Ty też... Musisz kiedyś zrozumieć dlaczego Single nazywa się Single a Double double :D Nie dość tego AVR nie wspierają sprżetowo pracy na liczbach "z przecinkiem" i lepiej jest i szybciej rozwiązywać takie sprawy na liczbach całkowitych. Są o tym temacie całe wywody i nie ma co się powtarzać bo pewnie...
Witam, Ważna uwaga: typ long jest całkowity, nie ma części ułamkowej, trzeba użyć single lub double. Mała wskazówka z helpów (polski ubogi pełny po angielsku w programie) Pamięć ERAM. Większość procesorów serii AVR posiada wbudowaną pamięć EEPROM. Pamięć ta może przechowywać dane nawet po wyłączeniu zasilania. Jak podaje producent nawet do 10 lat. Pamięć...
Witam napisałem prosty kalkulator w c++, obliczający przerwania dla zaokrąglonych czasów, Mi się przydał do zegarka i stopera może i Wam się przyda Program napisany pod Linux, skompilowana wersja na Windowsie nie działa Pozdrawiam Brak zdjęć, proszę to poprawić, regulamin wewnętrzny pkt. 2 (joy_pl)
Witam. Mam panowie taki problem. Coś mi nie pasowało z czasem odliczanym przez atmege w przerwaniu timer1 [syntax=basic4gl]$regfile = "m32def.dat" $crystal = 16000000 $baud = 9600 Config Timer1 = Timer , Prescale = 1024 On Timer1 Czas1us Enable Interrupts Load Timer1 = 15625 Enable Timer1 Dim Zmienna As Double Do Loop End Czas1us: Print "###" Load Timer1...
Siema. Otóż mam taki problem, podczas gdy kod ładowania i zerowania data DACx działa, np DACB1 = 0 waitus 500 DACB1 = 4095 (full zakresu) waitus 500 daje jakieś 2Khz pisku w słuchawkach co jest oznaką działania , to gdy ładuję próbki muzyki wav z karty na zasadzie DACxx = pwm nic się nie dzieje. Tu całt kod xmega: [syntax=basic4gl] '=======================================...
Dałem y i teraz nie działa # avrdude -c bascom -p m8 -B10 avrdude: AVR device initialized and ready to accept instructions Reading | ########################################... | 100% 0.00s avrdude: Device signature = 0xffffff (probably .reduced_core_tiny) (retrying) Reading | ########################################...
Taa, ciekawe, który _cast? Tutaj akurat nie ma i nie będzie, żadnego nadzorowania, bo trzeba przekształcić tablicę bajtów na strukturę. Rzutowanie ma tą zaletę, że nie trzeba niczego kopiować. Hmmm masz rację po głębszej analizie nadaje się chyba do tego tylko reinterpret_cast? Co prawda nic nie będzie nadzorował ale łatwiej go odnaleźć w programie...
Po bitwie z komputerem wreszcie udało się zainstalować ponownie USB serial port ale nadal nie da się programować układów. Wygląda na to jakby atmega8 podłączona do FT232 w programatorze nie reagowała. Poniżej wrzucam kod z Programers Notepad: > "make.exe" program avrdude -p attiny2313 -P com5 -c stk500v2 -U flash:w:main.hex avrdude:...
Windows 7 32bit. Połączenie ISP z FT232 wykonałem tak jak jest to pokazane na stronie 23 w avrdude -p atmega32 -P lpt1 -c bascom -E noreset -U flash:w:main.hex avrdude: AVR device not responding avrdude: initialization failed, rc=-1 Double check connections and try again, or use -F to override this check. avrdude done. Thank you. Gdy...
Witam Widzę, że nie tylko ja mam problem z tym programatorem; korzystam z avrdude, który wyrzuca mi coś takiego: avrdude -p atmega8 -P com4 -c stk500v2 -U flash:w:main.hex avrdude: stk500v2_command(): command failed avrdude: stk500v2_command(): command failed avrdude: stk500v2_program_enable(): cannot get connection status avrdude: initialization failed,...
Witam! Tworzę kontroler swojej deski elektrycznej. Wszystko idzie po mojej myśli poza... Mnożeniem zmiennych przez liczby zmiennoprzecinkowe. Otóż stworzyłem taki kod: Dodano po 19 Więc tak.. Typ zmiennych A i B zamieniłem na Single, ale dalej mnie to nie satysfakcjonuje, bo miała być to zmienna "pojedynczej precyzji" czyli jak zakłądam tylko jedna...
Pomyłka - miało być napisane INPUTBIN, INPUTHEX. Problem w tym że nie potrafię tego wykorzystać co jest w HELPie. Nie mam pomysłu na odebranie tych danych i zapisanie ich do zmiennej. Wgrałem taki program [syntax=vbnet] $regfile = "m8def.dat" $crystal = 8000000 $baud = 9600 Dim Odczyt As Double Dim Pnext(8) As Byte Pnext(1) = &H7E Pnext(2) = &HFF Pnext(3)...
Witam! Kiedyś, gdzieś w internecie wyczytałem że Hard-spi to szybszy sposób komunikacji procesora z np. kartą sd niż SOFT-SPI. Bardzo długo męczyłem się żeby At128 dogadała się z kartą sd przez HARD-SPI ale w końcu się udało. Napisałem prosty program zapisujący na kartę zmienną typu byte jednocześnie licząc ilość tych zapisów w czasie 1sek. [syntax=vbnet]Wait...
Witam. Posiadam wyświetlacz lcd 2x16 którego nie idzie wysterować dostępnymi komendami w Bascomie. Znalazłem jednak na elektrodzie kod w C który poprawnie go obsługuje #include <avr/io.h> #include <stdlib.h> #include <avr/interrupt.h> #include <avr/signal.h> #include <avr/pgmspace.h> #define F_CPU 4000000 #define DDR_DB4...
Witam, zakupiłem programator, z tej strony:[url=http://www.microsense.eu/ind... niestety nie potrafię go odpowiednio skonfigurować, mój system operacyjny to windows xp home edition. Urządzenie działa jest wykrywalne w trybie com, sterowniki zostały zainstalowane z płyty dołączonej do przesyłki, połączenie...
Przykład ten udowadnia właśnie jak przy pomocy gniota o nazwie Bascom stworzyć gniota który nie radzi sobie z kartą SD i graficznym LCD.Może już pora otworzyć oczy i nazwać rzeczy po imieniu. Trzeba przestać sapać nad bascomem i C i nauczyć się asemblera. Bo reszta działa jak tłumacz w google ... Gdybym miał tyle czasu aby siedzieć i uczyć się C to,...
W Bascom'ie jest biblioteka mmc.lib i nigdzie nie jest opisana jej konfiguracja jak i jej sposób użycia. Czy wiecie jak wysyłać i odbierać bajty przy użyciu tej biblioteki? Dodano po 3 Dokopałem się do czegoś takiego i co dalej....... $regfile = "m128def.dat" $crystal = 14745600 $baud = 115200 $hwstack = 150 'wartosc stosu $swstack = 150 'wartosc...
I działa to tylko dlatego że bufor został przesunięty???? Tak. Jeżeli zastosujesz taki kod: $regfile = "M32Def.dat" $crystal = 16000000 $hwstack = 128 $swstack = 64 $framesize = 64 '---------------------------------------... Dim Timer1_licznik As Byte Dim Buffer(256) As Byte At 1024 Dim Write_position...
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ść...
Po wielu próbach zmontowania własnego programatora kupiłem gotowy programator wymieniony w tytule, pod port USB. Po podłączeniu samoistnie zainstalowały się sterowniki, świecą się 2 diody sygnalizujące podłączenie i podawanie napięcia z usb na uC. Napisałem prosty program, który dawał efekt migania diody led oraz dla pewności ustawiłem 2 wyjścia portu...
Hymm no tak chciałem zrobić:) Już chyba wiem, gdzie robię błąd, myślałem, że Bascom AVR służy do wczytywania tych hexów do mikrokontrolera, a on to robi przy okazji, tam chyba można programować Bascomem (jak sama nazwa wskazuje). Cały problem w tym, że hex mam (korzystałem z jednego narzędzi WinAVR - programmers notepad 2 i jest to migająca dioda na...
Witam w Nowym Roku Chciałem zapytać, czy ma znaczenie, do którego pinu kontrolera jest podpięte wejście sterujące wyborem karty SD ? Korzystam z kodu podanego w helpie - zamieniłem tylko PortB.4 na PortD.6 i cały czas mam aktywną kartę SD, co oczywiście skutkuje zablokowanie kontrolera. Jako, że nie działa mi to razem z innymi funkcjami, więc próbuję...
Witam Niestety nie ( inna sprawa, że ostatnio brak czasu ) Używam zwykłej SD - 1 Gb Sandisk i 2Gb Kingston. Ale sienie poddaje i zamówiłem MMC 256 Mb. Używam wersji Bascom 1.11.9.5. Podłączam według opisu w pliku config_mmc.bas. Atmega32 jest na 5V karta SD na 3,3V, zastosowałem nawet dzielniki na rezystorach, żeby lepiej dopasować poziomy. http://obrazki.elektroda.pl/3931794300_1...
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...
Opiszę tutaj moje próby zaprogramowania w linuksie Mikrokontrolera ATtiny2313 z wykorzystaniem kompilatora języka C avr-gcc, programatora avrdude oraz Sample Electronics programmer. Schematów nie dorzucam ponieważ nie bardzo jest sens cały programator to tylko 3 oporniki podłączone do portu LPT do znalezienia w google w każdej chwili, reszta mojego...
No i wszystko niby działa (znaczy mogę dowolnie programować itd) ale apetyt rośnie w miare jedzenia. Dokleiłem sobie procedurkę bootloadera bo chciałbym mieć możliwość programowania Atmegi w układzie. No i tu się schody zaczynaja. Bo po pierwsze to nic przez uarta nie mogę się skomunikować, po drugie nie działa bootloader.(co pewnie wynika z problemu...
Źle definiujesz typ zmiennych. Żeby można wykonywać operacje zmiennoprzecinkowe, typ zmiennych powinien być single lub double. Dim Dawka_temp As Single, Dawka As Single
Przy przepisywaniu danych masz jeden błąd, pierwsza dana z linii DATA nie zostanie przepisana do tablicy. Numeracja elementów w tablicy DIM zaczyna się od 1, a numeracja elementów danych pobieranych przez Lookup zaczyna się od 0 :) . W BASCOMIE od wersji 2.0.0.0 można zmienić w jaki sposób będą numerowane elementy w tablicy DIM: A gdybym chciał przechowywać...
Na obu wyjściach mam stan wysoki :( Wgl coś mi się krzaczy chyba sprzętowo, bo mkavr wykrywa uC, ale podczas próby zaprogramowana wyskakuje "Double check chip..." Z poziomu bascom staje na "started" i tak wisi, bez żadnych błędów.
Stwórz tablicę za pomocą: Dim Zmienna(5) As Byte 'lub Word, Integer, Long, Single, Double... Przed zapisem aktualnej wartości do Zmienna(1), przesuń wartości z 1, 2, 3, 4 o jeden indeks (na 2, 3, 4, 5). Pamiętaj aby zrobić to tak, by nie "zamazać" wartości przy przesuwaniu. Potem zapisujesz aktualną wartość do Zmienna(1) i masz komplet, który...
W C wygląda to tak: double log10 ( double __x ) BASIC z tego co pamiętam też miał logarytmy.
http://obrazki.elektroda.net/76_12822275... Atmega (z dołożoną pamięcią zawnętrzną) jak najbardziej nadaje się do obsługi matryc stn i tft. Mówiąc dokładniej obsłuży każdą matrycę stn - także kolorową natomiast co do tft to maksymalna rozdzielczość matrycy to 640x480 - przynajmniej tyle udało mi się uzyskać na dzisiaj. Większość rzeczy można...
Licz i przechowuj impulsy, potem w razie potrzeby zawsze możesz zawsze obliczyć ilość litrów. Sprawdź, czy pojemność zmiennej typu Single Ci wystarczy, czy nie będziesz potrzebował typu Double. Poszukaj programu licznika impulsów / częstościomierza, to pomoże Ci.
string dane; int RxString; .................................... private void serialPort1_DataReceived (object sender, System.IO.Ports.SerialDataReceivedEventA... e) { RxString = serialPort1.ReadByte(); this.Invoke(new EventHandler(DisplayText)); } .................................... private void DisplayText(object...
Tak się dzieje jak stosujesz instrukcje Gosub, program idzie do procedury a tam znowu stosujesz Gosub i w tej na koncu nieszczęsne Retrurn. Program idzie w "krzaki" bo przepełniasz stosy i nadpisujesz w pamięci Ram zmienne. Poczytaj o procedurach i funkcjach w pomocy Bascoma, użyj Declare Sub a potem Sub: i END SUB. Stosuj też deklaracje ramki i stosu...
bascom double single system double arduino double
wieże philips czujnik pralka 93c46 programatora
Thermomix TM5 wyłącza się po kilku sekundach - możliwe przyczyny Ariston Hotpoint piekarnik F8E0 – błąd wentylatora chłodzącego, interpretacja kodu