Zastanów się - wektor przerwania jest w pamięci FLASH - jak więc chciałbyś go zmienić? Wymagałoby to przeprogramowania FLASH. Jedyna możliwość to tak jak koledzy pokazali wyżej dodać if i wywołanie kodu. Kod możesz umieścić jako oddzielne funkcje, możesz też w ISR. Możesz użyć do definicji tych funkcji atrybutu always_inline, dzięki czemu kompilator...
Włączyłeś przerwanie zgłaszane po opróżnieniu rejestru UDR, a nie masz nigdzie procedury jego obsługi. Musisz ją zdefiniować dyrektywą .org adres aby została umieszczona pod odpowiednim adresem w pamięci, który przypisany jest do wektora tego przerwania. Jeśli przerwań nie obsługujesz nie ustawiaj bitu UDRIE. Chodzi o to, że po przepisaniu danej z UDR...
Nawet dla takiego małego Miki jak ja już na pierwszy rzut oka jest jasne że te kody to potężne źródło problemów. Co widać bez wgłębienia się w szczegóły: * Funkcja main() jako rozbiegówka to słaby pomysł. Kolega stmx napisał coś na ten temat (nawet podaje link w promowanych tematach), warto to przeczytać. * Stos musi mieć odpowiednie wyrównanie, zwykle...
Jest jeszcze inny problem - referencja zwracana przez operator elem_ref& svect::operator[](un... i) { elem_ref* rv = new elem_ref(...); return *rv; }; Teraz ktoś musi być odpowiedzialny za zwalnianie obiektów typu elem_ref. Może być to sam wektor, lub jeśli zabroni się kopiowania obiektów typu elem_ref, to...
Tuaj masz błąd: (a*a)=b; Wartość b można przypisać do zmiennej, a nie do wyniku operacji.
Otóż przez takie zwykłe przypisanie jakiegoś bitu wektora do wyjścia powodowało że reszta bitów wektora zostawała przypisana nie wiem dlaczego do losowo wybranych wyjść tak jak było powiedziane wcześniej. Jednak znalazłem rozwiązanie tak więc zamykam temat.
Z tego co wyczytałem nie można zmienić adresu wektora przerwań jedynie możnawskazać czy jest we FLASHU (czyli bootloader zaczynający się od początku FLASHa) w RAMie (Początek pamięci RAM 0x10000000) czy też jakiś tam bootrom (sprzętowy bootloader we flashu). Nie ma w M0 rejestru SCB->VTOR... chyba. Faktycznie, w ARM Cortex-M0 akurat wektory trzeba...
Mam 3 pytania z VHDLa. 1.) Czy można definiować w taki sposób zmienne: VARIABLE wektor: std_logic_vector(3 DOWNTO 0) := (z2, z5, z6, z7); gdzie z1-z7 to sygnały wejściowe zdefiniowane w jednostce projektowej. Pytam ponieważ po uruchomieniu Generate Post-Synthesis Simulation powyskakiwały mi komunikaty, że wejścia z1-z7 są nigdy nieużywane. 2.) Dotyczy...
1. Czy masz ustawioną flagę IRQ w CPU ? 2. Pokaż plik startowy, czy pod wektor IRQ przypisałeś rejestr VICVectAddr ?
Oj, a ja myślałem, że ręcznie rysujesz... Choć i punkty Krzywej Beziera także można aproksymować dość łatwo... Jeśli zależy wyłącznie na wyglądzie a nie na wartościach aproksymowanych, to wydaje mi się, że Krzywe Beziera są dość szybkie i efektywne. W zasadzie kierunek wektorów (każda krzywa opisana jest punktem początkowym, końcowym i przypisanymi...
W tym wypadku powinien być Gosub Obrot Nie, nie powinno być żadnych odwołań do Obrot. Ani Call, ani Gosub, ani Jump. To wektor przerwania, i procesor powinien do niego skakać sam. Trzeba tylko wskazać które przerwanie ma być przypisane do tego wektora, a to robi ta linijka: [syntax=vbnet]On Timer0 Obrot[/syntax]
Jeżeli chcesz wykorzystać rekurencję, możesz postąpić tak. Do każdego pola planszy przypisany będzie wektor cyfr. Na starcie będą to wszystkie cyfry: 1-9. Potem w polach, które są znane na starcie, czyścisz wektory tak, by zawierały tylko te znane liczby. Potem implementujesz algorytm, który przechodzi kolejno wszystkie pola planszy i usuwa z wektorów...
hm problem jest taki ze nie moge uzyc zbyt skomplikowanych funkcji a o wektorach nie mam zielonego pojecia :|
Przeczytaj jeszcze raz (deklaracja zmiennej i odwołanie się do wektora): 3. Nie przypiszesz zakresu do zmiennej tablicowej w ten sposób. Można Np tak Teraz, jeśli[syntax=vb] Set XlApp = GetObject(, "Excel.Application") Tablica = XlApp.Worksheets(1).Range("O4:O36")[/syn... owszem, zadeklarowałeś obiekt, ale co ze skoroszytem Excela? Musisz się do...
A może mi ktoś podpowiedzieć funkcję, która konwersuje z wektora 8 bitowego do 32? Oczywiście także w U2 :)
Przecież już Ci pisałem poprzednio, że przy przydzielaniu tablicy obiektów zostaje wywołany domyślny konstruktor. Czyli nie ma możliwości przekazania parametru do konstruktora. Wszyscy Ci piszą, że potrzebujesz metody w stylu wektor::zmien_rozmiar(int ile) albo wektor::rozszerz(int ile), a kiedy będziesz ją wywoływał, to już Twoja sprawa. Możesz też...
Pętla For Each komórka in Zakres, "czyta" komórki podobnie jak czyta się książkę. Czyli kolejno wierszami od lewej do prawej. Wstaw do wewnątrz licznik wiersza wynikowego i przypisanie....
[syntax=cpp] double Wektor::operator+ (const Wektor& Wektor1) const { double s; s=this->DlugoscX+Wektor1.DlugoscX; s=this->DlugoscY+Wektor1.DlugoscY; return s; } [/syntax] zamieniłem przeciążenie operatora dodawania na w/w kod i dalej zwraca mi złą wartość. Może powinienem jeszcze przeciązyć operator "=" żeby przypisać te wyliczone wartości do obiektu...
A jak jest funkcja SysTickHandler przypisana jako wektor przerwania? Są przerwania odblokowane na poziome ARM'a? Maja przerwania przypisany stos? Kontroler przerwań jest uruchomiony? Są przerwania odblokowane na poziomie kontrolera przerwań? Są przerwania odblokowane w bloku Timera? Pogooglaj za jakimś kompletnym przykładem. Stary dowcip o autorach...
Nie ma problemu :) Jeszcze 2 rzeczy Ci zostały: 1) nie sprawdzasz w (+) i (-) czy wektory mają taką samą długość. 2) cały czas nie obsługujesz pseudo-przypisania. Powinno być: wektor &wektor::operator=(const wektor &obiekt){ if (this == &obiekt) return *this; delete [] dane; dane=new int[ilosc_wierszy_wektor];...
Powyższe moje wypociny o domyslnym nie mają znaczenia, gdy choć jakiś ctr został zdefiniowany, a chyba masz, jeśli kod z pierwszego postu jest nadal aktualny. Żeby Twój kod zadziałał, w takiej postaci, to musisz dopisać operator przypisania '=' (i ewentualnie konstruktor kopiowania). Pomocne materialy: [url=http://en.cppreference.com/w/cpp/la...
W pierwszej wersji kodu wektor wy ma rozmiar 9 bitów (8 downto 0) a przerobionej na generic ma już rozmiar 8 bitów wiec brakuje 1 bitu na przeniesienie. Kwestia poprawy deklaracji sygnału wyjściowego. Poza tym taka lekka modyfikacja kodu raczej nie będzie prawidłowa dla mnożenia liczb o dowolnej ilości bitów(problem stanowi tutaj ilość linijek - przypisań...
Bo oznaczenie =!0 mogłoby oznaczać przypisanie negacji liczby 0. A Ty masz zrobić porównanie, a więc dla różnego: != A tablica druga, jeśli ma być dokładnie wielkości takiej, jaką trzeba, to trzeba ją utworzyć dynamiczne. Reszta kodu będzie dobra. BTW - czemu do inkrementacji nie stosujesz prostego operatora ++ ?
Czy istnieje możliwość wpisania zawartośc kolumny do wiersza przy pomocy vector-ów ? Przykładowo mamy wektor: 12 123 1234 12345 Chce go przekonwertować na wektor o zawartości. 12123123412345 Wiem, że można przypisać każdy wiersz do osobnej zmiennej ,później skonwertować do string i dodać je do siebie. Jednak myśle, że tobardzo mało profesjonalne. Próbowałem...
Trochę ciężko było mi się wgryźć w twój kod, tym bardziej, że dawno nie pisałem w C++, dlatego wolałem napisać swój program i opatrzyć go komentarzami. Program kompiluje się i działa poprawnie w VisualStudio 2010. Jeżeli kompilujesz w czymś innym to być może będziesz musiał kilka rzeczy zmienić. Na pewno musisz zamienić system("PAUSE"); na getch() lub...
czy np. tablica jest traktowana jako nazwa tablicy, tak? Nazwa tablicy istnieje tylko w pliku źródłowym. tablica jest traktowana jako wskaźnik do wektora (tablicy jednowymiarowej), tak jak napisał to kolega (at)tzok.
A sprobuj uzyc standardowych prologow/epilogow handlera FIQ generowanych przez GCC: __attribute__((interrupt(&qu... void Timer0ISR(void) { ....kod.... } Próbowałem wcześniej w postaci void Timer0ISR(void) __attribute__((interrupt(&qu... void Timer0ISR(void)...
Tu raczej chodzi o manglowanie nazw C i CPP dlatego "nie da" się tego zrobić inaczej. Można jeszcze zmienić tablicę wektorów, żeby wołała bezpośrednio statyczne metody jeżeli bardzo Ci zależy na wołaniu bez delegacji.
w komurce obok tej w ktorej wybierasz wartosc, klikasz na funkcja, następnie szukasz funkcji o nazwie "wyszukaj", wybierasz ją, i zaznaczasz - "szukana_wartość;przeszukiwany_wektor;we... następnie ok, wskakuje okno argumenty funkcji. W polu "szukana_wartość" podajesz adres bezwzględny (taki u mnie lepiej działał np. $a$1) komórki w której...
Wygląda na to, że nie masz obsługi przerwania albo jest ona przypisana do złego wektora.
Dobra, sytuacja wygląda tak. Możesz wykorzystać jeden taki komponent (powtarzam jeden!): entity sn is generic(N : integer range 0 to 1023 := 8); port ( sn_in : in std_logic_vector(N-1 downto 0); sn_out : out std_logic_vector(N-1 downto 0) ); end sn; architecture Behavioral of sn is begin G1: for i...
Istnieje szansa że tak - program po prostu postarał się przypisać adresom odpowiadające im rozkazy no i wyszedł taki oto mix [; Widać tutaj, że tablica wektorów raczej jest dobra, teraz podejrzyj Reset_Handler, a konkretnie adresy które ładuje on do "czyszczenia" .bss i inicjalizacji .data - wg pliku map Reset_Handler był pod adresem 0x08015128 4\/3!!
Najprawdopodobniej jest gdzieś błąd w kodzie tak sytuacja nie powinna mieć miejsca. Sprawdź czy to "podświetlenie" jest przypisane do dobrego wektora przerwania (Timer1 w Twoim przypadku). Jeśli możesz to wrzuć cały kod wtedy coś więcej można będzie powiedzieć. pozdrawiam, Marcin
Podsumowując... Loader umieszczony jest we flash od adresu 0 i nie ma od tego odstępstw. Aplikacja umieszczona jest pod dowolnym adresem we flash z wyrównaniem do 512. Żadne biblioteki nie maja kodu na stałe przypisanego pod konkretny adres, nawet SPL, wszystkie startupy i tak zależą od linkera, no chyba, że ktoś sobie coś udziwił i coś na stałe przypisał....
Witam. Byłbym bardzo wdzięczny, jeżeli ktoś byłby w stanie mi pomóc. Problem polega na zaimplementowaniu rozkazu LD: LD arg1, arg2 (ładuje zawartośc spod adresu w arg2 - adres - może by w rejestrze lub wartością natychmiastową, wartośc jest zapisywana w arg1 - rejestrze 8-bit). Implementacja odbywa się w środowisku Quartus II Web Edition 11.0 Sp.1....
:arrow: Z11, daleko mi do wszechwiedzy, aczkolwiek pewnie wiem więcej od wielu innych, zwłaszcza od dyletantów. Zadałem pytanie, żeby sprawdzić, czy twoja wypowiedź wynika z czegoś co wiesz, czy jedynie piszesz byle co, żeby coś napisać. Nie wyraziłeś jak dotąd nawet chęci wyrażenia odpowiedzi, już nie mówiąc o samej odpowiedzi. Aha, jeśli zamierzasz...
Na 99% w startupie pod wektor FIQ przypisana jest funkcja o stałej nazwie, a nie wektor z AIC, tak jak to ma miejsce w przypadku IRQ. Z tego względu przerwania FIQ aktywuje sie zupelnie inaczej - wystarczy aby funkcja miała odpowiednią nazwę (do znalezienia w startupie), a w AIC trzeba jedynie przekierować, że źródło przerwania nr X będzie zgłaszało...
Cześć Co do tego co napisałem wcześniej( będą strony z data sheet do Twojego procka): Jak program odwoła się do obszaru pamięci UNDEFINED(ABORT)str.18,19 to generowany jest wyjątek "data abort", procesor wchodzi w tryb "ABORT MODE" i skacze pod adres 0x00000010 a adres powrotny zostaje zapisyna w rejestrze R14_ABORT,str41. Adres niezdefiniowanej pamięci...
Ustawiłeś stos dla przerwań w skrypcie linkera? Dodałem tę deklarację ale i bez niej funkcja obsługi przerwania jest poprawnie przypisana w tabeli wektorów. __attribute__ nie ma nic wspólnego z tym czy funkcja trafi do tablicy wektorów czy nie, za to wpływa na fakt, czy taka funkcja będzie poprawnie działać podczas wywoływania innych funkcji które mają...
z tego co pamietam to : [syntax=cpp] #ifndef _WEKTOR_ #include "wektor.hh" #define _WEKTOR_ #endif [/syntax] powoduje pojedyncze przypisanie pliku naglówkowego tzn. jesli juz dodalo nie zrobi rego jeszcze raz chodzi o to aby nie definiowac tego samego kilku krotnie dla programu . A co do drugiego to znalazlem problem dzieki ^^ w nagłówkach brakowało...
Witam, Szczerze to nie kapuje tego pomysłuu z pamieciami nieulotnymi. Rozumier jak mozna zrealizowac komperator na uC, pojedynczych bramkach., czy ukłądach PLD, w sumei miedzy tymi 2 ostatnimi wersjami nei ma zadnej róznicy. Ale na pamieci EEPROM??? Zupełnei nei rozumiem koncepcji. przecież to proste i chyba oczywiste jeśli pamięta się, iż pamięć nieulotna...
Witam. Uruchomiłem WDT (będę używał tego skrótu zamiast watchdog) bez resetu, jedynie samo przerwanie. Wszytko "ładnie pięknie" do czasu gdy "wskoczy" do funkcji przerwania. Nie potrafię wyjść z tej funkcji. Flagę przerwania WDINT nie da się softowo wyczyścić (jedynie poprzez reset). Stad też nie wiem co mam zrobić, by wyjść z funkcji przerwania i nadal...
Chwiła chwiła ;) Dla Was to zwyczajnie za proste a ja tu siedzę i się męczę.. Dodałem do projektu katalog FreeRTOS a w nim: > FreeRTOS > include - croutine.h - FreeRTOS.h - list.h - mpu_wrappers.h - portable.h - projdefs.h - queue.h - semphr.h - StackMacros.h - tesk.h - timers.h - croutine.c - FreeRTOSConfig.h - heap_2.c - list.c - port.c - portmacro.h...
Co trzeba zrobić żeby debugowanie było poprawne? Zwykle debuggowanie aplikacji z bootloaderem jest nieco upierdliwe. Po pierwsze - dla pewności - spytam, czy masz wgrany bootloader i czy mniej-więcej jesteś w stanie stwierdzić, czy takie kombo (bootloader + aplikacja) działają prawidłowo (poza debuggowaniem)? Jeśli tak, to u mnie w Eclipse zwykle nie...
Witam serdecznie ;] Piszę w Borland C++ i obsługę com oparłem na WinAPI (obsługa com jak plik binarny). Zrobiłem już sprawnie działające nadawanie i odbieranie ramki. Ramka jeśli jest poprawna to jest zapisywana do vectora unsigned char (miałem problemy z dynamiczna tablicą unsigned char bo gdy tworzyłem ją np przez "new" to jeśli w pakiecie występował...
Przykładowa literatura Andrzej Januszajtis Fizyka dla politechnik tom 2 Pola. Przejrzałem tę pozycję. Nie zauważyłem, gdzie tam jest o tym, jak oddziałują między sobą magnesy w dowolnym ich ustawieniu. Chyba, że masz na myśli podane wzory i konieczność wyliczenia sobie dla konkretnego przypadku. Znalazłem jednakże opis (strona 16): Pola sil. Wśród...
na wyjściu pojawia się syg. 'X' sygnał btn pozostaje w stanie nieokreślonym podczas symulacji, gdyż nie inicjujesz go konkretną wartością. dopiero po pojawieniu się stanu wysokiego na btn3 zacznie działać poprawnie. mozliwe jest również wstępne zainicjalizowanie poprzez signal bits : std_logic_vector(1 downto 0) <= (others =>'0'); natomiast przypisanie...
Na poczatku dziekuje za zainteresowanie tematem :) Problem rozwiazalem w nast. sposob na przykladzie kodu: 01010 10011 00011 11101 01110 wspolrzedne.txt 1,2 ; 5,8 ; 2,7 ; 4,1 ; 3,5 Teraz tylko wyliczyc odleglosci miedzy miastami(tylko te ktore sa polaczone).
Zgadza przypisałem do main stack = 512 a w process_stack zmniejszyłem do 512.. No i ruszyło.. Dzięki za pomoc i chyba zacznę od przeanalizowania całego linkera i makefile autorstwa Dreddiego, a dopiero później przejdę do kodu i nie będę generował zbędnych tematów na elektrodzie :D dziękuję i pozdrawiam Piotrek
Cześć !!! NutOS można porównać raczej z poziomem Dos niż Unixa, więc trudno mówić o jakimś szczególnym poziomie abstrakcji, i ucieczce od sprzętu do kernela czy strukturze modularnej systemu. Masz dość jasną budowę sterowników i wektory przerwań. Pisząc program poprostu nie skupiasz się na typowej dla c/c++ konstrukcji w głównej pętli main, obsłudze...
Program zachowuje się gdyby chciał a nie mógł skorzystać z SysTick_Handler. Najpierw kod: http://obrazki.elektroda.pl/6717645500_1... Przy zmniejszeniu ilości taktów na przerwanie w systicku i debugowaniu po kroku przerwanie w ogóle nie występuje. A gdy przy w/w kodzie ma być wywołane przerwane (via step to line) program wiesza się w...
Witam! Na wstępie chciałem zaznaczyć, że od niedawna dopiero poznaję procesory z serii ARM. Bardzo dawno temu miałem styczność z 51- jedynką i keilem. Moje doświadczenie w programowaniu C też nie jest oszałamiające, natomiast asembler na ARM jak na razie jest przeze mnie mało zrozumiany. Proszę o wyrozumiałość przy pisaniu ewentualnych odpowiedzi, za...
to co napisałem wcześniej to oczywiście był przykład i jeżeli próbuje to tylko z jednym przypisaniem. Jeżeli jest tylko na 32 bit to jest właśnie zapis co któryś adres a dla 8 bit jest pokolei. Zastanawiałem sie czy sygnał wrCE nie jest tego powodem ale mam tylko wrCE(0), chyba że bez mojej wiedzy gdzieś sie to zmienia i adres jest dzielony to wtedy...
Panowie umiem w miarę C++ i przecież musi być miejsce wywołania funkcji a ja tego nie widzę. Pozdrawiam Wiesz co to są wektory przerwania, ATtiny2313 ma ich razem z resetem 19. Jeśli jakieś moduł np Timer, UART itp. zgłosi potrzebę obsługi, CPU przerywa wykonywanie programu, zapisuje swój stan na stosie i zaczyna wykonywać program od innego miejsca....
Ten kto pisał kod nie musiał wcale wiedzieć co gdzie jest. Jeśli korzystał z kompilatora to kompilator robił to za niego, a jeśli z assemblera to assembler. Zmienne też nie są skracane do prostych znaków. Po prostu są zastępowane adresami. A skoki albo adresami bezwzględnymi, albo względnymi. Procesor też nie musi wiedzieć gdzie są dane, a gdzie kod....
ed-ek czytanie ze zrozumieniem - sprawdzone i polecane kursy. Podbijam temat - potrzebuję nazwy sprawdzonych kursów(zamówiłem symfonie c++) Mam nadzieję, że zamówiłeś "Symfonię C++ Standard ", bo starsze wydania opisują głównie C++/ARM. Początkowo język C++ był dostępny w takim standardzie, w jakim opracowano ostatnią wersję kompilatora Cfront (tłumaczący...
Chodzi o sterownik umożliwiający wykonywanie zadania tak, by przez jakiś czas (i to duży - nawet setki godzin) miało sprzęt wyłącznie dla siebie (ewentualnie jeden rdzeń procesora, gdyby dało się zrobić tak, żeby nic nie zaburzało jego działania). Chodzi o zastosowanie komputera do zbierania danych w czasie rzeczywistym - i to takim bardzo rzeczywistym,...
No masz. To znowu kod języka C. Zdecyduj się: piszesz w C czy w C++. Nie ma nic złego w pisaniu w C, język jak język, ani lepszy, ani gorszy od C++. Ale w C++, o ile jednym z ważniejszych wymogów nie jest wydajność, nie korzysta się z tablic. Szablon vector został tak zaprojektowany, aby naśladować tablice, znacznie je przy tym ulepszając (dynamiczny...
Przypisanie strukturze x2 struktury x1 nie powiedzie się, gdyż C w przeciwieństwie do C++ nie dysponuje domyślnie tworzonym konstruktorem kopiującym dla obiektu. U mnie kompilator gcc dla ARMow zmienia takie przypisanie na zwykłe wywołanie memcpy. Nie wiem czy coś nowego dodam do tematu ale ze strukturkami można robić również takie kombinacje: struct...
1. Wykonaj czynności: https://pl-pl.facebook.com/help/13171972... 2. Kobieta korzysta z facebooka i powiązanego z nim kontem email wyłącznie na Swoim prywatnym komputerze i poprzez iphone z IOS jak wiadomo. Potencjalnie ten komputer/iphone może być wektorem ataku, wszelkie dalsze czynności nie wykonywałbym na nim, do czasu dokładnego...
Witam! W takiej procedurze chciałem zrobić pętle od 0 do długości pewnej zmiennej którą mam przypisaną globalnie. Zrobiłem to tak: [syntax=cpp] public: System::Void rozdzielDane() { for(int i=0;i<zawartoscPliku.length();i++) { if(zawartoscPliku[i]!=';') { } else { i++; } } } [/syntax] Niestety wyskakuje błąd "error C2228: left of '.length' must have...
Witam Co do tego co u ciebie jest aktywne to "JarekC" nie może tego wiedzieć bo nie napiłeś nic na ten temat. Druga sprawa Jarek dobrze ci radzi. Zmień kod według jego propozycji na pewno zadział. Moja propozycja jest taka jak już posługuje się schematikiem to usuń IBUF przypisz to w całość, jako wektor. I dobrze zadeklaruj to w UCF-ie a jak to nie...
Witam, 1) kod powinien mieć wcięcia, to nie asembler 2) niestety kurs z tamtej strony ma już ze 2 lata, avr-libc się trochę zmieniło od tamtego czasu. Polecam korzystać z w/w dokumentacji w jęz. angielskim do weryfikacji funkcji itp. 3) jak już pisałem, GIMSK został "przemianowany" na GICR. 4) zamiast SIGNAL() używa się ISR() 5) trzeba czytać, co kompilator...
Ma to sens. Jak rozumiem w trybie user nie działają instrukcje typu MSR / MRS, czy może coś jeszcze? Kontroler pamięci lub koprocesory mogą też ograniczać dostęp. Popatrz na hasła: 1.Arm registers, MRC/MCR w ARM ARM 2. VICProtection w LPC UM Najlepszy byłby jakiś __attribute__ Spróbuj long_call A tutaj jak rozumiem chodzi o tak zwany "low level init"...
ciało programu: [syntax=cpp]#include "stdafx.h" #include <iostream> #include "vector.h" int _tmain(int argc, _TCHAR* argv[]) { int n,p,a; double *A,*B; string nazwa,nazwa2; cout<<"Podaj precyzje wektorow"<<endl; cin>>p; cout<<"Oto, kalkulator wektorowy, proszę podać rozmiar obu wektorow"<<endl; cin>>n; A= new...
[syntax=c]#include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> #include <stdlib.h> #define D7 7 //dioda podłączone do pinów portu D unsigned int counter=10110; int main(void) { DDRD = (1 << D7); PORTD=(1 << D7); // tutaj sobie zaświecasz diodę, ale do pojedynczych bitów to używaj "|=" zamiast samego...
Jak odwróciłem polaryzacje ? USBS służy chyba do ustawiania czy ma być 1 bit spotu czy 2. Po za tym czy przypadkiem nie dawanie go w ogóle w formule a wpisanie przez ~_BV to nie to samo ? Popoprawiałem resztę i w tej chwili to wygląda tak: ... unsigned int znak=2; int *wektor = &znak; unsigned int i; void Init_RS232(void){ UBRRH = (unsigned...
Bascom moze tego nie obslugiwac. I ile recznie mozna wpisac do rejestru wlaczenie tego przerwania, to podanie wektora przerwania pewnie bedzie juz problemem - moze edycja pliku z danymi o ukontrolerze. Przerwania zmiany stanu na PCINT przypisane sa do portów, i dodatkowo mozna zdefiniowac które piny maja byc monitorowane (nie musza byc wszystkie).
Przypisania są w FreeRTOSConf.h zrobione tak jak było to w poprzednich wersjach FreeRTOSa: [syntax=c] #define vPortSVCHandler SVC_Handler #define xPortPendSVHandler PendSV_Handler #define xPortSysTickHandler SysTick_Handler [/syntax] W port.c są zaimplementowane powyższe funkcje. Kawałek tablicy wektorów przerwań z startup_LPC17xx.c [syntax=c] /** *(at)brief...
karol_85: No jeszcze nie wiem jak, prawdopodobnie dla każdego pasa przypiszę jakiś rejestr i na podstawie wartości w nim będę sprawdzał gdzie czeka najwięcej samochodów i które światła zapalić na zielono. Natężenie będzie mierzone najnormalniej na świecie ilością wciśnięć przycisku, co będzie powodowało inkrementację wartości rejestru. djsway: To wszystko...
W przypadku zadań w tle możesz ustawić jeden timer aby wywoływał przerwanie (od przepełnienia czy od porównania) co pół sekundy. Jak ustawić timer znajdziesz w dokumentacji. Co do kodu przerwań - jeśli piszesz pod avr-gcc(WinAVR) - wstawiasz coś w stylu: SIGNAL(SIG_OUTPUT_COMPARE2/* lub inny wektor przerwania od któregoś z timerów */) {...
LPC1768 posiada 32 priorytety czyli bity konfiguracyjne zajmują 5 bitów. Cortexy-M3 są zaprojektowane do obsługi 255 priorytetów ( 8 bitów), ale od producenta uC zależy ile bitów zaimplementuje. NXP dla LPC17xx przydzieliło 5 bitów. Każdy wektor przerwania ma swój rejestr do konfigurowania priorytetu i jest on 8 bitowy, z tym, że jeśli mamy zaimplementowane...
Bajki opowiadasz... Już powoli łape, ale jeszcze nie do końca. Błędem jest zapisanie Timer4=XXX, bo to nie zmienia wartości TOP w trybie CTC a wartość licznika. Należy zmienić wartość OCR2A, ale tej nie rozpoznaje mój kompilator, najnowsza wersja zaś rozpoznaje, ale ma ograniczenie. [syntax=basic4gl] 'Sprawdza Timer2 $regfile = "m1281def.dat" $hwstack...
Witam, U mnie działa (w xilinx xst 8.2i). Jaki masz kompilator? Komunikat o błędzie dotyczy punktu 7.3.2 standardu VHDL ("agregaty") - z tego co rozumiem, to Twój kompilator wspiera je tylko dla tablic jednowymiarowych zawierających bity (a u Ciebie jest to tablica dwuwymiarowa, bo std_logic_vector też jest typem tablicowym). Spróbuj napisać tak, może...
witam, mam maly problem. zdefiniowalem mape: typedef Pair<double *, double * > vect; typedef std::vector<vect>StrikeVol... typedef std::map<double, std::vector<vect>, ltstr> TermStrikeVolMap; cel jest taki, zeby miec double TERMIN i wektor dwoch double, bo chce sortowac te dwojki dla zadanego double...
Cześć, Na zadanie z programowania miałam napisać klasę macierz posługującą się klasą wektor i pozwalającą na wykonanie typowych operacji. Wiem że już jedna osoba zgłosiła podobną sprawę, ale jej problem nie tłumaczy mojego. Wszystko u mnie działa poprawnie poza operatorem przypisania. Wychodzi z tego tyle że nie mogę wartości wpisywać do mojego obiektu...
hehe no racja, akurat to wcześniej pisałem a nie kopiowałem z kodu ale nie wątpię że w kodzie się nie pomyliłem. ;) [syntax=c]#include<avr/io.h> #include<util/delay.h> #include<avr/interrupt.h> #include<avr/pgmspace.h> #include<avr/eeprom.h> #include<avr/wdt.h> #include <avr/io.h> #define CLK_PIN (1<<PD0)...
Ja nie pisałem o odrzuceniu, a o wycofaniu wniosku z urzędu patentowego i to nie z powodu braku badań, a z braku odpowiedzi ze strony Łągiewki na pytania komisji badawczej. Z tego, co wyczytałem, to Łągiewka razem z jakims gościem opisali teorię działania razem ze sformułowaniem nowych praw i wzorów. Nie czytałem tego opracowania, więc tylko sugeruję,...
A więc zaczynamy: Napisałem programy przykładowe i wszystko pięknie chodzi diodki się zapalają gasną - po prostu jest dobrze. Napisałem program w AVR Studio 4 i symulacja pokazuje że wszystko powinno działać no ale nie działa. Tu jest przycięty kod programu który też nie działa mi. .nolist .include "2313def.inc" .list .listmac .cseg .org 0...
Nie jest to żadne "odkrycie Ameryki" ani inna rewelacja - ale ponieważ rozmawialiśmy sobie ostatnio sporo o bezpieczeństwie oraz troszkę o różnych typach oszustw - pomyślałem że może komuś się przydać ... Zacznę od konkretu - oto dwa screeny wiadomości otrzymanej parę dni temu na konto mailowe przypisane do jednego z moich botów delikatnie rozglądających...
Witam! Zbudowałem prosty układ i chciałbym na nim nauczyć się dobrze obsługiwać i synchronizować przerwania. Jego głównym założeniem będzie liczenie co jedną sekundę do 99 na dwóch wyświetlaczach siedmiosegmentowych(obsługa "multipleksacją") z dodatkowymi opcjami(odebrać coś z komputera itp). Pisałem w C a z assemblerem dopiero zaczynam dlatego proszę...
Licznik: begin process(reset,enable,clock) begin if reset='1' then sCV <= "0000000000000000"; end if; if CLOCK='1' then if enable='1' then sCV<=sCV + 1; end if; end if; end process; reset powinien byc w tym samym "if" co reszta licznika. Kod będzie bardziej przejrzysty. Raczej stosuj reset synchroniczny, oczywiście zależy czy...
W odpowiedzi na pytanie zdane prywatnie: Chodzi o mojego ostatniego posta z drugiej strony watku. Mianowicie czy w przypadku gdy silnik nie generuje sinusoidy po rozkreceniu ale sygnal sinusoido podobny czy dla poprawnego sterowania FOC powinienem mu podawac na wejscie taki sam ksztalt przebiegu czy moze cos innego. A moze to calkowicie niemozliwe aby...
Nie - FreeRTOS nie wymaga generalnie niczego specyficznego od startupa czy skryptu linkera. Jedyna zmiana "na stałe" może być wprowadzona w tablicy wektorów (czasem znajdującej się w pliku startup) - nazwy używanych przez FreeRTOS przerwań mogą być przypisane na sztywno. Ewentualnie rozmiary stosu, ale to w każdym projekcie i tak trzeba zmieniać. 4\/3!!
Witam! Do Kolegi gaskoin: A'propos przedstawionych przez Ciebie serii przykładowych funkcji, zależności pomiędzy wskaźnikami i tablicami są mi dobrze znane. Wskaźniki i tablice są bardzo ściśle ze soba powiązane i można ich zapisy traktować zamiennie nawet w jednym wyrażeniu, np funkcja strncmp(char *dst, char *src, int n) kopiująca do bufora dst n...
Witam szanownych forumowiczów. Wykonywany przeze mnie projekt to prosty sterownik lampek LED RGBW. Lampki sterowane są poprzez 4 kanały PWM, których współczynnik wypełnienia regulowany jest potencjometrami podłączonymi do 4 wejść ADC mikrokontrolera. Wyjścia PWM ustawione są w trybie fast PWM o częstotliwości 490Hz. No i poprawnie wykonana operacja...
z wikipedii: Napięcie elektryczne – różnica potencjałów elektrycznych między dwoma punktami obwodu elektrycznego lub pola elektrycznego. Napięcie elektryczne to stosunek pracy wykonanej podczas przenoszenia ładunku między punktami dla których określa się napięcie do wartości tego ladunku. Przy założeniu, że przenoszony ładunek jest na tyle mały,...
Mnie właśnie przydałby się sam scheduler, bo koncepcja działania peryferiów często bardzo zależy od użytego układu i samego projektu. Może powinieneś rozdzielić ten projekt na dwa, jeden to czysty scheduler i drugi projekt to cały system który z kolei jest oparty o ten pierwszy projekt. Zauważ, że im bardziej rozbudowany będzie ten projekt, tym trudniej...
Tak korzystam z Keila Dodano po 4 Problem nie jako rozwiązany. Przyczynną było inaczej nazwane wektory przerwań, które skopiowałem z pliku stm32f10x_it.h (te z stm32f10x.s okazały się poprawne) np. dla DMA kanał 1 w stm32f10x_it.h void DMA1_Channel1_IRQHandler(void); a w startupie stm32f10x.s void DMAChannel1_IRQHandler(void) dla ADC1...
To może ja spróbuję. Nie wiem jak bardzo jesteś 'zaawansowany' więc zacznę 'możliwie od początku' Podstawowa definicja z lekcji fizyki mówi, że moc P to ilość pracy W wykonana w czasie t: P=W/t W obwodach prądu stałego (dc) iloczyn prądu i napięcia bardzo łatwo koreluje się z tą definicją biorąc pod uwagę skutki energetyczne przepływu prądu w obwodzie....
Nie wiem czy sie przyda ale mam opis bootloadera ale na ATmega8 oto on napisany w bascomie: 'Program Bootloadera (monitora) dla ATmega8 umożliwiający ładowanie 'programu do pamięci Flash przez interfejs RS232 z prędkością 19200 'bodów 'Bity fuse należy ustawić, by na Bootloader było przeznaczonych 128 'bajtów 'Początek adresu programu Bootloadera:...
A może mając stabeleryzowany szum biały w postaci amplituda=f(częstotl.), przypisz każdej częstotliwości odpowiednią amplitudę spełniającą warunki szumu różowego. A dla ciekawości: jak uzyskałeś tabelę szumu białego? Wydaje mi się, że kolega ma tablicę szumu białego jako wektor próbek w czasie. Taką tablicę można uzyskać za pomocą generatora liczb...
Zegar z kwarcem 8MHz. Chciałbym aby w przypadku uszkodzenia (lub np. wyjęcia) kwarcu, zostało wywołane przerwanie w którym mógłbym skonfigurować PLL z HSI. Ale nie wiem do którego kanału NVIC jest ono przypisane. Inicjalizuję RCC_IRQn: Dodano po 52 Dodam, że po wyjęciu kwarcu system prawidłowo przełącza się na HSI i procesor nadal pracuje, tyle że 3x...
Witam! Mam problem z metodą AddItem komponentu ListBox. Mianowicie - w okienku ListBox za pomocą metody AddItem(jakiś_string, NULL) tworzę listę nazwisk zawierającą n pozycji. Chciałbym aby ta lista nazwisk reprezentowała n obiektów umieszczonych w wektorze vCKlient, tzn po kliknieciu na jakim elemencie ListBox wywołać metodę przypisanego do niego obiektu....
PS. dodam jeszcze, że obliczenia "z równań" można przyspieszyć jeśli zamiast np. d < sqrt((x1-x2)^2+(y1-y2)^2) policzy się: d^2 < (x1-x2)^2 + (y1-y2)^2 W sumie racja... taki banalik, a nawet nie wpadłem na niego, przyspieszy program ;) Tylko tych równań w locie nie warto rozwiązywać, tak spowalniają program że szkoda gadać. Bo jak masz wykonać...
W C++ możesz użyć klasy [url=http://en.cppreference.com/w/cpp/co... albo [url=http://en.cppreference.com/w/cpp/co... [syntax=cpp] #include <vector> // ... std::vector<oceny> wektor_ocen; wektor_ocen.push_back (oceny (1)); wektor_ocen.push_back (oceny (2)); std::cout <<...
//--------------------------------------... .EQU UND_STACK_SIZE, 8*4 .EQU SVC_STACK_SIZE, 256*4 .EQU ABT_STACK_SIZE, 8*4 .EQU FIQ_STACK_SIZE, 8*4 .EQU IRQ_STACK_SIZE, 64*4 .EQU USR_STACK_SIZE, 1024*4 //--------------------------------------... .EQU Mode_USR, 0x10 .EQU Mode_FIQ,...
Dzięki, nie wiedziałem, że jest coś takiego jak embedded AI. Dokładnie o to mi chodziło. Tylko, żeby było to tak potężne, jak produkty modeli językowych od OpenAI. Myślę, że kwestia czasu. Opublikowałem w zeszłym roku, na łamach tego forum to urządzenie: 1. Algorytmy uczenia nadzorowanego: Takie jak regresja liniowa, drzewa decyzyjne, maszyny wektorów...
https://obrazki.elektroda.pl/8491276100_... W ostatnich miesiącach przedmiotem zainteresowania autora tego projektu stała się możliwość ukrycia komponentów elektronicznych wewnątrz płytki drukowanej. Jest to technika często i od jakiegoś czasu stosowana w układach elektronicznych wysokiej gęstości, wytwarzanych przemysłowo, jednakże...
miałeś racje :p with select nie jeset do sekwencyjnego procesu. Pozostała mi jeszcze jedna sprawa : w instrukcji case is chece przypiać wartoość do dwóch wektrorów jednocześnie: case ADRES is when "0000" => LED1 <= zdekodowane_bin_7seg; when "1010" => LED1,LED2 <=zdekodowane_bin_7seg; when "1100" => LED1...
długość wektora kierunek wektora grafika wektora
wincc różnice światło dyskotekowe schemat woltomierz cyfrowy
kosiarki spalinowe najlepsze spotter blacharski
Volvo S60 2.4 2004 nie odpala po półrocznym postoju Radio lampowe MENUET UKF 20303 pali opornik R92