maniu
Użytkownicy-
Zawartość
8 -
Rejestracja
-
Ostatnio
Informacje
-
Płeć
Mężczyzna
-
Zawód
inż. automatyki i robotyki
Ostatnio na profilu byli
Blok z ostatnio odwiedzającymi jest wyłączony i nie jest wyświetlany innym użytkownikom.
Osiągnięcia użytkownika maniu
-
Jak automatycznie generować kod i schemat dla Arduino?
maniu odpisał w temacie użytkownika Komentator • Artykuły redakcji (blog)
@Treker, automatyczne generowanie kodu to jedno, ale logika sama się nie zaprogramuje. Wychodzi na to, że w taki czy inny sposób trzeba się z tematem zaznajomić :) -
Jaki program do rysowania schematów 2D BREADBOARD, z możliwością samodzielnego tworzenia obiektów
maniu odpisał w temacie użytkownika maniu • Oprogramowanie CAD
Póki co właśnie tak wyczyniam, szukam po FRIZING'owych forach gotowych, całych projektów i później "podkradam" elementy. -
Szybkie pytanko: Jakim programem utworzę schemat typu 2D? Zwykły poglądowy rysunek z połączeniami elektrycznymi, coś jak tutaj: Próbowałem z FRITZING, lecz biblioteka jest uboga, a dodawanie elementów własnych to większa magia (brak rozszerzonych funkcji edytora). Można dodawać w oparciu o istniejące elementy, co jest zbyt drażniące. Brakuje mi np., zwykłej klawiatury membranowej 4x4. Porady? [ Dodano: 11-01-2018, 14:49 ] Jak coś znalazłem w bibliotece FRIZING pod hasłem: Keypad
-
Dokładnie znam Twój problem: "od czego by tu zacząć", a teraz nie wiem w co ręce wsadzić 🙂 Nie przejmuj się tym, że nie masz pomysłów itp. Po prostu zakup jedną z dwóch opcji: 1) Arduino MEGA + zabawki: jeżeli jednak obstajesz przy tym, że UNO ma za mało nóżek. 2) Arduino UNO + zabawki: jeżeli chcesz projektować krokowo, testowo. [Co mam na myśli?], a no np. rozgryźć jak działa wyświetlacz, później jak sensory, później jak transmisja, itd., a dopiero później kupić MEGA. Na tym portalu mają świetnie zorganizowany kurs, z którego również skorzystałem. Polecam zacząć od niego. Co do spraw ekonomicznych, polecam Ci elementy używane. Są o wiele tańsze. Mi np. udało zakupić się oryginalne uno z shieldem Nettigo do wyświetlacza LCD za 40zł. Dużo? Życzę pomyślności i mnóstwo cierpliwości.
-
Witam serdecznie grono. Wziąłem się za wyświetlacz monochromatyczny 84x48, zgodny z PCD8544, kupiony na allegro. Korzystam w projekcie z bibliotek: #include <SPI.h> #include <Adafruit_GFX.h> #include <Adafruit_PCD8544.h> Od razu mówię, że program testowy (pcdtest) działa, własne experymenty też pomyślne. Mam natomiast chęć wyświetlania własnej, monochromatycznej bitmapy i tutaj napotkałem trudności, do których straciłem cierpliwość. Wiem z kilkunastu źródeł, że wyświetlanie jest możliwe po wgraniu do pamięci FLASH jakieś "mapy hexagonalnej", uzyskanej za pomocą chociażby programu: LCD ASSISTANT lub IMAGE2GLCD. Oto, co robię: 1) Tworzę obraz w paincie, w rozmiarze odpowiadającym rozmiarowi wyświetlacza 84x48. 2) Konwertuję .jpg na plik .c za pomocą programu IMAGE2GLCD 3) Uzyskuję "mapę", w postaci zmiennej, do której dodaję PROGMEM, np.: const unsigned char PROGMEM test[504] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xF3, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xE3, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xE3, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x07, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0x0F, 0x80, 0xFC, 0x00, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x07, 0x80, 0xF0, 0x00, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x07, 0x00, 0x70, 0x00, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x07, 0x0C, 0x70, 0x00, 0x00, 0x00, 0x0E, 0xE0, 0x00, 0x00, 0x07, 0x3E, 0x70, 0x00, 0x00, 0x00, 0x0E, 0xE0, 0x00, 0x00, 0x0E, 0xFF, 0xB8, 0x00, 0x00, 0x00, 0x0E, 0xE0, 0x00, 0x00, 0x0F, 0xF7, 0xF8, 0x00, 0x00, 0x3F, 0xFC, 0x7F, 0xF8, 0x00, 0x0F, 0xE3, 0xF8, 0x00, 0x00, 0x7F, 0xFC, 0x7F, 0xFC, 0x00, 0x1F, 0x80, 0xFC, 0x00, 0x00, 0x7F, 0xFC, 0x7F, 0xFC, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x00, 0x3E, 0x00, 0x00, 0xF8, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xC0, 0x07, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xE0, 0x0F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE3, 0x8E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xEF, 0xEF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xDF, 0xF7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFE, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xF8, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xF0, 0x1F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xC0, 0x07, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x80, 0x03, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; 4) Fajno! Dalej wrzucam gościa, do przykładowego programu, który wydziubałem z pomocą wszelkich bibliotek: #include <SPI.h> #include <Adafruit_GFX.h> #include <Adafruit_PCD8544.h> Adafruit_PCD8544 display = Adafruit_PCD8544(7, 6, 5, 4, 3); // this file generated by Image2GLCD const unsigned char PROGMEM test[504] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xF3, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xE3, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xE3, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x07, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0x0F, 0x80, 0xFC, 0x00, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x07, 0x80, 0xF0, 0x00, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x07, 0x00, 0x70, 0x00, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x07, 0x0C, 0x70, 0x00, 0x00, 0x00, 0x0E, 0xE0, 0x00, 0x00, 0x07, 0x3E, 0x70, 0x00, 0x00, 0x00, 0x0E, 0xE0, 0x00, 0x00, 0x0E, 0xFF, 0xB8, 0x00, 0x00, 0x00, 0x0E, 0xE0, 0x00, 0x00, 0x0F, 0xF7, 0xF8, 0x00, 0x00, 0x3F, 0xFC, 0x7F, 0xF8, 0x00, 0x0F, 0xE3, 0xF8, 0x00, 0x00, 0x7F, 0xFC, 0x7F, 0xFC, 0x00, 0x1F, 0x80, 0xFC, 0x00, 0x00, 0x7F, 0xFC, 0x7F, 0xFC, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x00, 0x3E, 0x00, 0x00, 0xF8, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xC0, 0x07, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xE0, 0x0F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE3, 0x8E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xEF, 0xEF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xDF, 0xF7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFE, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xF8, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xF0, 0x1F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xC0, 0x07, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x80, 0x03, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; void setup() { Serial.begin(9600); display.begin(); display.setContrast(50); display.clearDisplay(); display.drawBitmap(0, 0, test, 84, 48, 1); display.display(); } void loop() { // put your main code here, to run repeatedly: } display.drawBitmap(0, 0, test, 84, 48, 1); - funkcja odpowiedzialna za rysowanie (start X, start Y, nazwa_obrazu, szerokość, wysokość, 1 [w sensie kolor1=set, black]) 5) Po kompilacji zamiast uzyskać obraz, nagryklany w PAINCIE: załącznik 1 6) Wychodzi jakiś makaron: załącznik 2 [btw. czemu nie mogę upać poprawnych plików graficznych?] Idąc dalej, wiem, że jeżeli stworzę sobie wektor binarny z 1 (jako set pixel) i 0 (jako off pixel), mogę stworzyć jaki tylko obraz chcę, np.: static const unsigned char PROGMEM logo16_glcd_bmp[] = { B00000000, B11000000, B00000001, B11000000, B00000001, B11000000, B00000011, B11100000, B11110011, B11100000, B11111110, B11111000, B01111110, B11111111, B00110011, B10011111, B00011111, B11111100, B00001101, B01110000, B00011011, B10100000, B00111111, B11100000, B00111111, B11110000, B01111100, B11110000, B01110000, B01110000, B00000000, B00110000 }; Ale, ale.... po 1) nie chce mi się tyle tego pisać (w końcu 84x48 małe, a pisania sporo) 2) nie znam programu, który umożliwiałby taką konwersję bmp2bin, w takim właśnie ciągu (stylu) Moja prośba brzmi następująco: 1) czy znacie sposób, na wyświetlanie własnej botmapy, za pomocą takiego wyświetlacza? 2) czy znacie program (kod), który przerobi obraz (czarno-biały) na mapę binarną 8-bitową?
-
Klon Arduino UNO, problem z wgraniem programu
maniu odpisał w temacie użytkownika maniu • Arduino i ESP
Używam opcji "Upload", w PL wersji "Wgraj". Postaram się jeszcze zaprogramować go innym sposobem. Być może zamówiłem skopaną płytkę. -
Witam, borykam się z problemem wgrania programu na płytkę UNO. Zakupiłem dla próby taniego klona UNO. Wygląda tak: Klon UNO wygląd, informaje Komputer rozpoznaje płytkę, zmieniałem już porty: Wgrywam przykładowy program Blink, z taką konfiguracją: W trakcie wgrywania pojawia się błąd: Do podłączenia używam przewodu USB typ A-B. Dodam jeszcze, że po podłączeniu zasilania świeci dioda ON i mruga dioda "L". Nie potrafię sobie z tym poradzić. Czy ktoś ma jakieś sugestie? Z góry dziękuję za wszelką pomoc. EDIT 1: Podczas ładowania nie mrugają diody RX, X1.
-
Filtr Kalmana od teorii do praktyki - #1
maniu odpisał w temacie użytkownika Komentator • Artykuły redakcji (blog)
admunt1 Nie sprowadzisz modelu do postaci równania stanu, jeżeli model jest nieliniowy. Cały myk polega na tym, aby zlinearyzować go wokół jakiegoś punktu pracy.