No więc ? Tablica: DIM Odczyt(2) składa się z dwóch zmiennych typu Byte. Więc ile masz bitów razem ?
Witaj, Masz 2 opcje ;) np. masz cos takiego: dim a as byte a.0 = 1 a.1 = 1 a.2 = 1 set a.0 set a.1 set a.2 a.3=0 a.4=0 a.5=0 reset a.3 reset a.4 reset a.5 Instrukcja: a.[numer bitu] = [0 lub 1] set/reset a.[numer bitu] gdzie set ustawia 1 reset ustawia 0 analogicznie dla zmiennych typu word integer - tylko że tam możesz zmieniać więcej bitów;) Pozdrawiam
Myślę że bardziej poprawnie już się nie da, o ile potrzebujesz w dalszych działaniach wszystkich 5 bitów na raz. Jeśli nie, to można po prostu w stosownym czasie odczytać pojedynczy bit.
...pozostałe piny są w stanie niskim czyli 0 V. Źle, wejścia te mają wyłączone podciąganie do VCC.
No to spróbuj - zmienną wysyłasz jak normalną wartość, w Bascom ustawienie bitów w niej będzie się odbywało tak samo jak majstrowanie z rejestrami PORTn.x.
... BASCOM nie obsluguje tablic bitow... Bascom-AVR obsługuje tablice bitów , jednak z pewnymi ograniczeniami a)Tablica nie większa niż 256 bitów. b)index/numer bitu , MUSI być zmienną , choć właściwie niekoniecznie MUSI :D Piotrek
Jak nie rozumiesz całości to ciężko będzie to tak w kawałkach tłumaczyć bo w drugiej funkcji jest wskaźnik na tablice z danymi. Trzeba pobrać adres tych danych u Ciebie i trudno się wypowiadać nie widząc całości. Mam dużo swoich spaw i też nie bardzo mam czas się oderwać. Najlepiej ściągnij jakąś biblioteke do obsługi LCD z Forum Bascom i zobacz jak...
... Może Bascom w ogóle nie potrafi tej 16tki odczytać? Pozdrawiam, Damian. Bascom potrafi , tylko Ty nie rozumiesz jak działa instrukcja I2creceive :( A działa tak: I2creceive 68 , W 'i2cstart 'i2cwbyte 68 OR 1 , czyli 69 'i2crbyte W 'i2cstop Z tego jasno wynika , że zawsze odczytasz tylko jeden bajt i zawsze będzie to pierwszy bajt z Twojego PCF-ka...
Tak się teraz patrzę i sprawdzanie bitów jest niepotrzebne, można kopiować bity : [syntax=basic4gl]Bajt_out.0 = Bajt_in.7 Bajt_out.1 = Bajt_in.6 Bajt_out.2 = Bajt_in.5 Bajt_out.3 = Bajt_in.4 Bajt_out.4 = Bajt_in.3 Bajt_out.5 = Bajt_in.4 Bajt_out.6 = Bajt_in.1 Bajt_out.7 = Bajt_in.0[/syntax]
A ustawienia bitów konfiguracyjnych?? Włączyłeś obsługę zewnętrznego kwarcu??
optymalizacje mam na -OS, przestawić na O2 lub O3 ?? Przy tak minimalnym kodzie nic to nie zmieni Spróbuj z taką procedurą przerwania: [syntax=c]ISR(INT0_vect, ISR_NAKED) { asm volatile( "pushr24" "\n\t" "inr24, 0x09" "\n\t" "pushr0" "\n\t" "inr0, 0x3f" "\n\t" "pushr0" "\n\t" "pushr1" "\n\t" "pushr25" "\n\t" "pushr30" "\n\t" "pushr31" "\n\t" "ldsr25,...
Bascom nawet w wersji demo.
No to Bingo. Także wyświetlacz masz pewnie sprawny i układ z programem również. Ja wiem tylko jak wyłączyć obsługę interfejsu JTAG za pomocą FUSE Bitów w BASCOMIE. Niestety na C się nie znam ani na ASMie pzdr. Piotrunio
Bascom operuje bezpośrednio na rejestrach. Poczytaj DS co i gdzie trzeba poustawiać, a potem czytaj wynik też prosto z rejestrów. Nie używaj getadc. To polecenie działa tylko w trybie single i o ile wiem wykonuje konwersję zawsze dwa razy zwracając wynik drugiego pomiaru. Wtedy o szybkości max nie ma co mówić.
Witam Mam programator UsbAsp, działa pod win8.1, w Bascomie, w opcjach ustawione Clock Freq.. na Auto, program wykrywa procesor ale pokazuje że mam atmega88A a na uP jest nadrukowane atmega88 bez "A" . W zakładce fuse bit jak klikam kilka razy na refresch to raz na kilka kliknięć Bascom wykrywa jakieś dziwne ustawienia, przestawiony zegar, div/8, boot...
Sugestia: przydałoby się przerwanie timera z częstotliwością ok. 5..6 razy większą od częstotliwości strumienia bitów.
A jak przesuwac bity? Tzn. z &B0000 0011 zrobic &B0000 1100 żeby móc zrobić to: N1 = &B0000 0011 N2 = &B0000 0011 N3 = N1 (+) N2 = &B0000 1111 I inny przypadek: N1 = &B0000 0010 N2 = &B0000 0011 N3 = &B0000 1011 I jeszcze jak zrobić: Mam osiem zmiennych bitowych od ktorych costam zalezy... Mam parametr - 8 bitów... Chcę, żeby te 8 bitów zamieniało się...
wsadziłem widmo.bin i po zamontowaniu do układu coś się dzieję ale to jeszcze nie jest to... widać, że układ reaguje na uC bo czasami jakaś dioda się zapali, wydaje mi się, że może być to spowodowane zewnętrznym kwarcem. Proszę powiedzcie mi czy konieczne jest ustawienie tych fuse bitów???
:arrow: monty_p: 3maj gotowca! :D Nie wiem czy zauważyłeś , ale monty_p pisał o 24C16 , a tę "kostkę" adresuje się inaczej niż 24C32-512.Adres docelowy komórki pamięci , składa się z 8 bitów adresu komórki i 3 bitów adresu urządzenia. Piotrek
Jezeli skacze o 0,1 to normalne dla tych czujników (dosyć czułe maleństwo ;) ) Z doswiadczenia wiem ze w pomieszczeniu bez ruchu powietrza w odległości 0,5m mozesz miec róznice nawet 0,3°C Karte katalogową do DS1820 znam ale to 0,1°C jest dla mnie za bardzo naciągane bo i jakim cudem z 9 bitów ;)
Witam! Po pierwsze to z reguły przyciski powinny zwierać piny wejściowe do masy a nie do zasilania. Wynika to z faktu posiadania przez procesory AVR wewnętrznych rezystorów pull-up podciągających wejścia do +vcc, czyli panuje na nich stale stan wysoki (oczywiście gdy zostaną uaktywnione). Po drugie to akurat sygnał CLK ma się zmieniać, podczas narastającego...
No w twoim wypadku AVCC to 5V, czyli 1023 (maksymalna wartość z ADC) to 5V. Stąd równanie x=y*1023/5V; gdzie x to wartość z ADC a y to napięcie w voltach. Np dla y=1V mamy x=1V*1023/5V=ok.207 Jak masz inne napięcie AVCC to zmieniasz 5V na wartość tego napięcia, a jak masz inną rozdzielczość ADC to zmieniasz 1023 na np. 255 (dla 8 bitów) czy 65535 (dla...
W Bascom masz do tego dedykowane funkcje - poczytaj helpa - polecenia Config...
wylacz watchdoga i naucz sie czytac dokumentacje. bascom tego za ciebie nie zrobi. 0x41 0x56 0x45!!
Myślałem że rejestry to też RAM. W każdym razie chodziło mi o to, że z eepromu nie wyciągnie pojedyńczych bitów.
Projekt bardzo ładny i do tego tani w konstrukcji ,jak na tej klasy generator ;) Mam tylko pytanko odnośnie ustawienia FUSE bitów w BASCOM AVR ???
Ztego co wiem to RW to ReadWrite I zwieramy to do masy bo chcemy tylko zapisywać dane do lcd A RS i E plus szyna danych (4 lub 8 bitów) zawsze podłączamy
Ok, użyje sprzętowego uarta i tyle to ja wiem, ale jakimi parametrami go ustawi? Ile bitów transmisji, stopu, parzystości i czy z inwersją? "Bo Bascom jakoś ustawi" to jest złe rozwiązanie. Nawet sprzętowego uarta przepuszcza się przez CONFIG COM żeby miec pewność że nie będzie niespodzianek.
lub mozna użyć NOT - neguje pojedyńczy bit
Nic nie trzeba sterować, procesor obsługuje to sprzętowo, odwołujesz sie do tej pamięci jak do wewnetrznej SRAM, tyle że to trwa o 1 cykl procesora dłużej. Ogólnie polecam lekturę [url=http://www.atmel.com/dyn/resources/... s. 24. W Bascom potrzeba jeszcze zdefiniować ten dodatkowy obszar pamięci, tu pewnie się znajdą...
To mniejwięcej "brzmi" tak: ... ;r16-wejście ;r17-rezultat rol r16 ror r17 ;... ;powyższe 2 instrukcje , są "odpowiednikiem" 4 poniższych instr. 51-ki ;a-wejście ;b-rezultat rlc a xch a,b rrc a xch a,b ;... Poza tym , jeśli ktoś zna assemblera na procki X , to "przejście" na procki Y nie jest chyba trudne :?: Piotrek
CKLSEL0:3 to nie rejestr tylko cztery młodsze bity rejestru Low Fuse Byte. Odpowiednie ustawienie tych bitów wybiera źródło oscylatora dla procka. Domyślnie ustawiony wewnętrzny generator RC a szczegóły w dokumentacji procesora. I tu apel do "Bascomowców". Czytajcie dokumentacje procsorów, bo żaden język programowania tego za was nie zrobi. Pozdrawiam.
Wpisałeś do programu nadajnika transmisję bitów 2D i D4?
Dopiero zaczynam programowac ale wydaje mi się ze mozna zrobic cos takeigo w Bascomie: ... Ale zupelnie nie wiem o co chodzi z tym maskowaniem bitow :? Maska jak nazwa wskazuje służy do zasłaniania np.twarzy :wink: Do tego wykorzystuje się logiczne "AND" i "OR". Przykład: Do x chcemy skopiować najstarszy i najmłodszy bit z y. x=y AND 129 (129 to właśnie...
Pomoc przy ustawianiu [url=https://www.engbedded.com/fusecalc/... bitów
Witam, Zgadzam się układ w takiej formie nie ma sensu, po prostu musiałem się cofnąć do wyświetlenia pojedynczych bitów z DS18B20 bo układ nie wskazywał poprawnie temperatury.
Widziałem gdzieś już kod z którego wycięto ten kawałek. Były w nim dwie zmienne typu Bit (Lock1 i Lock2). To są tylko dwa bity a Bascom i tak musi zarezerwować na nie cały bajt. Masz więc do dyspozycji jeszcze sześć wolnych bitów. Możesz dodać jeden Bit i teraz zakładasz zworkę na K2 do masy po czym włączasz urządzenie. Jeśli K2 na masie to Status =...
Tak po krótce przeanalizowałem wątek TIMER2 tego nowego programu. Po prześledzeniu kilku instrukcji i "śladów skoków" mogę stwierdzić, że nie jest dziwne, że gdy aktywny jest TIMER2 i jego przerwania to wszystko siada. Pojawia się przerwanie TIMER2, program wskakuje do jego obsługi a tam napotyka: GOSUB w inne miejsce, gdzie napotyka GOTO w jeszcze...
Witam, czy jest jakaś szybsza i prostsza możliwość niż RC5, na transmisję 8 bitów miedzy 2 mikrokontrolerami ?? Wiem ze istnieje standard RC5 ale nadawanie bitów startu, pozniej adresu i pozniej jeszce komendy jest dla mnie nie potrzebne i znacząco wydłuża czas transmisji. Zależy mi na czasie transmisji, oraz krótkiej i zwięzłej informacji. Koncepcje...
Witam ... Mam taki problem jak w temacie ... a mianowicie chodzi o to żeby przepisać dowolny Bajt liczby Double (liczba 8-mio bajtowa) do liczby typu Byte. Jak to zrobić najprościej ... w rozumieniu najszybciej ??? Aktualnie mam zrobione przepisanie na pętli FOR która wykonuje się 8 razy i przepisuje po jednym bicie - strasznie wolno działa program...
Tak. Bo w takim stanie przerzutnik portu nie wymusza stanu logicznego z rejestru PORT a jedynie steruje tranzystorem, który służy jako podciąganie wejścia do zasilania (ekwiwalent rezystora ok. 50k). Dlatego do odpowiednich bitów DDRxy i PORTxy należy wpisać zera.
Podejrzewam, że chodzi o 8 bitów z czujnika interpretowane do tej pory w C jako int8_t. :arrow: wader_669 Reprezentacja binarna - zobacz [url=http://pl.wikipedia.org/wiki/Kod_uz... uzupełnieniowy do 2 Przeliczanie - wpisz te 8 bitów do 16-bitowego integer-a i jeżeli jest więcej niż 127 to odejmij 256.
Dzięki Light'I :)
Nie da się zaadresować jednego bitu. Adresuje się po 8 bitów, więc jak czytasz całość, bascom spod konkretnego adresu pobiera bajt w miejscu. Najpewniej bascom nie obsługuje wyłuskiwania pojedynczych bitów z zmiennej będącej w eepromie. Odczytaj cały bajt do zmiennej w ramie, a dopiero wtedy dziel go na bity - metoda fool-proof.
jakoś mi nie wychodzi oczekiwany efekt.. Panowie- mogę dostać jakieś wskazówki co do tego jak to zapisać w Bascom? cały czas dostaje sieczkę bitów.. za skuteczna pomoc oddam punkty.
Witam. Napisałem program do 89c2051 który działa tak że wciśnięcie danego przycisku na pilocie powoduje włączenie danego bitu, ponowne wciśnięcie powoduje wyłączenie go. Jak napisać program żeby wciśnięcie powodowało włączenie a zwolnienie przycisku wyłączenie bitu?
Widzę że nie rozumiesz zapisu WGM13:0. To oznacza 4 bity. WGM13 WGM12 WGM11 WGM10 Czyli do tych 4 bitów musisz wpisać 15(d)=1111(b). W tabeli 39 na stronie 99 dokumentacji masz nawet to rozpisane.
1. Przed to można przyjąć jako czas trwania 1 bitu. Po to pasuje mieć czas trwania jednego znaku i jakiś zapas. Czyli czas jakichś 12...20 bitów. 2. Przejdzie.
Tak to da się zrobić. Godziny 5 bitów, minuty 6 bitów, miesiąc 4 bity, dzień 5 bitów, rodzaj x bitów. Razem 20 bitów + x. Kodowanie: Dim temp as long '.... temp = godziny shift temp, left, 5 temp = temp OR minuty shift temp, left, 6 temp = temp OR miesiac Działa jak widać dodajemy przesuwamy o odpowiednią ilość bitów i następną zmienną dodajemy w puste...
Kto używa 4 bitów ten używa, ale jeśli robisz system w którym wykorzystujesz magistrale danych do której podpięte są różne urządzenia o wiele łatwiej używać 8 bitów i traktować wyświetlacz jako komurkę zewnętrznej pamięci. Pozdrawiam
Znalazłem kod tablicy świetlnej, 8x8 sterowanej przez rejestr 74164, niestetypo załadowaniu programu na tablicy świecą się tylko trzy kolumny diód :(. Czy ktoś mi pomorze to rozgryść? 'Program tablicy świetlnej 'Sterowania multipleksowe wyświetlaczem matrycowym 7x5 LED 'Częstotliwość sterowania kolumn wyświetlacza wynosi ok. 333 Hz 'czyli częstotliwość...
Kolego, układy AVR mają nogę podłączoną do kilku rejestów. Pisząc słowo PIN konfigurujemy rejestry wejściowe, a słowo PORT rejestry wyjściowe. Chodzi tu o składnie języka Bascom. Ta informacja jest oczywiście niedokładna , a sama interpretacja błędna (!). Pisząc 'config ...' w efekcie edytujesz rejestr DDRx odpowiedniego portu x. Nie jest ważne czy...
W jakiejś zmiennej odczytujesz 5 bitów Np: A As bite Do A=PINB AND 31 Print A IF A=coś Then coś dalsze decyzje loop Pozdrawiam
czy coś w tym stylu zda egzamin? Nie zda. Nie Port tylko Pin. No i zastosuj maskowanie niepotrzebnych bitów jak radził tadzik85 . Czyli: If (PINB And 0x0F) Then
Masz nowy, czy używany procesor? Jeśli nowy to powinno chodzić i odczytywać bez zmiany ustawień fuse bitów.
Tak. Po kropce numer bitu tej zmiennej.
O ustawianiu fuse bitów w bascom avr. Fusy ustawia się właśnie na ostatniej zakładce okna manual program, w głównym programie. Help nie ma tutaj nic do rzeczy. Dodałem http://obrazki.elektroda.net/51_12322841... Tutaj ustawiasz fusy.
czy czas od zainicjowania do odczytu (ds'a) może być większy od 750ms Question Jeśli tak to jaka jest jego maksymalna wartość Question Nie ma maksymalnego czasu. Dane czekają w "scratchpadzie" przetwornika aż je odczytasz lub do czasu, kiedy przetwornik otrzyma następną instrukcję (np. znowu 0x44 - "CONVERT T"). A 750ms to czas dla rozdzielczości 12bit....
Może ktoś wie jak założyć tablicę 66 elementową ( każdy element to bit) w obszarze adresowanym bitowo, tak by można było odwoływać się do poszczególnych bitów poprzez współżędne w tablicy np. bit22=Tablica(22). Bascom co prawda przyjmuje deklarację Tablica(66) as bit, ale traktuje to jak zmienną 1 bitową tzn. zapis Tablica(22) = 1 ustawia na 1 wszystkie...
1. Daj zewnętrzne rezystory podciągające SDA i SCL do VCC jak już kolega wcześniej napisał 2. Dodaj przed pętlą główną komendę I2cinit 3. Nie zapomnij maskować nieużywanych bitów odczytanych wartości
Nie próbowałem zmieniać ustawień Fuse-bitów, . no i w tym właśnie leży twój problem ;) ... musisz zmienić fusebity a dokładniej wyłączyć za pomocą nich JTAG, który jest właśnie na tych portach z którymi masz problem. Jak go wyłączysz to wszystko ci minie jak ręką odjął pozdr
Zmień Bascoma na 1.11.9.5 bo nowsza wersja ma błędu kompilatora o czym się sam przekonasz z czasem.. I pokaż ustawienia Fuse bitów wybierasz na górze zielono podstawkę na pasku - > Manual Program -> i przechodzisz do zakładki Lock and Fuse Bit i pokaż nam rzut ekranu. ps: musisz mieć jakiś program wybrany w Bascomie żeby mieć możliwość wejścia do Fuse...
Gdy wyświetlam zawartość zmiennej to na LCD widzę nie cala wartość tylko po kolei kody jak zrobić żeby wyświetlał cały 8 bitów za jednym razem.
Skoro standardowe, to chyba powinieneś zdeklarować $crystal=1000000, bo taki jest zegar mikrokontrolera z fabrycznymi ustawieniami fuse bitów.
Za pewne nie wziąłeś pod uwagę fuse bitów które oryginalnie ustawiają zegar tak aby pracował z częstotliwością 1MHz. Wystarczy wpisać magiczne: $Crystal = 1000000 i po kłopocie :)
GPIOB->BSRR=0b00000000000000000000000... //ustawi 1 na PB.0 bez zmiany pozostałych pinów? GPIOB->BSRR=0b00000000000000010000000... //wpisze 0 na PB.0 bez zmiany pozostałych pinów? Jednak wolę Bascom niż zabawę w liczenie 32 bitów To nie Bascom, nic nie trzeba liczyć. Piny mają zdefiniowane nazwy symboliczne np. w odniesieniu do...
To skąd wiesz kiedy się kończy ta ramka? Jeśli nie przyjdzie żaden kolejny bit przez ileś ms, ma jakiś znacznik końca, któryś z początkowych bitów określa jej długość?
W uproszczeniu częstotliwość sprzętowego generatora PWM to następująca zależność: F oscylatora / Prescaler / X, i tak: dla rozdzielczości Pwm=8 bitów X=510, dla rozdzielczości Pwm=9 bitów X=1022, dla rozdzielczości Pwm=10 bitów X=2046. Przykład dla rozjaśnienia: F kwarcu = 8MHz, rozdzielczość generatora PWM=9 bitów (możliwe 8,9 i 10), Prescaler=8 (możliwe...
Rozwiązaniem jest śledzenie pełnej transmisji, przy wykorzystaniu Mode=Background, co niestety wymaga mikrokontrolera z timerem 16bit. Takie są wymagania Bascoma, a w przykładowo czystym C można zrobić tylko na timerze 8-bit.
Witam Zastanawiam sie jak napisac w bascomie procedure odczytu pamieci 24C256 tak aby kazde odczytane 8 bitow było wyprowadzone na dowolny port (np.p1), tak zeby kazdy bit był reprezentowany przez pin portu.
Wszystko zależy jak duża ma być dynamika zmian tego sygnału... Przy 10-bitach to przydało by się go popędzić już kwarcem ~14-16MHz... Wzmacniacz najbardziej się przyda przy sygnale -10V -:- +10V... Wtedy rozdzielczość podciągnąć do 16-bitów i dla połowy napięcia 2,5V ustalić zero... Symetryczne zasilanie wzmacniacza... Zdarzają się też falowniki z wejściem...
Najpierw to $crystal = 14745600 zamień na to: $Crystal=1000000 Nie zmieniałeś fuse bitów więc korzystasz z wew. oscylatora 1MHz. Na pewno masz 4k7 do drugiej nogi i do VCC?
Sekunda.0 to najmłodszy bit bajtu sekunda, taki dostęp do pojedynczych bitów bajtu pojawił się dopiero w jednej z wersji bascoma, stąd nie działa we wcześniejszych. Działa to dokładnie jak w przypadku odwoływania się do pinów portu - piszesz portd.1 - kiedy chodzi o drugi (po pierwszym - zerowym) bit bajtu Portd, w odpowiednim rejestrze
Witam ! Jeśli chodzi o pomiar napięcia przez Attiny2313 jest to do wykonania na tym uP. W katalogu Bascoma/Samples jest plik BG30dB_LCD.bas. W nim jest program i prosty schemat jak to zrobić. W oryginale jest użyty AT90S2313-10 ale można zastosować ATtiny2313 po zmianie jednego lub dwóch fuse bitów. Pozdrawiam. Stefan
Nic nie trzeba informować kompilatora - Bascom ładnie przyjmuje wprost rozkazy asemblera ale w zasadzie atom1477 zrobił to nawet bez asemblera - sorki - po prostu "ręcznie" odwołał się do rejestrów i wpisał do nich odpowiednie wartości tzn poustawiał bity tak żeby coś tam działało w tym przypadku co ja ci podałem trza by to było mniej więcej zrobić...
Prawie dobrze. 24 bity przy 400 kHz, każdy bit kodowany na czterech, czyli 96 bitów przy 1.6 MHz. Najłatwiej będzie do tego zaprząc SPI. Użycie UART będzie sporo trudniejsze i nie zawsze możliwe (zależy, jaki UART) - nie radzę, jeśli nie rozumiesz dobrze tego, co robi UART. Jak wygląda ramka - to dokładnie widać w opisie WS2811. Nic tam nie ma poza...
1) Multipleksowanie robi się na timerze. To co próbujesz zrobić to jest SYF. 2) Każde malutkie opóźnienie w pętli głównej, nawet samo debounce wprowadza ci SYF do multipleksacji 3) Zrobienie multipleksowania na timerze jest banalne. Używaj też LOOKUP zamiast jakiśch wydumanych tablic do trzymania bitów dla wyświetlacza
Witam Jeśli używasz bascoma to masz symulator i możesz sobie to sprawdzić. Taki protokół transmisji czy zrobisz w asemblerze czy bascomie będzie wyglądał podobnie. Tu i tu będziesz właściwie ustawiał bit po bicie. -- pozdrawiam
Wystarczą dwie instrukcje MAKEINT i SHIFT : [syntax=basic4gl]$regfile = "m8def.dat" $crystal = 1000000 $baud = 2400 Dim A As Byte , B As Byte , C As Word A = &b00110000 B = &B00100000 C = Makeint(b , A) ' z dwóch bajtów zrób słowo Shift C , Right , 5 ' zmienną C przesuń w prawo o 5 bitów Print Bin(a) Print Bin(b) Print Bin(c) End[/syntax]
Z tą rozdzielczością ADC chodzi o ustawienia przetwornika czy trzeba te niepotrzebne bity jakoś inaczej odcinać? Należy ustawić bit ADLAR (ADC Left Adjust Result) w rejestrze ADMUX i później odczytywać tylko rejestr ADCH (będzie zawierał najstarsze 8 bitów).
Użyłem 'crystal = 1 000 000' i nic. Tyle że wolniej chodził... A w Bascomie są jakieś procedury inicjalizujące?? --- EDIT: Ale zgodnie z kalkulatorem fuse bitów to używam 8 MHz!!
Witam Właśnie złożyłem swój programatorek tylko na procku THT i dużej karcie SD. Oczywiście na kulturalnym pająku i wyświetlaczu podświetlanym. Włącza się i działa menu ale jeszcze nie programowałem. Ale mam inny problemik. Wstępnie zaprogramowałem fusebity ale nie do końca. Próbowałem przez mkavr calculator ale w nim nie mogę ustawić bitów. Wstępnie...
W takim razie zostaje software ;) Czy wiecie jak odebrać ciąg bitów w bascomie avr na jednym porcei, powiedzmy portd.1? Jak np. sprawdzić czy wysłany kod to 01010110? Chcę zasymulować jakiś ukłąd dekodujący.
Malutkie sprostowanie, prędkość CANa to np 500kb/s (kilo bitów) a nie 500kB/s.
Dzięki właśnie tego się obawiałem że z programu nie da się zrobić. Program piszę w bascom avr, a tam nie widzę żadnych "fus-bitów". Programuje avrpp.exe ale poszukam jeszcze innego rozwiązania. dzięki
Witam, zaczynam z WinAVR i chciałbym dowiedzieć się jak zapisać poniżej przedstawione operacje ustawiania bitów. W Bascom wyglądało to np w ten sposób [syntax=basic4gl]Portb.2 = not Portb.0[/syntax] czyli ustawiam portb.2 odwrotnie do stanu portb.0, w C mogę zapisać [syntax=c]if (PORTB & _BV(PB0)) PORTB&=~_BV(PB2); else PORTB|=_BV(PB2);[/syntax] ale...
Z prefixem, czy bez, na wyjściu nie mam tego, co oczekuję. Zgodnie z notą (jeśli ją dobrze zrozumiałem), sekwencja zapisu do pamięci ulotnej powinna mieć długość 29 bitów, 3x8 bitów danych + 5 bitów sterujących przesyłem (start, stop, potwierdzenie) i tutaj coś robię źle. Próbowałem uzupełniać wartości binarne do 8 bitów, wpisywać wartości w dec również...
Coś mieszasz BASCOM to język programowania. Do ustawiania bitów służą inne programy np. PonnyProg, uisp, avrdude itp. Więc jaki masz programator ?
Darmowy bascom AVR pozwala na 4kB kodu. Może się udać. ATmega8 lub ATmega16 posiadają przetworniki ADC o rozdzielczości 10-bitów Przy pomiarze ciśnień do 1500 barów realna dokładność odczytu będzie na poziomie ok 3 barów. Sam musisz zdecydować czy to wystarczy. Jeśli będziesz musiał zastosować zewnętrzny przetwornik dla większej dokładności to w4kB...
O ile wiem, to 1 bajt = 8 bitów. pamięć ma 64kbity = 8KB.
Dzielenie przez 16 to to samo co przesuwanie bajtu w prawo o 4. Czyli jest to wywalenie jakby 4 najmłodszych bitów, czyli odczyt temp będzie z dokładnością do 0,5 stopnia. Zajrzyj do notki. 5 najstarszych bitów to znak czy dodatnia czy ujemna, a 4 najmłodsze oznaczają miejsca po przecinku. Rozumiem ze zmiana z systemu binarnego na dziesiętny jest znana?...
Nie. Pony Prog pokazuje jakie fusy zostały zaprogramowane. Jest to dobre rozwiązanie przy niektórych bitach. Niestety np. przy CKSEL trzeba bardziej główkować. :( Dobra rada. W nowych prockach najpierw odczytać stan bitów fuse i porównać z dokumentacją. Wtedy wszystko staje się jasne.
A gdzieś czytałem- "Basic na ARM". A tak naprawdę to nie C jest problemem- ale to że jest to niskopoziomowe programowanie. Te konfiguracje rejestrów- te problemy z ustawianiem bitów w C- który programista czyta o zmiennych bitowych. Mają być gotowe, działające biblioteki/funkcje w C do zaimplementowania. Jak w Bascomie. A jak któryś gotowiec nie działa-...
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,...
Twój LM75 jest na I2C, zakładam więc że umiesz odczytać z niego te dwa bajty z wartością temperatury. Sprawdzasz najstarszy bit, starszego bajtu w odczytanym z czujnika wyniku. jeśli jest równy 0, to znaczy że temperatura jest dodatnia i wynik liczysz poprzez: 1. przesunięcie otrzymanego z czujnika wyniku o 5 bitów w prawo 2. pomnożenie rezultatu tej...
Przetestuje to wszystko w poniedziałek bo mam egzamin z fizy:) Co do stosowania nazw bitów, to zachodziło podejrzenie że bascom ma błąd w bibliotece,dlatego pisałem normalnie adresy. Pozdrawiam i dziękuje
Potrzebuje pomocy w zaprogramowaniy ATmega8 mam komunikacje w obie strony z komputerem moge usawic Fuse Bity a na LCD nic. Witold
Odczytalem TCCR2 i jest ustawiony na CTC z toggle, jak przestawie na CLEAR lub SET to nic nie generuje. O binarnie chodziło mi, że w nocie atmegi jest opis rejestru TCCR2 i wartosci poszczegolnych bitów dobierane wg tabel. i wpisuje sie od 7ego bitu.
Sugeruję zapoznać się z instrukcją "SHIFT zmienna, kierunek, ile bitów przesunąć"... 8-)
Do przesuwania bitów służy polecenie shift :) Poczytaj w pomocy bascom'a.
bascom odczyt bitów bascom maskowanie bitów sekwencja bitów
domofon bticino fibaro czujniki pierścienie objawy
Schemat elektryczny lusterka lewego Renault Trafic 2015 – pinout, kolory przewodów, bezpieczniki Nivona CafeRomatica 752, 572 – gdzie kupić i jak rozebrać górny tłok zaparzacza