Nie wiem co masz za Bascoma , ale w pełnej wersji v1.11.8.7 symulator pokazuje w zakładce I/O 60 rej. dla m8 i ... 78 dla m48/88/168. Jeśli chciałbyś poobserwować rejestr , którego nie ma w zakładce I/O, to zawsze możesz wpisać go do ... Variables. Piotrek
do sprawdzania stanu portu służy rejestr PIN
Dzisiaj akurat potrzebowałem rejestru HC595 do rozszerzenia liczby wyjść użytecznych. Poniżej fragment kodu w bascomie. Przypisane nazwy odpowiadają katalogowym. Zmienną Portx traktujemy jak zwykły 8 bitowy port wyjściowy. Kod z pod etykiety 'obsługa rejestru' wstawiamy w pętli głównej programu, aby rejestr był na bieżąco odświeżany. [syntax=basic4gl]...
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...
Tak jest możliwe. Skoro otrzymujesz za duży czas to zmniejsz wartość wpisywana do timer0 (nie znam bascom więc nie wiem za co który rejestr odpowiada wartość wpisana do timer0, aczkolwiek 40kHz otrzymasz bez problemu).
Program jest bez sensu. Napisałeś to tak jak by rejestr Tccr1a był od kanału A, a Tccr1b od kanału B, a tak nie jest. Zarówno rejestry Tccr1a jak i Tccr1b sterują kanałem A, jak również obydwa rejestry sterują kanałem B. Po prostu jeden jest od czego innego a drugi od czego innego (Tccr1a od sposobu sterowania pinami i o trybu pracy Timera a Tccr1b...
Jeśli dalej używasz choćby jednej zmiennej typu Bit to nadal pomysł jest aktualny bo bitów zawsze jest osiem. Jeśli nie, to mozna wygospodarować jedną zmienną typu Byte, ale że Tiny13 to bardzo wymagający uC i mozesz już nie mieć więcej miejsca na Byte to możesz pojechac po bandzie i do przechowywania wartości wykorzystać jakiś nieużywany rejestr :D...
Te procesory się aż tak nie różnią. Dodatkowe funkcjonalności pinów nie przeszkadzają w niczym dopóki ich nie uruchomisz. (PCINT - Pin Change Interrupt trzeba wiedzieć jak włączyć). Jest duża różnica jeśli chodzi o Timery właśnie. Mega8 ma na przykład tylko jeden rejestr Compare dla Timer2 dlatego inaczej się nazywają. Opisałem to u siebie na stronie...
Witam. Wszystkie Pind.5, w warunkach, zmień na Portd.5. Rejestr PIN służy do odczytywania stanu danej końcówki a rejestr PORT do jej ustawiania lub zerowania. P.s. Aby ustawić pojedynczą końcówkę jako wejście lub wyjście używa się składni Config Pinx.y = tryb. Czyli zamiast Config Portb.1 = 1 powinno być Config Pinb.1 = 1 (chociaż Bascom łyka jedno...
Witaj. Zacznij korzystać z bezpośredniego ustawienia rejestrów. Zobacz w dokumentacji mikrokontrolera rejestr ADMUX i bity REFS0 i REFS1 oraz tabelkę: Table 24-3. Voltage Reference Selections for ADC
Zły rejestr sprawdzasz, zamiast If Portb.5 = 0 Then powinno być If Pinb.5 = 0 Then
ustalam w ten sposób podciąganie pinu do stanów wysokich i niskiego(**) . Zakładałem, że po to jest alias (zawiera nazwę pinu), który sprawę rozwiąże. Co gorsza przyznam się, że taka była moja praktyka więc nie wiem jakim cudem błędy wyszły dopiero teraz. Podsumowując, właściwe jest podciąganie do VCC i GND poprzez SET i RESET a nie jak ja to zrobiłem....
PCINT to specjalne przerwania aktywowane zmianą stanu pinu. Dodatkowo wszystkie przerwania PCINT w tych procesorach wywołują jedno przerwanie, w którym należy programowo określić, który pin je spowodował ważny jest też rejestr PCMSK, który odpowiada za maskowanie nieużywanych przerwań. Polecam lekturę datasheetów tych procesorów w celu dokładnego poznania...
Nie wiem jak działa to w Bascomie. Tak działają rejestry w assemblerze. Staram się nie mieszać, ale wydaje mi się że jak zrozumiesz dokładnie do czego jest który rejestr to łatwiej Ci będzie to rozgryźć. Lepiej wiedzieć co do czego i po co.
DDR to nie instrukcja tylko rejestr portów np. DDRB - rejestr określający kierunek portu PortB (wejście czy wyjście). W bascomie konfigurujesz np. Config portb.5=output lub np. config portb=input Po szczegóły odsyłam do dokumentacji procesora i języka Bascom.
Rejestr EIFR to rejestr FLAGI przerwania, która jest automatycznie zerowana po zakończeniu przerwania. Badanie jej w przerwaniu musi dac wynik pozytywny. Poza tym masz w tym kodzie błąd: reset eifr.0 if eift.0 = 1 then set led chyba powinno być: if eifr.0 = 1 then set led Napisz jak ustawiasz rejestr EICRA Na końcu przerwania zbadaj If EIMSK.0=1 then...
Kolego jak klikniesz w symulatorze ikonkę LCD to zobaczysz wyświetlacz i takie kropki te czerwone odpowiadają za rejestr port a te zielone za rejestr pin. Jeśli kropka się świeci to na danym bicie rejestru jest 1. Aby za symulowć zwieranie do masy należy na samym początku wstawić aby kropka zielona się świeciła a wtedy kiedy chcesz żeby przycisk był...
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...
... Error : 46 Line : 10 Assignment error [COMPARE1A: 0 12: 112] , in File : C:\PROGRAM FILES\BASCOM-AVR-1-11-9-1 FULL\PILOT-TINY26-SONY.BAS ten błąd mam tylko przy tiny26 przy innych prockach np. mega 8 lub tiny 2313 program ładnie się kompiluje . o co chodzi przecież tiny26 ma OC1A ? Spawa jest śmiesznie prosta , jeśli...
Po zapoznaniu się z datasheet Atmegi 8 (str.186-188 oraz rejestrów na str.309) troszkę mi się rozjaśniło. Oto poniższy kod który stworzyłem na podstawie powyższego. ....... Sprawdzę działanie w praktyce jutro. Gdyby było coś jeszcze w nim nie tak to proszę o reakcję :) \] O to właśnie chodziło! Dodam jeszcze: -zwróc uwagę na rejestr ADUMX. Trzy górne...
Nigdy nie używałem funkcji. Więc nie mam pojęcia jak to zrobić. Czas sie dokształcić, do Bascom jest polska pomoc z przykładami. Jaki problem? Ponadto zamiast funkcji można użyc podprogramu, choć funkcje są wygodniejsze. Ta funkcja musi być solidnie rozbudowane aby przesłać jeden znak. Bzdura, wysłanie znaku, to wysłanie bajtu do sterownika. Wyświetlacz...
Teraz tu jest sprawdzany bit if(PINC & 0x08) a jak zastosuje && to cały rejestr jest porównywany z cyfrą 8 czy tak? Sprawdź w CManiaku: http://mikrokontrolery.blogspot.com/p/cm... ten program: [syntax=c]//Wymagane do symulacji definicji i rejestrów ATmega8: #include <dondu/dd_atmega8.h> int main(void){...
Sprobuj tego kodu: I2cstart I2cwbyte 208 I2cwbyte 0 I2cstop I2cstart I2cwbyte 209 I2crbyte S, Ack I2crbyte M, Ack I2crbyte H, Nack I2cstop I2cstart I2cwbyte 208 I2cwbyte 7 ' 2 rejestr ( Alarm1 ? ) I2cstop I2cstart I2cwbyte 209 I2crbyte Sa, Ack I2crbyte Ma, Ack I2crbyte Ha, Nack I2cstop Piszac 2 rejestr masz na mysli rejestr Alarm1 ?? Po rejestrach...
Jak chcesz żeby ktoś ci pomógł to nie bierz punktów za PDFa. Wpisujesz w Google MBI5025 i pierwszy wynik to nota: [url=http://www.prom-electro.ru/document... Na 4 stronie jest tabelka, już prościej się nie da tego przedstawić. OE-uaktywnia wyjścia LE-zatrzaskuje stany wyjść CLK- zegar danych W momentach przejścia CLK z stanu niskiego w...
Translator Google naszym przyjacielem :D BURST MODE coś jak tryb seryjny Burst mode can be specified for either the clock/calendar or the RAM registers by addressing location 31 decimal (address/command bits 1 through 5 = logic 1). Tryb seryjny można działać dla zegar/kalendarz lub rejestrów RAM poprzez adresowanie lokalizacji 31 (adres / bity polecenia...
Dzięki... i rozumiem, że Counter0 liczy do 255, ... W trybie , który przedstawiłem - tak , ale w innych trybach, gdzie TOP może stanowić rejestr OCR0A , jest inaczej. a wypełnienie przebiegu wynosi Pwm0a/255? Dokładnie rzecz ujmując Pwm0a/256 Z jaką częstotliwością działa PWM (domyślnie chyba 500kHz)? Da się ją regulować? Mówiąc ogólnie - częstotliwość...
Kilka uwag odnośnie tego programu: 1. Zamykaj sekcje w takiej kolejności, w jakiej je otworzyłeś: Do If P = 1 Then D = 0 Wait 2 D = 1 Loop Until P = 0 End If Do If P = 1 Then D = 0 Wait 2 D = 1 End If Loop Until P = 0 2. Rejestr PINx jest tylko do odczytu - w innych językach zapis do niego nie dał by zupełnie nic, nie wiem jaki kod wykonywalny Bascom...
To nie Bascom jest przyczyną tylko źle napisany program ;). 1. odczyt timera1 16bit odbywa się po przez rejestr pomocniczy TEMP, ten rejestr jest też używany przez inne procedury i funkcje i jeśli jest użyty to właśnie niszczona jest wartość High timer1 bo ona tam jest wpisana gdy używasz komendy. wpisując tak timer1 do tablicy możesz gubić High timer1....
Witam, Chciałem się zainteresować rejestrem przesuwnym 74HC595 jako rozszerzenie AVR o kolejne wyjścia lecz coś mi to w symulatorze ISIS nie działa. Proszę zerknijcie i wypowiedzcie się gdzie popełniam błąd. Proszę nie krytykujcie małej znajomości obsługi SPI i ISIS ponieważ dopiero się zaprzyjaźniam z tematem. http://obrazki.elektroda.pl/1861876000_1...
Witam ja powiem ze sie da i to bardzo dokłądnie to wykoanć Potrzeba ci jeden Timerek generujacy przerwanie co sekunde. i drugi timerek to wyświetlania w multplesie. Choć faktycznie te dwa timery moga zaburzyć nieco prace tego całego układu. podłacz sobie jeden ls247 i 4 ledy w MPXie zajmie ci to jeden port. 4 linie to BCD i 4 to załącznie pokoleji LEDów....
No ok rozumiem pomysł, powinno zadziałać samo przesuwanie. Wystarczy 7 bajtów (7x8=56) Jak zapewnić sobie w Bascomie te 7 rejestrów na wyłączność? Tzn jak sprawić żeby we wstawce asm. nie skasować czasem jakiejś bascomowej zmiennej? A jeśli sie nie da w rejestrach, to do których komórek pamięci zapisywać skladowe bajty rejestru żeby nie nadpisać jakiejś...
https://obrazki.elektroda.pl/2578145800_... Od dłuższego czasu planowałem wykorzystanie drukarki termicznej razem z terminalem/kolektorem danych Psion Workabout MX. Był pomysł aby taką drukarkę kupić, jednak kiedy dostałem 3 kasy fiskalne do "wypatroszenia" w ramach projektu "rzeźnia kas fiskalnych" to nie mogłem zwyczajnie zostawić...
Po krótce - w ASM musisz wiedzieć pod jakim adresem jest dany rejestr peryferium i do niego sie odnieść. A to ciekawe, co piszesz, bo asembler stworzono właśnie po to, aby nie trzeba było tych adresów pamiętać i zamiast tego używać właśnie ich nazw ;) Post nieprawidłowo łączy dwa tematy. Adresy symboliczne w JEZYKU assemblera Znajomość architektury...
To jest działający kod dla INA226 napisany dla ATMega16. Pewnie mógłby być ładniejszy, ale wiadomo - zawsze da się coś poprawić :-) Z pewnością da się łatwo zaadaptować dla INA219 Nie porównywałem datasheetów, ale sprawdź adresy do komunikacji, być może będziesz coś musiał zmienić w sekcji "inicjalizacja". Zakładam, że dokładnie przestudiowałeś datasheet...
Ok znalazłem odpowiedź . Wcześniej używałem MPU-6050 i przeszedłem na MPU-9250 bo chciałem użyć magnetometr i właśnie tu zaczęły się schody. Nie mogłem się dobrać do magnetometru , cuda wianki robiłem z rejestrami i nic. Mogłem od razu sprawdzić rejestr WHO_AM_I . W oryginale = 0x71 a tu dostaję = 0x70 ... Chciało się tanio MPU9250 to się dostało akcelerometr+żyroskop...
Nie słyszałem o takiej możliwości, ale... człowiek uczy się całe życie.
No, ok. Więc musi zatrzymać transmisję, podać ponownie adres rejestru który zamierzasz odczytać i go odczytać. Czyli robisz tak samo, jak podczas odczytu godziny ale nie podajesz adresu rejestru sekund, a adres rejestru z którego chcesz odczytywać swoje dane. A swoją drogą, to przecież takie porównanie możesz wykonać w programie procesora.
witam mam problem-jak zwykle :) a mianowicie chciałem zacząć programować w języku maszynowym no i napotkałem pewie banalny problem ale niewiem jak przezeń przebrnąć. a mianowicie w BASCOM-ie jesli chce załadować rejestr np P1 liczbą 00000111 binarnie czywiście no i bascom ładuje ten rejestr ale jego zawartość to 111 dziesiętnie zamiast 7. to samo jak...
Kolejnym etapem zabawy z CAN będzie wysłanie wiadomości . Konstrukcja MCP2515 umożliwia ustawianie różnych trybów pracy kontrolera. Rejestr CANCTRL obecnie wygląda - &B10001000 W programie zmieniamy Can_init() [syntax=bascom] Sub Can_init() Local Can_tmp As Byte Reset Mcp2515cs Can_tmp = Cmd_reset Spdr = Can_tmp Do Loop Until Spsr.spif = 1 Set Mcp2515cs...
W sumie tak, możesz wzorować się na bibliotekach z c i przepisać je na Bascom z obsługa przez rejestr 74hc595
Witam.Wiem jak obsługiwać jeden rejestr przesuwny(przynajmniej ze strony teoretycznej :D). Schody zaczynają się gdy chciałbym obsłużyć dwa układy, żeby zrobić np to: http://www.elektroda.pl/rtvforum/topic16... tylko że w Bascomie. Wiem że do wysyłania służy instrukcja SHIFTOUT. Można prosić o przykład kodu , który jedną zmienną wysyłałby do jednego...
generator wewnętrzny jest bardzo niestabilny, mocno zależy od temperatury. Daj kwarca albo skoryguj wewnętrzny oscylator rejestrem OSCAL.
Witam czy ktos moze mnie oswiecic w jaki sposob zapisac wartosc do rejestru Counter1 pod bascomem ? Mam taki prosty program i za nic w siecie bascom nie che go lyknac ............. I taki oto blad ASSIGNMENT ERROR line 8 Procesor ma ten timer w sobie. Jezli to wina bascoma to w jaki sposob zapisac ta wartosc z poziomu jakiejs wstawki assemblerowj ?...
Dziękuję. Rejestr już jest odczytywany przed zapisem. Każde przerwanie w slave zapisuje coś do SPDR, więc jeśli slave ZDĄŻY obsłużyć przerwanie i wpisać to zawsze jeden bajt jest wpisany. Przed transmisją przy inicjacji nic nie wpisuję do spdr, pierwszy wpis jest w przerwaniu. Wygląda na to, że oba wyrabiają się z wpisywaniem danych do rejestrów bo...
Bo bascom nie obsługuje prawie żadnych nowości w AVRach, jak choćby tych nieszczęsnych PCINT, niektórych opcji timerów czy interfejsów, pozostaje tylko na piechotkę, dokumentacja w rękę i rejestr po rejestrze...
Im dłużej zwlekasz tym więcej tracisz - Nowy Rok przed nami więc może postanowienie noworoczne? :) Wiem, ze to bylby dobry krok, bo ostatnio kupilem na alledrogo atmege328 patrze a moj bascom jej nie obsluguje :) Niestety za stary jestem na poczatki jezyka C, ja jestem specjalista od analogowki :) Dodano po 2 No to przecież pisałem jak zacząć, reszta...
Próbowałem coś takiego i męczę się cały czas ,ale i tak mi wychodzą głupoty. :( [syntax=basic4gl]Sub Gettime() 'pobieranie czasu z PCF8583 'początek petli I2cstart 'inicjalizacja magistrali I2C I2cwbyte 166 'podanie adresu PCF8583 dla zapisu I2cwbyte 2 'wybranie drugiego rejestru (sekund) I2cstart 'powtórna inicjalizacja magistrali I2C I2cwbyte 167...
Witam To mnie Kolega zaskoczył - jeśli chodzi ilość wysyłanych bajtów Wzorowałem się na [url=http://forum.mikroe.com/viewtopic.p... stronie, co prawda w C, ale można zobaczyć, jak tam to jest zrobione, tzn. pierwszy MAX7219 - konfiguracja przez dwa bajty ( rejestr + wartość ) drugi MAX7219 - konfiguracja przez cztery bajty ( rejestr +...
Powtórna inicjalizacja (sygnał START) wymagany jest tylko w momencie w którym Master zapisuje do układu adres rejestru z którego następnie chce odczytać wartość (FIG. 17 z dokumentacji). W przykładzie z pierwszego postu powtórna inicjalizacja podyktowana była "cechą" układów na I2C - automatyczna inkrementacja licznika rejestru. Jeśli wpisujesz wartość...
Spójrz do noty. Sprawdź sobie jak się nazywa rejestr Timera0 i czytaj z niego.
bascom rejestr przesuwny wartość rejestr bascom rejestr przesuwny bascom
projekt podnośnika śrubowego boardview radeon rezystor nagrzewnicy
podświetlenie toyota podświetlenie toyota
Jak wyciągnąć złamany grot z młotowiertarki? Fonics EW 100 - Czy warto kupić ten głośnik?