Pliki nagłówkowe zazwyczaj tworzy się, aby umożliwić współdzielenie - typów danych, funkcji, czy zmiennych globalnych - pomiędzy oddzielnie kompilowanymi plikami źródłowymi. Z tego powodu deklarowanie zmiennych globalnych czy funkcji w plikach nagłówkowych jako static z reguły nie ma...
Witam; uczę się języka C i dotarłem do programu w którym jest funkcja poprzedzona słowem Static. Coś w tym stylu: static Void nazwa_funkcji(void) i właśnie kompletnie tego nie rozumiem. Zmienna static która znajduje się wewnątrz funkcji jest dla mnie zrozumiała, ale oznaczenie funkcji...
Mam problem z definicją właściwości klasy. Przy definiowaniu zmiennych w pliku .c wywala: "cannot convert 's_LcdTask*' to 's_LcdTask cLcdLocalRtl::*' in initialization" Oto moje pliki: lcd_local_rtl.class.h typedef struct s_LcdTask { uchar Code; uchar IsData; }; #include...
Witam Mam pytanie dla bardziej wtajemniczonych ode mnie. posiadam taki oto kawałek kodu : void test ( void) { static uint8_t xs ; static uint8_t ax ; static uint8_t a ; static uint8_t b ; locate(1,0); lcd_liczba&...
Witam, chciałby podglądać tablice bool oraz zmienna bool, jednak Stm Studio nie widzi tych zmiennych. Jeśli zmieniam typ na int zmienne stają się widoczne. W czym może istnieć problem? Z góry dzięki. [syntax=c]/* USER CODE BEGIN 0 */ bool mySwitches[16]; int mySwitches2[16]; int zmienna_int; bool...
Piszę program na Atmegę8 z zastosowaniem przetwornika ADC i poległem na zmiennych. Będę odczytywał wartość napięcie w zakresie 0,370 - 0,693 i zamieniał je na temperaturę. Zdjąłem charakterystykę f(v) = mc+b i próbuję zaprząc procesor do działania. Na razie przetwornik (chyba) nie...
Poczytaj sobie o zakresie widoczności zmiennych, bo bez tego daleko się nie zajdzie... Generalnie - jeżeli tworzysz i deklarujesz jakąś zmienną w Form1, to jest ona widoczna tylko i wyłącznie w Form1 - dlatego z Form1 możesz odwoływać się do Form2, 3 i 4, ale już nie odwrotnie. Jeżeli...
Witam Mam pytanie czy zmienne w RAMie po resecie z WDT pozostaja bez zmian. Microchip pisze: Reset - WDT Reset Effects l Effect of a Watchdog Timer reset l Starts execution at the reset vector l RAM locations unchanged l Some SFRs are initialized l POR, BOR in PCON unchanged l TO in STATUS...
Witam! Szanowni koledzy mam taki problem.Stworzyłem 2 klasy: 1 do odczytu RS232 druga to interfejs, oto kody: ODCZYT RS232 import gnu.io.*; import java.io.*; import java.util.*; //import javax.comm.*; public class termometr implements Runnable, SerialPortEventListener { static...
Ło matko skąd to masz :D W bardzo prostej formie może to wyglądać tak: [syntax=c]// nastawy const float Kr = 2.66; const float Ti = 1.1; const float Td = 0.28; // okres próbkowania const float Ts = 0.05; // nastawy dla cyfrowego regulatora const float Ki = Kr*Ts/Ti; const float...
Witam. Mam oto taki problem. Robię sterownik wykorzystujący protokół modbus ( // definicja struktury dla sterowników PID. typedef struct { unsigned int Ts; // stała czasowa regulatora float Kp; // wzmocnienie członu proporcjonalnego float Ki; // wzmocnienie...
Witajcie! Powoli posuwam się coraz dalej w budowie swojego projektu, niestety cały czas napotykam na drobne(?!) przeszkody. Przedstawię kolegom kompletny kod na narysowanie wykresu w javie na podstawie zmiennej temperatury pobranej z RS232. Program w terminalu działa , temperaturę pokazuje, buduje...
Sorki za program który tworze w oparciu rórzne gotowe procedurki. Jeżeli ja bym to robił o chyba wogle nie było by komentarzy. Niestety ale na studiach na informatyce jeszcze nienauczyli mnie komentazy i chyba nienauczą.. :( Pozdrawiam wytrwałych co mają chęć czytać mój kod. Aż...
Znalazłem i trochę przerobiłem - co prawda pod C# - algorytm z private static void swap(char[] s, int a, int b) { char temp = s[a]; s[a] = s[b]; s[b] = temp; } private static bool permute(char[] str, int len) { int...
Witam wszystkich. Czy to możliwe aby postawić działający tunel warstwy 2 dla klientów z wewnętrznym IP ? Chodzi o to, żeby komputery z sieci A i B widziały się nawzajem i rozsyłały broadcasty. Sieć A: ruter Asus N66U tomato (openVPN client tap0) WAN 192.168.66.3 --> modem LTE (lan192.168.66.1...
A faktycznie nie zauważyłem :/ Ale z funkcjami też można to łatwo zrobić: [syntax=csharp]public static void wypisz1() { Console.Write("0_1_2_3_"); } public static void wypisz2(int zm) { Console.Write(zm+"_"); } ...
Chciałbym Ci zaproponować trochę bardziej eleganckie rozwiązanie - bez delaya w przerwaniu i z sensownym debouncingiem: [syntax=c]#include <stdio.h> //dodajemy biblioteki, które umo¿liwiaj¹ korzystanie z procedur #include <math.h> #include <avr/io.h> #include <util/delay.h> #include...
Problem był już poruszany wiele razy w dziale "Mikrokontrolery Ogólne": _delay_us to makro, nie funkcja. Wymagane jest, aby parametr był liczbą stałą, w przeciwnym przypadku zostanie wkompilowana biblioteka liczb zmiennoprzecinkowych, a same opóźnienia będą nieporównywalnie dłuższe. Jeśli...
Ja tylko przypomnę o czym autor pisał na początku: Ale wydaje mi się że gdy będe w kazdym pliku robił Stałe stale = new Stale() to nowa instancja będzie w sobie zawierała zmienną ModułyAktywne która zawsze będzie == 1, a nie tak jak została zmianiona w np innym pliku. Jeśli dobrze...
Witam Mam pytanie dlaczego zmienna która inkrementuje się tutaj: [syntax=c] if(klawisz_wc... = 0; zawodnik_przejazdy_update(); ...
W Zmienne globalne — wiedz, kiedy są modyfikowane Zmienne globalne muszą być ostrożnie obsługiwane, gdy są używane z przerwaniami, ponieważ te są generalnie asynchroniczne. I jeżeli zmienna globalna jest modyfikowana przez ISR, może zostać zmieniona w dowolnym momencie. Musimy...
Javy nie znam za dobrze, ale zrobiłem coś takiego. Nie jest to zbyt piękny kod dlatego nie chciałem się chwalić :). Jest to bardzo wczesny "projekt". Teraz muszę zrozumieć jak Map się używa. [syntax=java]import javax.swing.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; ...
linked Error - undefined reference to 'konto::oprocentowanie_lokata' linked Error - undefined reference to 'konto::oprocentowanie_kredyt' gdzie static float oprocentowanie_lokata; static float oprocentowanie_kredyt; a błąd wyskakuje w miejscu : void konto::oprocentuj (void){ ...
W AVR GCC wszystkie zmienne globalne i statyczne są automatycznie zerowane i nie ma najmniejszej potrzeby ich inicjalizacji zerami. Jeśli natomiast definicja zmiennej znajduje się wewnątrz funkcji to już trzeba ją samemu inicjalizować. Co jest dosyć oczywiste, bo nie jest wtedy zmienną...
U Ciebie klasa CycloneData jest dość "dziwna" (choć w 100% prawidłowo zrobiona). Ma zmienne publiczne, których zawartość może być dowolnie odczytywane tak jak w Twoim kodzie. Zwracam uwagę, że przyjętą normą w Javie jest tworzenie tego typu klas w ten sposób, że wszystkie zmienne (zwane...
Kurs: C mamy typy: -podstawowe: typy znakowe, całkowite i rzeczywiste -pochodne: wskaźnikowe, tablice, struktury, unie. Typy i zmienne całkowite Rozmiary zmiennych danego typu Użycie powyższych typów w połączeniu z signed, unsigneddaje, short i long...
Obiekty oznaczone jako static są widoczne tylko w obrębie lokalnego modułu. Nie można eksportować funkcji statycznych tak samo jak nie można modyfikować zmiennych const. Jeśli funkcja ma być eksportowana, musisz zrezygnować ze static.
Witam, program na pewno sie wywali z powodu odwolania do elementu spoza tablicy, wynikajacego z co najmniej 2 bledow inicjalizacji: #1 int ile; //... i zaraz potem: pedzel[13]=CreateSol... #2 static int ... przyciskanie; //... i kawalek...
Witajcie, mam problem nad którym siedzę juz kilka dni i zatrzymałem się nie wiedząc gdzie tkwi problem. Otóż chcę obsługiwać zegar RTC PCF8563 po I2C - czytać i zapisywać z niego dane (datę i czas). Projekt mam podzielony na kilka plików, całość pisana w Code Blocks 10.5 i kompilowana...
Jak klasę NumberExample i IntegerExample zmienię na static to nie ma błędu kompilacji. Ale zmienna j która używa tej klasy jest zle wyswietlana pisze zad2integerexample(at)adrespamieci. Jak nie zmienię kodu to sie nie skompiluje. Chodzi o to żeby utworzyć typy kopertowe takie jak w jdk i użyć...
Wszystkie przykłady sa złe ponieważ zmienne są deklarowane jako zmienne automatyczne w body funkcji. Jeśli taka funkcja zakończy działanie, jej zmienne z natury ulegają unicestwieniu. Tak więc nie trafimy zwróconym wskażnikiem do zawartości zmiennej. Inaczej mówiąc po co nam zwrócony...
1. Podrzucę Ci pomysł, pomocny lub nie. Zrobiłem PWN Atmega8 (czyli straszny dziad) generator miłego dla ucha sinusoidalnego dźwięku (w oparciu o przerwanie timera). Czystość uzyskałem, gdy na samym początku przerwania ustawiałem wartość ze zmiennej do PWM, a potem mogłem ją sobie opracowywać...
Kod wygenerowany przez kompilator wykonuje na wejściu do procedury jedną operację przydzielającą ze stosu pamięć na wszystkie zmienne lokalne automatyczne (takie, które nie są deklarowane jako static), w tym są zmienne, których w programie w C nie ma - nie zawsze są potrzebne, ale pewnie...
Witam wszystkich! Mam taki oto problem. Łączę sie z at89c51/52 poprzez rs232. posyłam w kodzie ascii na ośmiu bitach cyfry. W programi odczytuje je i zapisuje do zmiennej. Niestety wartości zmiennych zmieniają się w kilka linijek po przypisaniu im tych wartości. Dokładniej mówiąc zmienne...
To zależy, co rozumiesz przez "lokalna". Pod względem zasięgu - lokalna, pod względem czasu życia - należy do sekcji statycznej, w której są wszystkie zmienne globalne, a nie do auto, w której są argumenty i i zmienne lokalne funkcji bez atrybutu static. Jeśli nie włączymy wściekłej...
przy jakiejs zmiennej nie dopisales static (przetlumacz sobie na polski i bedziesz wiedzial co znaczy error)
Kompilator sam zadba o to, żeby w pliku wynikowym nie znalazły się nieużywane zmienne, nie trzeba nic kombinować poza upewnieniem się, że jest włączona optymalizacja. Nieprawda. Po pierwsze nie kompilator o to zadba, tylko linker (kompilator nie wie, czy inne pliki nie używają danej...
Witam Mam problem z WinAVR, pisze program na ATMega8, używam zmiennej stan do oznaczania aktualnego stanu programu: static unsigned char stan = CZEKAJ; Pomimo że jest ona ostro używana w przerwaniach przy kompilacji dostaje komunikat: ../sensor.h:36: warning: 'stan' defined but not used...
Podejrzewam, że najwięcej problemów robi to: pamieci przydzielonej dynamicznie nie zwalniam i jak widać jest kaszana.tylko jak rozumiem musialbym to zrobić poza funkcją substr? Jeśli zaczniesz zwalniać pamięć poza funkcją substr, to łatwo narobić błędów typu wycieki pamięci (kiedy...
Napisz proszę czy należy także deklarować PIND2 (INT0) i nadać mu wartość wejściową? POPRAWIONY KOD: [syntax=c] #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> #define KEYS4RGB (1<<PB0) #define KEYS1R (1<<PB1) #define KEYS2G...
Można użyć słownika Witam po przerwie. Mam jeszcze jeden problem. Wydaje mi się że ta opcja ze słownikiem będzie najlepsza. Więc chciałem ją przetestować i zrobiłem na szybko taki oto kod: listaKlientow wywala błąd: 'System.Net.Sockets.TcpClient' does not contain a definition...
Witam Mam mały problem z zakresem ważności zmiennych w przerwaniach. Nie mogę zmienić wartości OCR0A za pomocą zmiennej a; Załączam kod, zawiera się w kilku plikach. Błędów nie zgłasza. Przerwanie reaguje na przycisk w praktyce, jednak nie zmienia wartości 'freq' ISR(INT0_vect) ...
Witam, Napisałem program, który wydaje się być w porządku (taki mały paint) na podstawie dostępnych w necie. Niestety w żaden sposób nie wiem jak zrobić aby zmienne i oraz j, które dodałem jako pomocnicze (przy kliknięciu w przycisk "zmiana tła" wartość wzrasta ze zmianą koloru)....
Zmienna static w pliku nagłówkowym? WOW. extern poczytaj...
Należy unikać zmiennych globalnych. Zastanów się nad rozwiązaniem: [syntax=c]typedef struct { int zmienna_globalna; long druga_globalna; } MojeGlobalne; MojeGlobalne *globalne() { static MojeGlobalne ret; return &ret; } void funkcja(int zmienna) { if(zmienna) led_on(); ...
Witam, czy mógłby mi ktoś pomóc w zamianie zmiennych globalnych na statyczne? Mój program rozwiązuje wieże Hanoi rekurencyjnie i w tym jest głównie problem, nie mam kompletnie pomysłu w jaki inny sposób można to zrobić. #include <stdio.h> #include <string.h> int liczba...
Witam! Dopiero mam okazję spróbować. Na początek przemianowałem HardFault_Handler na static void __Default_Handler(void) i dopiero po tym program padając wchodzi do w/w funkcji. W orginalnej formi nic się nie działo. W zmiennych których? Zrobiłem zrzut ekranu ze stanem po zatrzymaniu. W zmiennej...
Wygenerowany jest bezpośrednio z CooCoxa Linkera tutaj nie ma chyba jest zaszyty w środowisku. Wersja CoIDE to: Version: 1.7.8 [syntax=c] /** ****************************************... * (at)file startup_coide.c * (at)author Coocox * (at)version...
Witam. Uczę się języka c i prosiłbym o rozwianie pewnej wątpliwości: [syntax=c] static int tab[2][3]; printf("\n\n%d %d %d\n\n",&tab,tab[0],&tab[0][1]); [/synt... zapis &tab jest równoważny z tab? tab jest adresem podtablicy tab[0] więc czy napiszę tab czy *tab to uzyskuje...
[syntax=c]#include <cstdlib> #include <iostream> #include <string> #include <conio.h> using namespace std; class MyClass { public: float my_function(float arg1, float arg2) { static float my_static_var = my_static_var + arg1 + arg2; return my_static_var; ...
Witam. Nie bardzo rozumiem o co ci chodzi. To jest mikrokontroler 8 bitowy i pamiec jest zorganizowana w komorki 8 bitwe. Wiec jesli chcesz zapisac np zmienna typu int robisz to tak: zapis gornych 8 bitow -> zwiekszasz adres -> zapis dolnych 8 bitow/mozesz i odwrotnie ,zalezy to od twojego zapisu...
To co niżej zasugeruje nie musi Ci pomóc ale spróbuj wykonać. Zmienną globalną zadeklaruj jako: static volatile DATACNT W ten sposób powiesz kompilatorowi aby ochronił jej stan przed przypadkową modyfikacją. Z problemem nie panowania nad wartością zmiennej globalnej sam biłem sie tracąc...
static uint8_t kroczek; static uint8_t pol_kroczek=0; Czyli w pierwszym wypadku mam 0 bo tak jest zgodnie ze standardem. A w drugim nadaję wartość 0 i zajmuje się tym linker i skrypty startowe.
Witam! Robię program w WinApi który odczytuję jakąś zmienną long int z pamięci funkcją [syntax=cpp]ReadProcessMemory(hProcess, (LPVOID)pamiec, &zmienna,sizeof(long),0); [/syntax] następnie stworzyłem sobie pole statyczne [syntax=cpp] HWND hStatic = CreateWindowEx (0, "STATIC",NULL,...
Nie wiem dlaczego ale kompilator w Atmel Studio 6.2 twierdzi że zmienna X została już zdefiniowana. Mam wiele takich błędów a według mnie jest wszystko dobrze napisane. Plik główny (main): test_program.c [syntax=c] #include <avr/io.h> #include "secondFile.h" void autoSetSystemData(void); void...
Pokaż swój kod bo bez tego nie wiadomo kompletnie co robisz źle. W C wystarczyłby atrybut "static" dla zmiennej lokalnej - dzięki niemu zapamiętywany jest jej stan przy każdym obiegu pętli.
static int^ rozmiarTablicy=0; zamień na static int rozmiarTablicy=0;
Witam, mam problem ze zrozumieniem zmiennych w TIA PORTAL w bloku FB. Nie za bardzo orientuje się czym różnią się zmienne Static i Temp. W jakich przypadkach używamy jednej a w jakich drugiej? Pozdrawiam
Czytam, czytam, a Java nie jest mi obca, i nie umiem zrozumieć. 1. Nic w świecie Javy nie kojarzy mi się ze słowem "klasa podrzędna". Jest koncepcja klasy wewnętrznej, jej mutacja może być anomimowa. Czasem używa się słowa "zagnieżdżona". Może być "static", tzn zdolna do powołania niezależnie...
Cześć, Mam taki fragment kodu: [syntax=c] static const volatile uint32_t systick = 0; uint32_t GetTimeUs(void) { return systick; } void HAL_SYSTICK_Callback() { systick++; ... się nie kompiluje, dostaję taki błąd kompilacji. [syntax=c]../Application/Ti...
Cuda się dzieją i to niesamowite : Watt.c #define F_CPU 1000000UL // 1 MHz #include <avr/delay.h> #include <avr/signal.h> #include <avr/interrupt.h> #include <avr/io.h> #include <inttypes.h> #include <stdlib.h> #include <math.h> #include "Watt.h" #define...
Zastosowałem się do tych porad jednak pojawił się inny problem - Moja tablica znaków stałą się strasznie zdeformowana, literki są strasznie nieczytelne. Czy istnieje jakiś inny sposób odczytywania tak zadeklarowanych zmiennych? (Funkcja GLCDChar(x) wyświela x-ty znak zdefiniowany w tablicy...
(...) .db "Jakis napis",0x0a,0x0d, 13,12, 0 lpm acc, z (lub z+) A co to za potworki? Znak końca linii (i do tego windowsowy :/) też nie jest potrzebny, wystarczy samo zero, chyba że urządzenie komunikuje się z windowsowym terminalem tekstowym przez rs-232. I skąd się wziął akumulator...
nie wiem czy static dziala dla zmiennych globalnych tak samo jak dla funkcji, ja to tam dalem bo myslalem, ze pomoze, bez tego tez nie dziala. Dodano po 9 dodanie volatile w main robi cos dziwnego: extern volatile TFrame Frame; void main (void) { (...) ...
A ta zmienna globalna napewno wypełniona danymi jest? Bo zrobiłem mały teścik: basemodule.h: typedef struct { uint8_t blockParam; uint8_t signedMove; uint8_t deviceInitialAddress; } glob; uint8_t returnBlockParam(void); basemodule.c: volatile static...
tzn jak mam zwrócić przez wartość? możesz to zapisać? globalnie nie chce bo to sie z celem mija. próbowałem ze static char temp[10]; ale nie działa. dlaczego?
Yagi009 - tak jak pisze FCh zmienne static sa inicjowane implicite na 0, chyba, ze to zmienisz definiujac je inaczej. Nie ma wiec sensu ich inicjowac, jesli poczatkowa wartoscia ma byc 0 - to nie tylko jest bez sensu, ale proewadzi do wydluzenia kodu - czasami optymalizator da ciala i twoja ponowna inicjalizacja...
Witam, Ja co prawda już od dawna w C++ nie piszę, ale najlepiej pewnie będzie skorzystać z jakiejś dedykowanej biblioteki. Szybkie szukanie wskazuje, że dla C++ jest to np. biblioteka libpq Tutaj znajdziesz szczegóły biblioteki: [url=] a tutaj przykład użycia: [url=] lub tutaj: [url=]
Dziwny ten twój program. Po pierwsze wywal te swoje procedury obsługi EEPROM i użyj tych z biblioteki AVR-libc, wyeliminujesz jedną z możliwych przyczyn. Poza tym w przerwaniu nie używaj cli i sei, nie jest to potrzebne - wejście w przerwanie automatycznie blokuje kolejne. sei() na końcu może...
Witam mam taki kod do obsługi wyświetlacza LED i jest problem w funkcji led_dec: #include <avr/io.h> #include <avr/interrupt.h> #include <avr/pgmspace.h> #include "led_lib.h" #define SEG_A (1<<1) #define SEG_B (1<<2) #define SEG_C...
Potrzebujesz: " RM0041: STM32F100xx advanced ARM-based 32-bit MCUs " -> www.st.com To też będzie potrzebne: " DS6517: Low & medium-density value line, advanced ARM-based 32-bit MCU with 16 to 128 KB Flash, 12 timers, ADC, DAC & 8 comm interfaces " i to (zakładam ,że to chociaż już...
No właśnie- kłócicie się o bajty a całe moje rozumowanie idzie chyba o kant... potłuc. tmf podał w swojej książce opis menu- dość rozbudowany, z podmenu i innymi bajerami. Kod jest na ftp Helionu. Obsługuje się to enkoderem z przyciskiem. Jak się jest na określonej pozycji to naciśnięcie...
Mam funkcyjke która przeprowadza odczyt z karty sd/mmc nigdy mimo tego, że dokladnie tak samo jest tworzona strukturka do crc na stosie, co lepsze, w identyczny sposób jak w testreadblock. Info: STM32F103RET6 FreeRTOS 6.0.2 Main stack: 0x2000 //bylo mniej, zwiekszylem na test Heap: 0x6000...
Witam, czytając książkę "Język C dla mikrokontrolerów AVR" natknąłem się na stronie 313 na przykład migania diodami led w przerwaniu od timera. Bardzo proszę o wytłumaczenie mi dlaczego w przerwaniu definiowana jest na początku zmienna LED, z tego co rozpisałem sobie na kartce wynika że...
Po zmianie cykle_w z int na unsigned int, nie ma tych błędów, ale potrzebuję w tej zmiennej przechować też wartości ujemne, zresztą nawet mimo tej zmiany nie mogę przekroczyć 255, nie wiem już czy to coś z tą funkcją, czy mam tak nawalone w kodzie. EDIT: Jednak to była wina itoa,...
Subtelny byk nie daje mi spokoju od kilku dni. Chodzi o multplexowanie wyświetlaczy. W chwili gdy zmienne dig_1...3 przychodzą do procedury wyświetlania LED_DSP z wartością =1 to z tablicy pobierana jest wartość z zerowego adresu. Pojawia się chaotyczne miganie 1 i 0. Jeśli jednak wartość...
Ściśle mówiąc będą wywoływane przez timer Ściśle mówiąc to funkcja obsługi przerwania (od przepełnienia/porównania) timera będzie na nich wykonywała jakieś operacje (np. zapisu) Problem polega na tym, że gdy tylko dostaną przydomek "static" ich objętość rośnie Jak umieszczasz...
Uczę się programować w Visual Studio C#. Napisałem program odbierający dane z układu mikroprocesorowego. Dane to wartości temperatury z czujnika. I tu pojawił się problem gdyż odebrane dane z RS232 są typu string i przy wyświetlaniu otrzymuje znaki ASCII. Próbowałem sposobów z konwersją...
W programie jest pewien błąd - zmienne prywatne dla modułu powinny być deklarowane z atrybutem static. Zgaduję, że gdyby zmienna o chorej nazwie "div" miała atrybut static, problemu by me było. Z drugiej strony nazywanie zmiennej w ten sposób jest proszeniem się o problemy - z dużym prawdopodobieństwem...
Chodzi mi o to, że mam układ hardware, gdzie segmenty wyświetlacza podłączone są część do portu D, część do Portu B. W necie Jest wiele opisów programów ale wszystkie pokazują jak działa program kiedy wszystkie segmenty wyświetlacza są podłączone do jednego portu. Zaprezentuje kawałki...
Witam próbuję zrozumieć zasadę działania zmiennego kodu Keeloq. Poniżej stworzyłem taki wstępny kod, który na razie odpalam na kompie. Czy ktoś mógłby w niego spojrzeć i powiedzieć czy to jest keeloq? Docelowo będzie to wykonane na procesorach microchipa tak więc licencja producenta...
Ad 1. [syntax=c]try { // tu wstaw te wszystkie konwersji } catch(...) { richTextBox1->Text = "niepoprawne dane"; }[/syntax] Ad 2. A czego się spodziewasz skoro nadpisujesz po każdej wartości? Metodę AppendText znasz i używasz, jak widzę, więc chyba nie rozumiem pytania. Oprócz...
Marico: wszystkie zmienne globalne w C są również statyczne. Atrybut static użyty w deklaracji na poziomie zewnętrznym oznacza zmienną statyczną prywatną dla danego modułu, brak tego atrybutu - zmienną statyczną globalną. Nazwa tego atrybutu - to zaszłość. Powinien on się nazywać private. Zmienna...
Czy można się jakoś przed tym zabezpieczyć ? W skrypcie linkera należy włączać sekcję poprzez zapis:[syntax=c]KEEP (*(.nazwa_sekcji))[/syntax] albo użyć atrybutu 'used':[syntax=c]static const int dummy __attribute__((__used__)) = 1234;[/syntax]
Witam wszystkich zainteresowanych, w piątek będąc jeszcze w pracy opisałem problem, a przez weekend nie miałem możliwości usiąść choćby na chwilę w domu do problemu, instytucja piękniejszej połówki skutecznie o to zadbała ;) Co do problemu: - Zestaw .c i .h ze zmiennymi jest generowany...
Kod konfiguracji niestanowi tajemnicy ponieważ generuje go automatycznie CubeMX i dlatego go nie wstawiałem. Procesor taktowany jest 72MHz, SPI na 9MBits/s, CPOL-low, CPHA-1 edge.[syntax=c]static void MX_SPI2_Init(void): { hspi2.Instance = SPI2; hspi2.Init.Mode = SPI_MODE_MASTER; hspi2.Init.Direction...
Sory, ale na tym poziomie dyskusja nie ma sensu. Jak będziesz miał coś konkretnego do napisania to możemy kontynuować. OK konkretnie to draft ISO/IEC DTR 18037 wprowadza pewną wiedzę na ten temat do kompilatorów obsługujących tego typu rozszerzenia. Z tym się chyba zgodzisz. Zresztą...
Wątpię, by bez specjalnej deklaracji był tylko we flashu. W czystym C tego nie da się zażądać ( To prawda, czyste C nic nie wie o żadnych FLASH-ach, stosach, RAM-ach i innych (dotyczy to też sekcji, segmentów itp). Ale w realnym życiu używamy konkretnych implementacji, które coś...
Tak już uroda C. I bardzo dobrze ;). Różnica polega tylko na dostępności zmiennej. Statyczna lokalna zmienna dostępna jest tylko w ciele funkcji, zmienna globalna dostępna jest dla wszystkich funkcji zapisanych w tekście programu po deklaracji tej zmiennej? O, już ktoś odpowiedział.
Co oznacz "static" przy dekalracji zmiennych np. static unsigned char zmienna=0; Jest cos takeigo np: #include <sfr51.h> void main () { //ustawienie parametrow przerwania od Timera 0 TMOD=0x01; TR0=1; ET0=1; IP=0x02; //najwyzszy priorytet dla...
Zmienna static to podobnie jak zmienna globalna z tą różnicą, że widziana tylko w jednym module. Czyli piszesz procedure i definiujesz ją jako static. Po wyjściu i ponownym wejściu do procedury posiada ona wartość taką, z jaką ją zostawiłeś przy wychodzeniu. W odróżnieniu od zmiennej...
O ile rozumiem ta zmienna to zmienna lokalna zadeklarowana w funkcji. Tak. Użycie niezainicjalizowanego obiektu mającego "automatic storage duration" jest UB Czyli jednak. Taka prosta rzecz, a tyle problemów. 90% czasu spędzam teraz z C#, który w sytuacji niezainicjalizowanej zmiennej...
Przystąpiłem do lekcji 10. Zrobiłem analogiczne poprawki, jak w lekcji 9, ale niestety również nie mogę skompilować kodu. Poświęciłem praktycznie cały dzień na szukaniu przyczyny. Pojawiają się takie błędy przy kompilacji: Tutaj zamieszczam kod programu po moich poprawkach: ...
Witam Od pewnego czasu zajmuje się komunikacją ATMEGI 328P i komputera poprzez popularny prot COM. Napisałem własny program w C++, który odbiera pewne dane od ATMEGI. W programie użyłem struktury DCB Winapi. Jako, że Atmega nie odzywa się nie pytana użyłem timera, który sprawdza czy przypadkiem...
AVE... Wszystko świetnie, ale co będzie, jak jakaś funkcja będzie musiała czekać na określone zdarzenie? Trza pisać program tak, by nie czekała, a jedynie sprawdzała, czy zdarzenie miało miejsce... Można to uprościć eliminując skoki warunkowe IF i SWITCH, i pisząc po prostu klasyczny...
Problem czesciowo rozwiazalem deklarujac funkcje EnumWindowsProc jako statyczna, wtedy nie wywala bledu i funkcja EnumWindows ja wywoluje. Jednak nie mage wstawic do ciala funkcji EnumWindowsProc zadnych zmiennych aby zwrocony wskaznik HWND zapamietac ,wyzuca blad nawet ja to sa zmienne statczne: dupa...
Jeśli stale to wykasuj z opcji: [syntax=c] case Nic:{ lcd.print(" "); break; } [/syntax] czyszczenie ekranu spacjami. Tu ewentualnie powinien być zliczany timeout, czyli jakaś zmienna co np. 1ms i jak przez 10s (z delay...
Warto dodać, że jak od każdej reguły, także tu są pewne wyjątki - w plikach nagłówkowych czasami umieszcza się definicje funkcji static inline - efektem jest osadzenie w kodzie dołączającym nagłówek tychże funkcji, można także umieszczać definicje zmiennych static const - takie zmienne...
zastanawialem sie w jaki sposob zrobic obsluge sterowania 3 przyciskami np. do ustawienia zegara czy czegos tam... myslalem nad sposobem 3 przyciski przycisk 1 podpięty pod przerwanie int , przelaczanie w sposob: -ustawienie godziny -ustawienie minuty -wyjscie z ustawienia (i wyswietlanie czasu) przyciski...
od tego są flagi UARTU. Odbiór w przerwaniu odbierasz tylko znak, i instrumentujesz zmienna static oznaczająca ilość danych już odebranych, gdy odbierasz 0x55 (początek ramki - nigdzie indziej nie może zostać przypadkiem wysłana) zmienna ustawiasz na 0. dalej dekrementacja licznika dalej warunek...
Musisz mieć zrobione przerwanie dla tego PWMa i w przerwaniu zmienna 'static' inkrementowana za każdym razem. I przy 499 zmieniasz wartość rejestru, pamiętaj tylko że wartość wpisujesz do 'shadow register' a nie bezpośrednio do rejestru PWMa (inaczej będziesz mieć "niespodzianki" na wyjściu...
Udało się. Nie wiem jak to zrobiłem. Jestem w tej chwili w takim szoku pozałamaniowym, że ciężko mi się skupić na pisaniu. Ale zostawię tutaj rozwiązanie dla potomnych, krok po kroku. Otóż. Najpierw inicjuję w main'ie przerwanie dla przycisku, który ma włączać diodę. void...
janbernat ---> eeej no co ty opowiadasz że traktuję cię jak początkującego czy jeszcze gorzej jak piszesz - bzdura! Po prostu wiem też że zaczynasz chyba pisać w C i stąd może jakieś dziwne czy nieoczekiwane dla ciebie rzeczy się dzieją. Np dodawanie przydomka volatile do zmiennej static...
No to postarajmy się te wrażenia sprowadzić trochę do meritum. Jak od podstaw- to na str.354 wiersz 10 jest tak: "Przed uruchomieniem programu należy zdefiniować funkcje związane z obsługą ..." itd. Gdzie zdefiniować- ani słowa. No dobrze- doszedłem i zdefiniowałem- ustawiam sobie port...
Poszukaj po haśle "maszyna stanów" albo "automat skończony". ] Ja tylko dodam, że maszyny stanów też opierają się na zmiennych "static" definiowanych de facto jako globalne z widocznością tylko w procedurze gdzie zostały zadeklarowane. Niemniej faktycznie dobrym rozwiązaniem jest obsługa...
Wybierasz timer, który Ci pasuje, a który ustawiłaś na stały okres. Ustawiasz przerwanie od przepełnienia tego timera, a w przerwaniu za pomocą lokalnej zmiennej static zliczasz czas i reagujesz wtedy, gdy uznasz za stosowne. ... albo kombinujesz jak zwolnić któryś z timerów.
Przy deklaracji zmiennej 'static', wszystkie kolejne instancje dzielą tą samą wartość. Jako,że przypisanie T2.x zostało dokonane wartością 30, to odczyt zarówno T1.x jak i T2.x będą dokładnie takie same = 30. Nie ma znaczenia jaka była poprzednia wartość przypisana przy tworzeniu T1.
Witam Czy istnieje w modułach bluetooth coś w stylu flagi nawiązania połączenia tzn. master zapala flagę gdy sparuje się ze slavem, a gasi ją gdy połączenie zostanie przerwane? Program miałby działać tak: Po nawiązaniu połączenia między mikrokontrolerami (ATmega32A i ATmega8L)...
A potrafisz opisać prezentację bardziej merytorycznie? Za bardzo twoja wypowiedź przesiąknięta jest emocjami i negatywnym podejściem niż rzeczowym wypunktowaniem elementów które są błędne, niedopowiedziane, czy technicznie niepoprawne. Nie złapałem prezentacji na żadnej "twardej"...
Jak mogę obsłużyć przerwanie tak, aby sygnał wykonywał się zadaną ilość impulsów. Np 10 impulsów i sygnał kończy gnerowanie Liczyć w przerwaniu do 10 i np wyłączyć je (znam dwa sposoby, przez NVIC lub wyłączyć timer). Można też w przerwaniu przestać robić to co robiłeś...
Witam Porwałem się na robienie własnego sterownika co i stanąłem w martwym punkcie. Mianowicie sterownik składa się z 2 płytek na których są Atmegi 16 taktowane zewnętrznym kwarcem 11.059200 + kwarc zegarkowy jeden układ odpowiedzialny za odczyt temperatur regulację fazową wentylatora...
Witam, Pojawił się ostatnio u mnie taki problem. Otóż odczytuję z przetwornika ADC ATmegi16, z kanału ADC0 wartość napięcia (od 0 do 5VDC). Wyświetlam sobie wynik konwersji na LCD i wszystko ładnie działa (liczba na LCD zmienia się w zakresie od 0 do 1023, jak kręcę potencjometrem)....
heh wydawało mi sie że skorzystanie z gotowca będzie łatwiejsze niż pisanie tych funkcji od podstaw :) listing pliku keyb.c [syntax=c] //****************... Plik: keyb.c // // Zaawansowana obsługa przycisków i klawiatur // Wersja:...
keyb.h [syntax=c] //******************... // Plik: keyb.h // // Zaawansowana obsługa przycisków i klawiatur // Wersja: 1.0 // Licencja: GPL v2 // Autor: Deucalion // Email: deucalion#wp.pl // Szczegóły: ...
Temat wyznaczony do dyskusji o obsługiwanych za pomocą tej biblioteki . Link do biblioteki: Mam problemy z zaimplementowaniem powyższej biblioteki do ATmega8. Napisałem już całość jak mi się wydaję, ale jakoś nie chce to działać: Program kompiluje bez błędów, wgrywam też...
Witam Panie Krzysztofie Minął jakiś czas od naszych dyskusji na YT - miałem sporą przerwę przy pracy z projektem ale wracam do kontynuowania tematu. Po zmianie/przestawieniu stron (kolejności) podziały się problemy z którymi nie jestem w stanie sobie poradzić. Zegar, lampy i termometry...
Dzien dobry. Piszę bootloader do procesora atmega32. Bootloader ma dzialać w terminalu więc konwersja ascii -> hex jest przeprowadzana w mikrokontrolerze. Po uruchomieniu, program ładnie się przesyła, wszystko wydaje się być OK. Po resecie jednak nic się nie dzieje. Skopiowałem całą zawartość...
Witam drogich forumowiczów, jeszcze nie znam się na programowaniu uC dlatego proszę o pomoc. Czy mógłbym prosić o scalenie poniższych programów i ewentualne wytłumaczenie. Chodzi o dodanie efektu Rainbow RGB, tak aby wyświetlał się w pierwszej kolejności. Matryca LED RGB 32x16 RainbowRGB...
Mam problem z połączeniem funkcji chodzi o to zeby wyswietlacz był aktualizowany w pętli while(1), jednak gdy umieszczę ten fragment kodu wynik=7654; LEDDIGITS Dodano po 4 Poniżej daje oryginalne kody obrotomierz: [syntax=c]/* OBROTOMIERZ v.1 Obrotomierz przeznaczony do...
Witajcie moi drodzy. Zapraszam na relację z postępów prac nad otwartym firmware dla BK7231T. Temat ten napisany będzie w formie tutoriala, przedstawię tu krok po kroku jak opracowałem własny, wieloplatformowy (działający na Windowsie i BK7231T) mini-serwer HTTP, system konfiguracji...
Witam. Co oznacza ostrzeżenie: "dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]". Widać w kodzie że odnośi się do makra LD_WORD W odnośniku załączam cały projekt. Pojawia się on w kilku miejscach kodu: [syntax=c] plik pff.c Ostrzeżenie występujew...
Przystąpiłem do lekcji 10. Zrobiłem analogiczne poprawki, jak w lekcji 9, ale niestety również nie mogę skompilować kodu. Poświęciłem praktycznie cały dzień na szukaniu przyczyny. Pojawiają się takie błędy przy kompilacji: Tutaj zamieszczam kod programu po moich poprawkach: ...
Witam. Rozpocząłem przygodę z programowaniem układów STM32F4. Nabyłem płytkę XNUCLEO-F401RE (kompatybilną z NUCLEO-F401RE) oraz skorzystałem z kursu który znajduje się pod tym linkiem [url=] Otóż wykonałem krok po kroku identycznie jak kazano w kursie ale u mnie program wykonuje...
Witam Po 2 dniach walki z wiatrakami postanowilem zwrocic sie o pomoc do kogos doswiadczonego, gdyz moja cierpliwosc sie wyczerpala. Przeszukalem internet, przeczytalem ksiazke i wszystkie rozwiazania jakie znalazlem zdaly sie na nic. Napisalem prosty programik majacy na celu sprawdzenie placzenia...
Witam potrzebuję wykonać obliczenia CRC do modbasu w bascomie, ale chciałbym zrobić to za pomocą tablicy. znalazłem przykład na elektrodzie: ale niestety jest w języku C a ja go nie znam. Sięgnąłem po książke do C ale pomimo to nie jest dla mnie wszystko wiadome. czy mógłby mi kotoś...
Zauważyłem, że Malolatt pisał też coś o użyciu putchar, więc wykorzystam to jako pretekst i przedstawię własną wersję programu, chociaż już dawno nic w C nie pisałem. Pozwolę sobie też na skomentowanie tego i owego w nadziei, że jeśli zrobię gdzieś pomyłkę to beluosus się...
Witam, Napisałem program obslugi korzystająć z dokumentacji czujnika oraz kursu dla Arduino (dostosowałem go do `51). Problem polega na tym, ze żadna z danych kalibracyjnych odczytana z EEPROMU nie może mieć wartości 0x00 lub 0xff, moje wyniki są następujące: BMP085 inicialization OK! msb=1d...
Siemka. Prosze bardzo o pomoc. Mam zrobić na zajęcia sprawozdanie i odpowiedzieć na pytanie. " jaką najniższą częstotliwość przerwań może generować timer TC0? " Odpowiedz chyba 0,27Hz. Ale skąd się to bierze. Poniżej podam dokładne polecenie i rozwiązanie. Prosze o odpowiedzenie na...
Generalnie kod nie wygląda tak źle. Jak na początkującego, to muszę nawet pochwalić! Formatowanie poziome i rozdzielenie różnych części programu białymi znakami na duży plus. Bardzo wiele osób ma z tym problem, mimo tego, że nowoczesne IDE dbają o to praktycznie same. Kilka uwag się...
Cześć ! Dziś chciałbym zaprezentować swój najnowszy projekt, którym jest świąteczna choinka LED. Jako, że według świątecznego zwyczaju swoich bliskich obdarowujemy prezentami ów ozdoba została wykonana dla moje dziewczyny, która bardzo lubi klimat świąt i wszystkie ozdoby z nimi...
Dzień dobry, Dopiero zaczynam swoją przygodę z uC, mniej więcej ogarniam język C i stanęło przede mną zadanie napisania kodu sterownika do diod WS2812B. Wiem, że na temat tych diod było już sporo wątków na forum, więc będę się streszczał. Sercem sterownika ma być docelowo mikrokontroler...
Serdecznie dziękuję za odpowiedź rb401. Zmodyfikowałem kod: warningi znikają po usunięciu volatile sprzed deklaracji zmiennej buf1, ale nic się nie pojawia w terminalu Dodano po 36 To trochę dziwne, bo wychodzi na to, że kompilator krzyczy, że zmienna uint8_t buf1 jest niezgodna...
Sorry, wydawało mi się, że będzie czytelniej. [syntax=c]/* USER CODE BEGIN Header */ /** ****************************************... * (at)file : main.c * (at)brief : Main program body ****************************************...
Witajcie moi drodzy. Przedstawię tutaj teorię i praktykę implementacji wsparcia protokołu TuyaMCU. TuyaMCU to protokół oparty o UART, służący do komunikacji modułu WiFi z głównym mikrokontrolerem urządzenia Tuya. Protokół ten wykorzystywany jest w wielu produktach IoT, m. in....
Witam, jest to fragment mojego ostatniego projektu, gdzie potrzebna była obsługa "surowej" klawiatury. Wrzucam bo może się przydać osobom chcącym obsłużyć podobną lub taką samą klawiaturę. uc ATMEGA 32 schemat podłączeń klawiatury: X3 - kbd conn - numery pinów odpowiadają...
Cześć, chciałem przeportować kod do odbioru RC5 autorstwa Dondu za ATMega8 na ATTiny13 - REzystory diod 470Ω, nie zmieniłem na schemacie. Pilot samoróbka, ale 100% pewniak. No więc w czym problem? Uruchomiłem przykład na ATMega8, wszystko pięknie śmiga. Program kompiluje się...
Jako, że od niedawna sam uczę się dopiero C, to proszę bardzo poniżej, najpierw kod do odbiornika RC5. Sprawdzony, krótki i odporny na zakłócenia oraz kody z innych pilotów - działa wyśmienicie i w ciekawy sposób wykorzystuje bit TOGGLE: // zmienne do obsługi kodów IR w standardzie...
Witam, na wstępie dodam że jestem bardzo początkujący w programowaniu. Staram się stworzyć program który by włączał i wyłączał funkcję RGB, poprzez pilot RC5. Staram się to zrobić po kolei i najpierw próbuję gasić i zapalać pilotem diodę. Problemem jest to, że program reaguje na...
Dobra. Kod prezentuje się następująco: to jest program w którym wszystko działa jak potrzeba: [syntax=cpp]//Data utworzenie: 20-09-2014 #include <avr/io.h> #include <util/delay.h> #include <stdlib.h> #include <avr/pgmspace.h> #include "MYUART/myuart.h" #include...
Witam Czy ten program ma prawo działać na ATtiny2313 z wewnętrznym oscylatorem RC o wartości 8MHz jako sterownik silnika bipolarnego, gdyż po podłączeniu do l293d sterownik się strasznie grzeje a silnik delikatnie przekręci się o jeden krok a następnie przerwa i jeden krok do tyłu. [syntax=c]/* ...
Witam, Mam problem z zapisem i odczytem do EEPROM łancucha zmiennych typu char Atmega162, avrgcc, program symuluje w winavr + hapsim + virtual port kit char ipaddress[16]; char ipaddress_odczytany[16]; char portnumber[6]; char portnumber_odczytany[6]; char.....
Oto i źródło, może Wy zauważycie coś dziwnego... [syntax=c] // PINY WEJŚCIOWE #define ZIELONA PIND5 #define CZERWONA PIND6 #define DEBUG_PORT PORTD #define DEBUG_DDR DDRD #define ZOLTA PIND3 #define KL_PORT PORTC #define KL_PIN PINC #define KL_DDR DDRC #define...
Poniższy projekt to pierwsze urządzenie zrealizowane przez autora z wykorzystaniem modułu Arduino. Układ ten służy do obróbki sygnałów MIDI tak, aby możliwe było granie w skalach mikrotonalnych, to znaczy odrobinę odstrojonych od podstawowej skali z wykorzystaniem dodatkowej funkcjonalności...
No to radziłbym się zaznajomić z tego typu pojęciami bo są to podstawy. Otóż w języku C mamy cztery klasy pamięci. Określają one widoczność zmiennych oraz czas ich życia. Są to: auto , register , static oraz extern . Wszystkie zmienne deklarowane w funkcji (bez słowa kluczowego static)...
Cześć Od razu nadmienię, że jestem w tym początkujący. Posiadam mikrokontroler STM32F100C4T6B oraz moduł GY-50 L3G4200D. Próbuję nawiązać połączenie za pomocą interfejsu I2C i wyświetlić informację na komputerze kominukując się po UART, który na pewno działa. Jeżeli chodzi o...
Witam, mam problem z odbiorem kodów rc6 a mianowicie sprawdziłem specyfikacje mojego pilota na stronie lirc/remotes i jest to kodowanie właśnie rc6 szukałem po internecie i niewiele się mówi o tym i innych kodowaniach niż rc5. Znam czasy między bitami i z czego się składa ramka danych w rc6....
Nieco podłamany tematem kol. (at)PiotrLenarczyk postanowilem jednak napisac jednak trzeci krótki prosty mikro poradnik dotyczący startupu. Wszystkie dywagacje będą dotyczyć C i najbardziej popularnego wśród hobbystów i nie tylko gcc. Standard C wymaga aby zgodny (nieco upraszczając)...
Witam. Mam problem z FFmpeg podczas transkodowania pliku .m2ts (blu-ray) do pliku .mp4 w programie MediaCoder (przy obcinaniu pliku). Podczas transkodowania wyskakuje mi taki komunikat (prawdopodobnie jest to przyczyną problemu z dźwiękiem - dźwięk jest z innego przedziału czasu niż obraz po...
Pokażę tu dwa praktyczne sposoby na pokonanie limitu długości odpowiedzi ostatnio bardzo popularnego ChatGPT. Oba sposoby są całkowicie darmowe, działają na publicznie dostępnym modelu oraz przede wszystkim sprawdzają się w praktyce, dzięki nim można generować naprawdę długie fragmenty...
Witam serdecznie. Głowię się od jakiegoś czasu, nad następującym problemem. Do wejść przetwornika ADC0 sprintf() może przy przekształcaniu zmiennych na łańcuch znakowy nie wprowadza czasem jakichś błędów? A może to ja pomimo poprawnie kompilującego się kodu, porobiłem jakieś...