Autorze, dałem Ci gotowe rozwiązanie, ale nie czytałeś mojego postu uważnie. Nie czytałeś też dokumentacji ( MojaPolskieZnaki18_Bitmaps . Aby wyświetlić tekst funkcją MojaPolskieZnaki18_Glyphs 90(*) wiersz, gdyż tam znajdują się informacje o tym, gdzie w pliku MojaPolskieZnaki18_Bitmaps znajduje się obraz literki "Z". * - 90 wiersz, a właściwie, to...
https://obrazki.elektroda.pl/9290552300_... Witajcie moi drodzy. Zapraszam na kolejną część mojego tutoriala PIC18F2550 i kompilatora SDCC . W tej części poznamy sterownik wyświetlacza LED MM5450, połączymy go z PIC18F2550 i napiszemy od 0 implementację ich komunikacji. Docelowo użyjemy MM5450 do wysterowania wyświetlacza LED 5 na...
https://obrazki.elektroda.pl/3570276400_... Pokażę tutaj jak przyśpieszyłem programową komunikację SPI służącą do obsługi pamięci Flash. Sprawdzę jak dużo kodu może kryć się za warstwą abstrakcji GPIO BK7231 a potem spróbuję operacje na pinach zredukować tak, by działały bezpośrednio na rejestrach. Ile cykli procesora tracone jest...
Napisz w P5.js emulator wyświetlacza HD44780 Emulacja wyświetlacza HD44780 w P5.js wymaga zbudowania interfejsu, który symuluje zachowanie fizycznego wyświetlacza, włącznie z obsługą charakterystycznej siatki znaków oraz metod sterujących takich jak zapisanie tekstu na wyświetlaczu. Poniżej przedstawiam podstawowy przykład implementacji takiego emulatora....
Początek mam.... #include <Keypad.h> // Biblioteka obsługi klawiatury matrycowej. const byte kolumny = 4; // Ilość kolumn. const byte wiersze = 4; // Ilość wierszy. char znaki[wiersze][kolumny] = { // Tablica znaków klawiatury. {'A', 'B', 'C', 'D'}, {'E', 'F', 'G', 'H'}, {'I', 'J', 'K', 'L'}, {'M', 'N', 'O', 'P'} }; byte portyKolumn[kolumny] =...
Witam, mam taką trudność, odczytuję znaki nadchodzące z UART i zapisuję je do tablicy znaków zdefiniowanej jako char wartosc , tablica przechowuje takie wartości jak napięcie, prąd oraz moc. Znaków w tablicy jest zawsze 9, po 3 dla każdej z podanych wielkości. Chcę w jeszcze mi nieznany sposób wyjąć po 3 znaki z tej tablicy i przekonwertować je na zmienną...
Witajcie. Mam poniższy kod. Dodano po 3 Spróbuję dopisać. Mamy dwie zmienne int o wartościach 13 i 45. W pętli chciałbym mieć pojedyńcze baty z tych intów. char[0] 1 char[1] 3 char[2] 4 i char[4] 5
Zastanawiam się dlaczego deklarując w Arduino ciag znaków za pomocą kodu: [syntax=c] char a[6] = "12345"; [/syntax] Muszę zadeklarować rozmiar o jeden większy niż ciągu. Co ten dodatkowy bit przechowuje? Czyżby w bicie [0] był przechowywany rozmiar ciągu?
Kiedy uzywasz zmiennej rezerwuje ona, aż 256bajtow pamięci RAM wiec tu oszczędzaj. Jeśli piszę duże aplikacje, działam na małych plikach zapisanych we Fleshu. Wyniki zapisuje też w osobnym pliku. Warto też pamiętać, by tablica nie miała więcej niż 255 znaków bo potrafi ESP się resetować. Unikać gotowych modułow zwłaszcza string, bin, math, gpio, kradną...
https://obrazki.elektroda.pl/4538383200_... Dziś kontynuujemy przygodę z modułem ESP32 + wyświetlacz dotykowy w wersji ESP32-2432S028R. W tej części poćwiczymy interakcje z wyświetlaczem za pomocą ekranu dotykowego. W tym celu napiszemy tutaj kilka prostych, interaktywnych programów, takich jak mierzenie czasu reakcji użytkownika,...
Sprawa rozwiązana. Moje oko nie dostrzegło, ale miernik na zwarcia tak- zwarcie pomiędzy dwiema nogami Xmegi SMD. Po przeskrobaniu układ ruszył i teraz mogę podzielić się wersją na Xmega. W stosunku do wersji na AVR AtMega, zmiany są takie: Procedura setup() jest następująca: [syntax=c] void setup(void) { OSC.CTRL=OSC_RC32MEN_bm; // włączenie oscylatora...
https://obrazki.elektroda.pl/7723770300_... Witajcie moi drodzy. Przedstawię tutaj sposób w jaki zautomatyzowałem i zoptymalizowałem proces pisania kodu, kompilacji wsadu oraz jego wgrywanie na platformę XR809/XR3. Trochę zabawy z tym było, a nowy workflow opiera się zarówno na skryptach wsadowych Windowsa jak i Linuxa a dodatkowo...
Tak jeżeli twój terminal obsługuje znaki sterujące. Kompletne polecenie wysłania wiadomości SMS wygląda następująco: AT+CMGS="+48XXXXXXXXX" <CR> Tekst wiadomości <CTRL+Z> <CR> - „Carriage Return” w tablicy ASCII ma numer 13 (0x0D). W terminalu ten kod będzie wysyłany po naciśnięciu klawisza [Enter]. <CTRL+Z> - "Substitute"...
Wydaje mi się, że chodzi o to, że cyfry temperatury wyświetlają się zbyt często (na wszystkich pozycjach). Należy je wyświetlać tylko w pozycji com==0 i com==1 zamiast: [syntax=c] konwersja(&myTemperature, &tablica[3], &tablica[2], &tablica[0], &tablica[1]); temperatura[0] = tablica[0]; temperatura[1] = tablica[1]; for (int j = 0;...
po to jest extern , zeby kompilator nie sypał takimi błędami! Chyba, że świat arduino rządzi się swoimi prawami, ale wydawałoby się, że C to C.... Nie redefiniuj tablicy znak w pliku projekt.cpp. Jesli masz kompilator c++, zmien rosszerzenie pliku test.c na test.cpp Ciekawe jest to: d:/programy/arduino/hardware/tools/avr/b...
Po prostu zrób tak by sprawdzał np. if (c=='g') else if (c=='d') i to wystarczy by określi czy ma być z góry na dół (g) czy z dołu do góry (d),nie możesz porównywać używając znaku "=" (bo jeden do tego nie służy) lub używając dwóch liter w zmiennej mieszczącej 1 literkę, 'dg' jest bez sensu, albo 'd', albo "dg", a porównywania napisów nie robi się używając...
1. Spróbuj pozbyć się tej bibioteki - zapisz ręcznie kilkanaście bajtów, potem je odczytaj i np. przy każdym starcie programu zwiększ. 2. Jeśli kiedykolwiek zapisywałeś coś w pętli z dużą szybkością to mogłeś uszkodzić pamięć. 3. jako rozmiar podaje się maksymalny rozmiar danych, które chcesz zapisać, w Twoim przypadku powinno być to co najmniej sizeof(str_dane)....
Czy Kolega słyszał o tablicach i pętlach? to [syntax=c]String zm22; String zm23; String zm24; String zm25; String zm26; String zm27; String zm28; String zm29; String zm30; String zm31; String zm32; String zm33; String zm34; String zm35; String zm36; String zm37; String zm38; String zm39; String zm40; String zm41; String zm42; String zm43; String zm44;...
Macie jakiś łatwy przykład w którym zamieniamy zdefiniowany znaczek na inny również zdefiniowany. Wydaje mi się, że nie zaglądałeś w linki, które sam dałeś. Wystarczy zdefiniować tablicę znaków, np uint8_t Znak0a[8]={wzor znaku}; uint8_t Znak0b[8]={wzor znaku}; Załadować do CGRAM znak a: lcd.createChar(0, Znak0a);...
Wystarczy dodać zmienną int i wszystko zostanie obcięte do całkowitych liczb: int lcdint=DHT.temperature; lcd.println(lcdint); Dodaj to czyszczenie linii spacjami lub lcd.clear();. Znaki specjalne nie zawsze są w tym samym zestawie, można sobie zrobić pętle i wydrukować wszystkie, by sprawdzić co jest w pamięci wyświetlacza do dyspozycji, lub zrobić...
Nie do końca rozumię tą linijkę: Zadeklarowany 500 znaków, w tym pierwsze dwa zainicjowane na '{', '\0' Ponieważ to jest w obszarze pamięci statycznej, dodatkowo wszystko te obszary są z mocy standardu wypełnione zerami, czyli dalej tez są zera (ale z innej zasady) Dodano po 3 Ta linijka: bingo
AVR ma mało RAMu i należy go szanować. Jeśli fragmenty są jasno wydzielone znakami terminującymi to nie ma sensu najpierw zapełniać cały bufor, a potem go ciąć, lepiej reagować bieżąco i od razu dopisywać kolejne znaki do właściwych "łańcuchów". O ile to możliwe radzę nie używać typu String, a wszystkie operacje wykonywać na tablicach znaków.
Nie, to drugie wyśle kody ASCII tych cyfr, a pierwsze wyśle znaki specjalne o kodach 5, 6 i 7, poza tym domyślam się, że każdy każdy println() wysyła jeszcze na koniec znak końca linii.
W linkach które podeslales nie ma nic o c_stringach. Wiedza ktora tam jest opisana jest podstawowa i ja posiadam. Masz rację wiedza ta jest podstawowa, aczkolwiek jej nie posiadasz.C-string jest to po prostu tablica znaków char , która reprezentuje ciąg znaków. [url=https://www.youtube.com/watch?v=ZGt... jest to w miarę dobrze opisane. Ostatnio...
Dawno w programowanie się nie bawiłem, zresztą to było w Bascom. Idea stosowana niezależnie od języka programowania, musisz zdefiniować tablicę znaków(fontów). A najlepiej własną bibliotekę do obsługi napisać z fontami. Wtedy wyświetlanie mogłoby wyglądać tak; wywołanie procedury, pozycja, znak. Nie musiałbyś za każdym razem definiować tablicy znaków...
(at)ElektrodaBot jak dodać większą czcionkę np. font16x16 do biblioteki arduino TVout? Bezpośrednia odpowiedź na pytanie - Aby dodać większą czcionkę (np. 16×16) do biblioteki Arduino TVout, należy przygotować własną tablicę danych (bitmapę) dla poszczególnych znaków i zaimportować ją do biblioteki jako czcionkę w formacie PROGMEM. - Następnie w plikach...
Ale przez to strobe 1-3 są połączone ze sobą, 4-6 również. Strobe aktywuje wzmacniacze wyjściowe dla poszczególnych grup grzałek i wykorzystuje się je do np. zmniejszenia poboru prądu. Dane wysyłasz szeregowo (384bity- 48 bajtów) i zatrzaskujesz je sygnałem Latch. Następnie aktywujesz Strobe na czas podany w DS i wyłączasz Strobe. Silnikiem przesuwasz...
Chodziło mi o to żeby to była jedna liczba, a nie każdy znak osobno. Nie wiem jak nazywa się taki zapis. Postać finalna 10922.
Kupiłem kilka Tuya IRC03, które służą zarówno jako odbiornik, jak i nadajnik podczerwieni. Moją intencją było wysłanie sygnałów do zestawu stereo Denon, aby można go było obudzić i przełączyć na właściwe wejście z innego pomieszczenia. Dane przychodzące z pilota wyglądają następująco: Przycisk ZAWIESZ: Informacje:IR:IR IR_Kaseikyo_Denon 0x314 0x0 0...
Dodaj na końcu wysyłanego napisu znak CR lub NL i w programie odbierającym czytaj napis do znaku który wysłałeś. Nie scala tego w liczbę 123 tylko w napis "123", możesz też zamiast robić "print" użyć "write" w Arduino, w jednej paczce wysłać zestaw różnych danych - liczby, napisy, tablice, CRC, jakąś strukturę danych po prostu, i w odbiorniku sobie...
To nie ma prwa działać... dlaczego ten drugi plik czytasz inaczej niż pierwszy? Zastanów się co robisz... jaki sens ma to: ir[i] += bufor; Dlaczego dodajesz znak do znaku (to jest pojedynczy znak)? Char i byte/uint8_t to to samo. Czyli dodajesz kody ASCII tych znaków.
W mikrokontrolerach jest wymagane właśnie dodanie znaku końca tablicy NULL czyli wcześniej wspomnianego "\0" kiedy piszemy program pod PC kompilator zazwyczaj dodaje ten właśnie znak automatycznie! Trzeba właśnie o tym pamiętać tworząc tablice mające przechowywać ciąg znaków o określonej długości...zawsze należy zarezerwować jeden znak więcej aby kompilator...
Czy korzystasz z tej biblioteki? https://github.com/coryjfowler/MCP_CAN_l... Tak, używam tej biblioteki. Nie ogarniam tych tablic char. Czy ktoś mógł by mi wytłumaczyć tak na chłopski rozum? Wszystkie kursy jakie znalazłem, operują na pojedynczych literach, i to rozumiem. Mam zmienną np: [syntax=arduino] char daneRx[8]; [/syntax] mogę do niej wpisać...
O widzisz wreszcie konkret 😀 Tak ale czy da się je przechwycić poprzez Arduino. PulseIn wychwytuje podobno od 10us tak piszą na stronie Arduino https://www.arduino.cc/reference/en/lang... Pilot to ja mam więc nadajnik posiadam tylko teraz chodzi o to by procesor rozróżniał złapane sygnały. U mnie przebieg jest zanegowany...
Sprawdzenie czy ciąg jest pusty powinno się odbyć jeszcze przed jakąkolwiek operacją na tym ciągu. Sprawdzanie tego za każdym razem mija się z celem. Poza tym używanie funkcji strlen do sprawdzenia czy coś jest w tej tablicy jest wysoce nieefektywne w przypadku długich nazw. Wystarczy if(*ssid).
W przykładzie wbudowanym w Arduino jest SerialEvent, w nim dowiesz się jak odebrać linię tekstu, czyli zakończenie w terminalu ma być znakiem końca linii i początek wiersza (standardowo). Taką linię tekstu parsujesz, zamiast tak jak jest w przykładzie odesłać odebrany tekst z powrotem. Deklarujesz dwie zmienne, przypisujesz do nich wynik parsowania,...
Teraz powinno być dobrze. Nie mam aktualnie za bardzo czasu, ale jak będzie trzeba, to opiszę zmiany przeze mnie wprowadzone. [syntax=cpp]#include <VirtualWire.h> #include <Wire.h> #include <LCD.h> #include <LiquidCrystal_I2C.h> #include <OneWire.h> #include <DallasTemperature.h> #define BACKLIGHT_PIN 3 #define ONE_WIRE_BUS...
Czy jakbym zrobił to w ten sposób, miałoby to sens? Nie ma sensu! Czemu służy "delay(3);"? Para ma iść w gwizdek? W ten sposób to nie wiadomo jak szybki będzie uC, delay "zabije" jego prędkość. Zmienna (tablica) "readString " ma jakiś rozmiar, tajemnicą jest jaki, ale większość Arduino ma 2kB (2048) RAM. Stos (ok20 bajtów zależnie od skomplikowania...
Nigdzie nie można znaleźć szkicu z polskimi fontami. W zasadzie to nie jest jakiś wielki problem z polskimi znakami. Jeśli masz jakikolwiek szkic działający w konfiguracji sprzętowej Twojego projektu, a nie ma on polskich znaków to najczęściej dorobienie ich obsługi nie jest trudne. Po prostu biblioteki od tego matrixa mają w sobie tablicę pikseli...
Problem jest taki, że diody "pokazują" dźwięk z 3-4 sekundowym opóźnieniem. Na początek przełóż strip.show(); za wewnętrzną pętlę for. Nie ma po prostu sensu wielokrotnie wywoływać przesył (który swoje trwa) dla jednej wartości height. A w pętli zostaną tylko mało czasochłonne operacje wpisu do tablicy w RAM (setPixelColor). Operacje w pętli loop,...
Kolega za jakiś czas sobie sam poradzi z parserem jak tylko zacznie więcej szukać w necie i analizować znalezione przykłady - będzie miał większą satysfakcję. Bufory nie są najlepsze, ale do prostych testów jak najbardziej wystarczą. W miarę zdobywania wiedzy znajdzie lepsze rozwiązania. W mojej ocenie jest na początku przygody. Swoja drogą można w...
1. Funkcję konwersji do hex-a możnaby zrobić w oparciu o LUTa (stablicowane wartości). Poniżej prosty przykład na PC-ta dla testów ale łatwo zaadoptować do arduino: [syntax=cpp]#include <iostream> using namespace std; void tohex(unsigned long val, char* buf) { const char* const lut16 = "0123456789ABCDEF"; // tablicę można przenieś do FLASH for...
Wyszukiwanie ręczne znaku z tablicy jest powolne. Nie rozumiem o czym piszesz. Coś całkowicie mieszasz i nie rozumiesz i próbujesz na chybił trafił coś sklecić (tak jak to w Arduino jest przyjęte). Dlatego nie lubię arduino a nie ze względu na sprzęt czy IDE.
Witam, Mam pytanie odnośnie "filozofii" wysyłania komend AT przez UART do urządzania obsługującego te komendy (w moim przypadku modemu G510). Jeśli wysyłam stringa "AT+CCLK?" to czy jeśli taki napis traktuję jako tablice charów, a następnie wysyłam pojedynczo każdy element tej tablicy, to będzie to funkcjonować ? Wiem że komendę powinno się...
Z racji tego, że z tablicami jest problem zmieniałem troszkę koncepcję. Czy jest możliwość mając np 3 Stringi : Tak, taka możliwośc istnieje ; te twoje stringi jak założyłeś w pytaniu; będą stałymi (z góry znane) i rezydowac w pamięci ROM. Utworzysz ‘array of arrays ’.. Jeżeli zechcesz je ‘uzmiennic’ i trzymac w RAM - to tego...
Proponuję format który sam z powodzeniem od wielu lat stosuje u siebie. Są to bajty oddzielone jakimś znakiem specjalnym - u mnie jest to dwukropek. dla wygody przy uruchomieniu początek komunikatu można uzupełnić o jakiś inny znak używany tylko raz. koniec komunikatu to standardowy dla arduino \n binarki sklejaj w bajty lub wordy jak ci wygodnie. Pamiętaj...
Nawet bez tych powyzej omawianych optymalizacji mamy do 45KiB danych do przeslania z ESP do przegladarki. Raczej nie sa to duze ilosci danych. Nie grzebałem dużo w zaawansowanym Javascripcie i nie jestem na topie z tego języka, ale ja raczej myślałem że do przeglądarki pomiary już idą jako tekst, a nie jako dane binarne. Czyli przykładowo taka Javascriptowa...
Teraz pytanie trudniejsze. Chciałbym, żeby SMS wysyłał się na kilka numerów telefonów. Proszę o podpowiedź jak zmodyfikować kod. Najłatwiej to powielić funkcję sendSMS, dodać jej kolejny numer oraz numer telefonu na który ma wysłać SMS-a. [syntax=c] void loop() { if(digitalRead(przycisk)==LOW) { sendSMS(); Serial.println("wysylanie SMS a "); delay(6000);...
Jeśli źle umieściłem temat to bardzo proszę o przeniesienie. Kod który wklejam : http://obrazki.elektroda.pl/7428430100_1...
Kod podany przez Ciebie działa. Jeszcze muszę potestować czy nie ma jakichś awarii bo teoretycznie w pliku tekstowym to mogą być tylko znaki ASCII. Jednak udało mi sie przez framework Symfony 2 odczytać szesnastkowy zapis tego przesyłanego pliku. I widzę że jak na razie nie ma problemu z bitami spoza tablicy ASCII. Klikam w pełni zasłużenie przycisk...
Tego typu wyświetlacz zawsze jest multipleksowany. Oznacza to, że wprowadza się do rejestru przesuwnego całą linię kolumn 7szt.x8bit(HC595), następnie ją zatrzaskuje i wysterowuje tranzystor rzędu na określony czas, regulacja jasności. Linia sobie świeci a tym czasem procesor ma czas poskładać w RAM następną linię kolumn dokonując translacji znaków...
Dzięki :) Teraz mam kolejny problem char* pch; pch = strtok(data,"!(at)#$%")... while (pch != NULL) { myGLCD.print(pch, LEFT, 130); pch = strtok(NULL, "!(at)#$%"); } W przykładzie tej funkcji jest deklaracja char* pch Ogólnie program się kompiluje, niestety używanie w arduino deklaracji z...
Stringi w Arduino można dodawać i konwertować, np. String0=String1+String2+String(liczba)+S... i potem Serial.println(String0);. Bezpieczniej jednak korzystać ze statycznej tablicy char jako bufor do wszystkiego i w niej lokować po kolei poszczególne znaki np. funkcją sprintf [url=http://mikrokontrolery.blogspot.com...
Serial.write wysyła bajt lub serię bajtów. Jak wysyłasz int to jest ich na pewno więcej niż 1, ale pewnie program wysyła 1, bo nie każesz mu wysłać ich więcej. Na początku łatwiej Ci będzie przesłać to jako tekst. Wysyłasz jedną linię tekstu, czyli na końcu znak końca linii, poszczególne liczby oddzielone np. średnikiem. W odbiorniku składasz sobie...
Bzdura. 1.Po to sa zmienne globalne. 2.Podpowiedz do prostoty (i nieskomplikowania) kodu: -string jest jakby tablica, kazda litere w (w tym liczby) mozesz porownac do siebie - znaki od '1' do '9' leza kolo siebie -uzywam tylko operacji na stringach jezeli zmienie kocd na (chyba 4 linie) sprawdzanie dlugosci komendy, to komendy moga miec dowolna ilosc,...
Co do lini 2852 to mi się podświetla znak Kod: c Rozwiń Zaznacz wszystko }; Tak naprawdę, błąd dotyczy linii 2701: Dodano po 5 a jak usune Ten średnik po klamrze jest jak najbardziej na miejscu. Nic nie usuwaj.
Zrób sobie tak : [syntax=c]char cmd[15]; byte indeks; void setup() { Serial.begin(9600); } void loop() { if (Serial.available()) { char c = (char)Serial.read(); if(c == '\n') { cmd[indeks] = 0; indeks = 0; analiza(); } else { cmd[indeks] = c; if(indeks < 15) indeks++; } } } void analiza() { if(cmd[0] == 'c') { Serial.println("ok"); } } [/syntax]...
Wszystkie kroki wykonałem z odlutowaną diodą i z nią. Na jednym wyświetlaczu odlutowałem, a na drugim nie i sprawdzałem i tak i tak. Jest podłączona do SIN. Gdzieś coś wyczytałem że to ma służyć jako test wyświetlacza, że niby po jego uruchomieniu to miało dawać efekt automatycznego testu (wyświetlanie znaków po kolei z całej tablicy). Ale u mnie nic...
Sorry nie przyjrzałem sie dokładnie, on zwraca po znaku więc musisz składać do tablicy. Tak na szybko to coś takiego. [syntax=cpp]char keyString[20];//Niewiem jak dlugi moze byc klucz //gdzies na poczatku wyzeruj :keyString[0]=0; void KbdRptParser::OnKeyPressed(uint8_t key) { Serial.print((char)key); if(key=='\n')return; if(key=='\r'){ if(0==strcmp(keyString,"5901336909607"))...
Typ ushort to po prostu alias na przesadnie długą deklarację unsigned short int . Jest to więc zwykły 2 bajtowy int bez znaku. Równie dobrze można napisać uint16_t , i chociaż jest między nimi drobna różnica, to w naszym przypadku nie ma to znaczenia. Na tym typie pracuje funkcja obliczająca CRC i taki typ zwraca. Frame jest tablicą elementów odczytanych...
[syntax=c] //Definiowanie pinów wyświetlacza i Arduino //Definiowanie pinu przycisku 7 //Arduino UNO +5 //Arduino UNO przez rezystor 10 k GND #include <Wire.h> #include <LiquidCrystal_I2C_Hangul.h> LiquidCrystal_I2C_Hangul lcd(0x27, 20, 4); #define PRZ 6 #define PRZ0 7 #define PRZ1 8 #define PRZ2 9 #define PRZ3 10 #define PRZ4 11 int losowaLiczba0;...
Arduino Leonardo które zamierzam wykorzystać będzie korzystało z yun shieldu, 6 czujników temperatury ds18B20 jednego DHT22, dwóch modułów 4 przekaźników podłączonych do wyjść PCF8574 oraz z modułu PCA9685 do sterowania 12 driverami power led DW8501 i 4 modułami mosfet do obsługi 3 kanałów wentylatorów i pompy wody, oraz moduł zegara RTC3231, całość...
To nie są znaki tylko raczej bajty - tablica nie tworzy napisu (znak o kodzie 0 zakończyłby napis i wyszłoby 254). Gotowej funkcji do konwersji dziesiętnej raczej nie będzie. Można albo skonwertować to na napis dodając do każdego elementu tablicy wartość '0' i potem skorzystać z funkcji char * => int (scanf, atoi lub wręcz strumienie c++), albo...
W tym przykładzie Zakładam że czytałeś to: Nie łatwo przejść tak z marszu z Basic na LUA, za dużo w LUA znaków przy instrukcjach, których w Basic niema. Łatwiej z C wejść do LUA, bo to prawie C tyle, że wyższego poziomu. Dlatego trzeba uważać na aplikacje gdzie potrzeba dużej wydajności, a LUA nie przewiduje wstawek w asemblerze ;) Na domiar złego LUA...
https://obrazki.elektroda.pl/1761046600_... Pokażę tu jak uruchomić z Arduino czterocyfrowy wyświetlacz 7-segmentowy sterowany poprzez rejestr przesuwny 74HCT164 i cztery tranzystory BC546. Płytka z wyświetlaczem znów będzie odzyskana z elektrośmieci. Będzie to już kolejny temat, w którym uruchamiam wyświetlacz, gdyż omawiałem już...
Mam do wyjścia DAC w STM32F4 podłączony taki wzmacniacz: http://obrazki.elektroda.pl/7700611400_1... Jak przy pomocy tego kodu: [syntax=c]uint32_t i; uint8_t delay,n; while(1) { for(delay=1;delay<=50;delay++) { for(n=0;n<(51-delay);n++) { for(i=0;i<256;i++) { DAC->DHR8R1=sine[i]; threadWaitCycles(delay*100); } } } }[/syntax]...
Wykorzystaj przykład z Arduino p. 04 Comunication SerialEvent i sprzętową obsługę UART - masz je ponumerowane od 0 do 3, w sumie 4. Do serial1 zrób sobie funkcję analogiczną SerialEwent1 wraz z kompletem buforów i zmiennych pomocniczych. Możecie sobie drwić z Arduino, ale w żadnym innym systemie nie znalazłem jak w tak prosty sposób korzystać z UART...
Zrób sobie najpierw obsługę jednego wyświetlacza, czyli napisz funkcje switch() {case} lub lepiej o tablicę znaków (zdaje się tak próbowałeś) Pamiętaj żeby skofigurować użyte piny jako wyjścia. Potem zrób przycisk. Na początek prosta pętla która przepisze stan przycisku na jakiś bezpośredni LED. Wciskasz, trzymasz, led się zmienia....
Witam mam mały problem z definiowaniem pinów wejściowych w tablicy. Chciałem dla ułatwienia zapisywać je w tablicy i o ile z pinami wyjściowymi nie ma problemu, to już przyciski nie działają mi, co jest źle napisane ? PS: Dostrzegłem błąd i zmodyfikowałem znak, lecz teraz działa mi tablica ale nie tak jak powinna. W tym ustawieniu zdefiniowany mam jeden...
Cześć! Dwa lata temu wykonałem projekt pojazdu gąsienicowego - czołgu. Postanowiłem, że podzielę się nim z Wami. Projekt był wykonany w momencie gdy jeszcze raczkowałem zarówno w programowaniu jak i w elektronice, także nie należy spodziewać się pięknego i optymalnego programu czy płytek drukowanych. Wręcz przeciwnie, program składa się jedynie z funkcji,...
Mógłbyś mi coś więcej powiedzieć na ten temat? Jakoś nie przychodzi mi do głowy hipotetyczna sytuacja. Dane są zadeklarowane jako tablica bajtów. Nie może, bo post "riman"a jest nieprawdziwy (a mówiąc otwarcie to co twierdzi to są bzdury). Standard języka C++ (C zachowuje siędokłądnie tak samo) dokładnie mówi co się dzieje w takiej sytuacji i twój...
To jest 20x4 znaki bo nie upewniłem się? Jakies problemy z nim miałem, poniżej działający kod (biblioteki IIC nie załaczyłem) [syntax=c] LcdDOGM204Init(); //LcdDOGM204Charset( 1 ); LcdDOGM204Kontrast( 35 ); //LcdDOGM204view( 1 ); // Negatyw/pozytyw //======================================... void LcdDOGM204Init() { WriteLcdIIC(...
(at)pfc Zrobiłem tak, jak w poniższym poradniku https://techtotinker.blogspot.com/2020/0... [syntax=c] #include "SoftwareSerial.h" SoftwareSerial mySerial(2, 3); String cmd = ""; void setup() { mySerial.begin(9600); Serial.begin(9600); Serial.println("Initializing..."); delay(1000); mySerial.println("AT"); //...
Tablicę warto stosować w przypadku gdy sygnał pomiarowy reprezentuje funkcja, która zawiera punkt przegięcia. Dla funkcji wypukłej (wklęsłej) łatwiej będzie zastosować aproksymację wielomianem. Jak znajdę chwilę czasu to policzę to dla Twojego czujnika i podrzucę na forum. Być może uda się to zrobić w ograniczonym przedziale jaki podałeś. http://obrazki.elektroda.pl/4094572000_1...
https://obrazki.elektroda.pl/7246994600_... Dzisiejszy projekt będzie opierać się o Arduino. Pokażę tutaj jak uruchomić kontroler wyświetlacza/klawiatury ze starego tunera sat w oparciu o jego notę katalogową oraz bibliotekę Wire z Arduino. Poznamy szczegóły jego interfejsu szeregowego opartego o linie SDA i SCL i spróbujemy przygotować...
https://obrazki.elektroda.pl/5692942100_... Tematem dzisiejszego artykułu jest -przejęcie kontroli na światem! Ha, Ha, Ha -to miał być złowieszczy śmiech ;-) A dokładnie to tylko nad wyświetlaczem VFD, który jest integralną częścią amplitunera SONY STR-DB840QS. Sprzęt leciwy, ale jeszcze daje radę ;-) i jako grajek w sypialni ma się...
Witam. Czy mógłby ktoś mnie naprowadzić jak zrealizować wyświetlanie temperatury na jednej matrycy 8x8? Odczyt temp. wraz z kodem jest opisany na http://akademia.nettigo.pl/ds18b20/ A kod i opis na przewijany tekst na http://tronixstuff.com/2013/10/11/tutori... Nie wiem za bardzo jak okroić ten kod z przewijanym...
Jak ustawiasz pin na LOW to wcale nie znaczy, że diody mają nie świecić. Jak ledy podłączysz odwrotnie i drugi koniec jest do VCC to będą świecić. Używanie delay do tego jest złym pomysłem, co prawda używanie zmiennej w delay jest również złym pomysłem, ale tutaj dwa minusy nie dają plusa, tylko dłuższego minusa. Dla sprawdzenia wystarczy wgrać kod...
w istocie zmiana zmiennych na longi powinno pomóc ze znakiem (wynik mnożenia 500* val bardzo szybko przekracza zakres int'a). spróbuj zobaczyć co się stanie jak napiszesz tak: val=analogRead(0);//Connect LM35 on Analog 0 dat= val; //co na wejści z ACD to na wyjściu Serial.print("Temperatura:"); //Display the temperature on Serial monitor Serial.print(dat);...
Przeleć stringa funkcja indexof. Najpierw zapisz w tablicy miejsca (indexy) w których masz "&" jak wezmiesz dwa elementy sasiadujące z tej tablicy to będziesz miał początek i koniec pary nazwa zmiennej i jej wartość. Coś mi indexOF źle wyszukuje znaki, po 8 pętli źle wyszukuje i nie bardzo wiem jak z tym sobie poradzić . Caly ciag = Start&GON1=0&MON1=9&GOFF1=2&...
https://obrazki.elektroda.pl/5856179500_... Witam wszystkich. Tym razem chciałbym zaprezentować układ synchronizatora zegara I2C z czasem pobieranym z Internetu. Korzystając z wcześniej prezentowanego zegara na Z8, pomyślałem, że warto go rozbudować o taką możliwość, stąd powstał prezentowany układ. Sam układ zbudowany jest w oparciu...
Witam Mam takie dwa kody Rf jeden nadajnik drugi odbiornik i cos jest nie tak bo pokazuje mi zla temperature 482 stopnie, czy te kody sa poprawne ? #include <OneWire.h> #include <DallasTemperature.h> #include <VirtualWire.h> int temp0Data, temp1Data; char temp0Msg #include <VirtualWire.h> #include <LiquidCrystal.h> int...
Znalazłem takiego klienta: No i tu już trochę się gubię. Czy możesz powiedzieć jak w ogóle wygląda proces komunikacji i pobierania/wyświetlania danych do/z Arduino. Nie wiem czy dobrze rozumuję. Arduino łączy się ze stroną, w tym przypadku odpala sobie (co jakiś określony czas, za pomocą loop() ) strone save.php na zewnętrznym serwerze, przesyłając...
http://obrazki.elektroda.pl/5998020800_1... Witam serdecznie. Chciałbym przedstawić tutaj mój projekt. Jest to samochodzik w stylu RC, ale zrobiony właściwie z elementów, które gdzieś tam w domu leżały i szukałem dla nich zastosowania. Nie zajmuję się profesjonalnie ani mechaniką ani elektroniką a raczej programowaniem, ale częściowo...
Witam, W tym DIY Konstrukcje chciałbym zaprezentować urządzenie do gry w Monski Pong. Cały projekt składa się z dwóch programów, modułu Arduino Uno i płytki PCB. Do zbudowania tego urządzenia zachęcam wszystkich początkujących jako dobry wstęp do podstaw komunikacji Arduino z komputerem z pomocą portu szeregowego. https://obrazki.elektroda.pl/1057744800_...
https://obrazki.elektroda.pl/5220229400_... Witajcie, przedstawię tu od 0 rozpoznanie wyprowadzeń, podłączenie, zaprogramowanie i uruchomienie z Arduino wyświetlacza LCD z elektrośmieci. Omawiany tu wyświetlacz pochodzi z pralki Amica AWSN12DA i posiada sterownik BL55066 do którego nie znalazłem biblioteki, tylko samą notę katalogową....
https://obrazki.elektroda.pl/5961033700_... Tutaj pokażę jak można łatwo uruchomić gotowy moduł z wyświetlaczem VFD ze starego odtwarzacza DVD. Najpierw przeanalizuję jego budowę oraz zasilanie, a potem w oparciu o notę katalogową od zera zaimplementuję jego sterownik na Arduino. Ten temat będzie stanowić pierwszą część przygody z VFD i...
Dodałem do kodu elementy by uruchomić serwo, ale nie ma żadnej reakcji. Żaden błąd kompilacji się nie pojawia. Gdzie w takim razie jest błąd? Mój kod [syntax=c]#define HID_PROTOCOL_KEYBOARD 1 #include <SPI.h> #include <usbhub.h> #include <hidboot.h> #include <Servo.h> // Satisfy IDE, which only needs to see the include statment...
AVE... Każdy język programowania, który używa niewidzialnych znaków w swojej składni jest z gruntu złym językiem. Programiści Pythona twierdzą, że to po to, by kod ładnie wyglądał i był czytelny. Za ładny wygląd i czytelność kodu, który piszę dla mikrokontrolerów PIC odpowiada edytor kodu w IDE, przez co ja nie muszę o tym myśleć. Edytor rozpoznaje...
Dziękuje za konkretną i zrozumiałą odpowiedź. Tylko jeśli zrobię to tak : byte const LGc[8] PROGMEM = { B00111, B01111, B11111, B11111, B11111, B11111, B11111, B11111 }; to w jaki sposób to wyświetlić i przenieść ? // Read a byte of character data OneByte = pgm_read_byte(&Seg7_segtbl[i... mało mi to mówi, jakaś...
Hej (at)And! Do uruchomienia użyłem prawdziwej żywej atmegi8 podpiętej do "portu szeregowego" po USB z FTDI (chiński klon chyba arduino nano). Chciałem być fair i nie zaglądać do środka jako że to miał być BlackBox ;) Co do mojej specjalizacji :D Wszystkie 3 etapy dało się przejść bez jakiejś szczególnej wiedzy na temat elektroniki, assemblera i budowy...
... Funkcja uart_putc działa z buforem cyklicznym. Takie coś: W/w testy a końcowa aplikacja to zupełnie inny poziom złożoności, że chodzi w przychylnych warunkach a we współbieżności nawala ,,, bosch to wiele rzeczy może się dziać. Tu null-terminated, tam nie, tam czas a tu nie itd... Twoje zeznania - bo na nich się opieram - silnie się kojarzą właśnie...
https://obrazki.elektroda.pl/3743484600_... Witajcie moi drodzy Przedstawię tutaj mojego shielda (nakładkę) na Arduino UNO opartego o układ ENC424j600. Shield ten pozwala podłączyć Arduino do internetu bez żadnego lutowania, a nawet bez użycia kabelków i płytek stykowych. W temacie dam jedenaście pełnych przykładów jego użycia z moimi...
https://obrazki.elektroda.pl/5304082500_... * Witam po dłuższej przerwie, tym razem dział mikro kontrolerów. Wymagania dla projektu / założenia: Pomiar w pomieszczeniu/ obudowie urządzenia /w zbiorniku temperatury powietrza /cieczy na wejściu i wyjściu. Wyświetlenie na żywo aktualnych wartości temperatur na wyświetlaczu LED x2. Wykrywanie...
https://obrazki.elektroda.pl/3813144000_... Zapraszam na krótki test i demonstrację użycia popularnych modułów wyświetlacza 7-segmentowego opartych na TM1637. Uruchomię taki moduł najpierw z Arduino, a potem bez użycia żadnej biblioteki, na koniec również pokażę alternatywną, eliminującą zbędne opóźnienia bibliotekę przeznaczoną do sterowania...
ylko jak to pogodzić z Arduino? Jeśli ma się przyjąć wśród amatorów, to moim zdaniem, musi działać na bazowym Arduino (ATMega 328PU) i pozostawiać jeszcze miejsce na program użytkownika. To akurat nie jest problemem. Robisz nagłówki w C (export "C") i dodajesz do Arduino prekompilowany lib na ATM328. Prościej się nie da. Masz same zalety - zwięzłość...
https://obrazki.elektroda.pl/3897021500_... Opisany poniżej miniaturowy zamek elektroniczny z układami 1WIRE w odróżnieniu od setek podobnych projektów posiada pewną specyficzną cechę: współpracuje nie tylko z układami DALLAS DS1990 czy RW1990, ale w zasadzie z każdym układem z interfejsem 1WIRE posiadającym własny niepowtarzalny adres...
(at)ElektrodaBot // Napisz Menu z Rc5 #include #include LiquidCrystal lcd(19, 18, 17, 16, 15, 14); #define LED 0 #define TSOP_PIN 3 RC5 rc5(TSOP_PIN); // command== 16 - dodaj // command== 17 - odemnij // command== 59 - enter, przejć do następnej części MENU // Menu_1--- Menu_2---Menu_3--- Menu_1 ...... Menu1 if command==16 liczba_1++; if command==17...
Zadanie " odczytZEepromTemperaturyIWilgotnosciIGod... " powinno być utworzone w setup(). Stos jest za mały - na początek ustaw na 4096 . Funkcja odczytZEepromTemperaturyIWilgotnosciIGod... to jest własnie callback dla tego zadania. Nie wiem, o co chodzi z nazwą funkcji TaskBlink() - jakieś copy/paste :). Pętla loop() domyślnie też się...
Witam panowie. Zagadka jest taka. Jest sobie arduino uno, ale programuję je bez bootloadera, bezpośrednio w c w avr studio wersja 4. W pewnym momencie w programie startuję timer 2 w trybie CTC i używam go jako wyjście zegarowe dla bufora. Timer 2 ma ustwienia prescalera na 1 i rejestru porównawczego na 7, co daje ze wzoru przy częstotliwości uC 16Mhz,...
tablica znaków tablica znaków ascii tablica znaków wyświetlacz
generator klatkowy ładować kondensator przez rezystor oznaczać kontrolka deska
Błąd P1256/35/10 w pojazdach VAG - czujnik G62 Jak określić wartość rezystorów SMD bez oznaczeń?