Skocz do zawartości

Raccoon

Użytkownicy
  • Zawartość

    21
  • Rejestracja

  • Ostatnio

Reputacja

16 Dobra

O Raccoon

  • Ranga
    2/10

Informacje

  • Płeć
    Mężczyzna
  • Lokalizacja
    Warszawa
  • Języki programowania
    Java, Kotlin, Python
  • Zainteresowania
    Matematyka, astronomia, fotografia
  • Zawód
    Programista Android

Ostatnio na profilu byli

Blok z ostatnio odwiedzającymi jest wyłączony i nie jest wyświetlany innym użytkownikom.

  1. Zgodnie z obietnicą jest pianino Niestety z powodu małej płytki stykowej nie udało mi się w sensowny sposób umieścić półtonów - więc jest tylko podstawowa skala C-dur. Da się na tym zagrać np. "Wlazł kotek na płotek". Co do programu - tak jak zalecają w przykładach do funkcji tone() definicje częstotliwości dźwięków są w pliku pitches.h - dzięki temu można ich używać w wielu szkicach bez kopiowania. #include "pitches.h" #define BUTTON_C6 2 #define BUTTON_D6 3 #define BUTTON_E6 4 #define BUTTON_F6 5 #define BUTTON_G6 6 #define BUTTON_A6 7 #define BUTTON_B6 8 #define
  2. Napisałem program, który powinien grać melodie z mojej ulubionej animacji - "The grand day out" z & Grommit. Niby wszystko spisane z nut jak trzeba ale coś nie do końca brzmi jak powinno . Czas na budowę pianina #define NOTE_E5 659 #define NOTE_F5 698 #define NOTE_G5 784 #define NOTE_C6 1047 #define NOTE_D6 1175 #define NOTE_DS6 1245 #define NOTE_E6 1319 #define NOTE_FS6 1480 #define NOTE_G6 1568 #define NOTE_WHOLE 3200 #define NOTE_HALF (NOTE_WHOLE / 2) #define NOTE_QUATER (NOTE_HALF / 2) #define NOTE_EIGHTH (NOTE_QUATER /2) #define NOTE_SIXTEENTH (NOTE_EIGHTH /2) void se
  3. @Gieneq Dzięki za wyczerpujące wyjaśnienia. Rozjaśniłeś mi temat. Ciekawy artykuł podlinkowałeś.
  4. Mam pytanie odnośnie wielkości kondensatora jaki należy podłączyć równolegle z listwą diod do zasilania. W tekście jest napisane Od czego ona zależy i jak? W kursach elektroniki i techniki cyfrowej zwykle do zasilania były wpinane równolegle 2 kondensatory 100nF i 220uF.
  5. Witam, kolejny świetny odcinek kursu. Zaprogramowałem sekwencję jak z "Nieustraszonego" - to pierwszy element mojego KITT-a . Chciałem po kursie elektroniki zrobić wersję analogową, ale jakoś nie udało mi się kupić jeszcze układu zliczającego. Tutaj w pętli oprócz zaświecania kolejnej diody zaświecam słabiej 2 sąsiednie. Poniżej program i film jak to działa. #include <Adafruit_NeoPixel.h> #define pixelsNumber 8 #define ledPin A5 Adafruit_NeoPixel pixels = Adafruit_NeoPixel(pixelsNumber, ledPin, NEO_GRB + NEO_KHZ800); const uint32_t darkRed = pixels.Color(2, 0, 0); const uint
  6. Poniżej mój program z linijką, w której diody będą się rozświetlają stopniowo tzn. pierwsza zacznie świecić coraz mocniej od 128 cm, przy 64 będzie świecić pełną mocą, i wtedy kolejna dioda zacznie się rozświetlać itd. Skorzystałem z tablic (których jeszcze na kursie nie było) - tablice i pętle pozwoliły znacznie skrócić program . Funkcja constrain() przy obliczaniu jasności diody użyta bo funkcja analogWrite() nie robi tego sama - zakłada, że wartość drugiego argumentu będzie z przedziału 0 - 255. To dziwne moim zdaniem, że przyjmuje argument value typu int podczas gdy mogłyby być
  7. Świetny kurs - jak wszystkie inne które na Forbocie przerabiałem - dużo wiedzy podanej w przystępny dla laika sposób. Jednakże wszyscy jesteśmy ludźmi i popełniamy błędy , w tekst lekcji wkradł się taki: tu powinno być nazwę naszej funkcji a nie zmiennej.
  8. Cześć, poniżej mój program stopera: #include <LiquidCrystal.h> #define startBtn 11 #define stopBtn 10 const unsigned long secondInMillis = 1000; const unsigned long minuteInMillis = 60 * secondInMillis; const unsigned long hourInMillis = 60 * minuteInMillis; LiquidCrystal lcd(2, 3, 4, 5, 6, 7); unsigned long timer = 0; // czas ktory uplynal w milisekundach int dt = 97; // krok czasowy stopera - licba pierwsza, zeby ladnie dziesiate i setne czesci sekundy sie zmienialy bool isRunning = false; void setup() { pinMode(startBtn, INPUT_PULLUP); pinMode(stopBtn, INPUT_PULLU
  9. @GieneqCoś trzeba robić w długie zimowe wieczory
  10. Cześć, poniżej kod mojego programu - światłomierz z kalibracją. Kalibracja włącza się jak wciśnie się jeden przycisk a wyłącza jak wciśnie się drugi. W trakcie kalibracji świeci się dioda. #include <Servo.h> #define calibrationStartBtn 2 #define calibrationFinishBtn 3 #define calibrationLED 5 #define servoPin 10 #define lightMeterInput A5 int minLightMeter = 0; int maxLightMeter = 1023; int currentAngle = 0; int readValue = 0; int newAngle = 0; Servo servo; void setup() { pinMode(calibrationStartBtn, INPUT_PULLUP); pinMode(calibrationFinishBtn, INPUT_PULLUP)
  11. Tu moje rozwiązanie zadania 4.6 - ze wskazywaniem kierunku światła. Zrobiłem na 3 diodach bo na 5-ciu byłby bałagan na płytce a zasada działania taka sama. Tu układ narysowany w Fritzing - niestety znalazłem tylko czerwone LEDy A tu program: #define center 13 #define left 12 #define right 11 #define leftInput A0 #define rightInput A1 float scaledLeft = 0; float scaledRight = 0; float difference = 0; void setup() { pinMode(left, OUTPUT); pinMode(center, OUTPUT); pinMode(right, OUTPUT); digitalWrite(left, LOW); digitalWrite(center, LOW); digitalWrite(right, LOW);
  12. @Gieneq wiem, dopiero przy pisaniu tego programu ogarnąłem jak działa funkcja loop() - że jest wołana kolejny raz po zakończeniu poprzedniej iteracji a nie regularnie co jakiś odstęp czasu. Poza tym późno było jak to pisałem. Zapiszę sobie przypominajkę, żeby wrócić do tego zadania wyposażony w maszynę stanów.
  13. #define green 13 #define red 12 #define yellow 11 #define button 8 #define resistor A5 int valueToGuess = 0; int attempt = 0; int duration = 500; void setup() { pinMode(green, OUTPUT); pinMode(red, OUTPUT); pinMode(yellow, OUTPUT); pinMode(button, INPUT_PULLUP); Serial.begin(9600); Serial.println("Zagrajmy - ustaw potencjometr i wciśnij guzik"); } void loop() { String userInput = ""; int userValue = 0; attempt = 0; while (digitalRead(button) == HIGH) {} //czekaj na przycisk valueToGuess = analogRead(resistor); while (attempt < 4) { attempt++; Serial.pr
  14. @Gieneq W PSpice są dostępne elementy typu diody, tranzystory, wzmacniacze operacyjne itp. (nie pamiętam czy układy logiczne też tam są). Nie wiem czy są obecnie jakieś darmowe wersje - ja dostałem taką na studiach ~10 lat temu. Myślałem, że w LTspice też są dostępne i takie bardzie skomplikowane układy też na tym kursie będą. Niecierpliwie czekam na kolejną część
  15. @Treker Kupiłem kilka książek na wyprzedaży w ebookpoint, o której pisaliście na stronie - "elektronika dla bystrzaków", "elektronika od praktyki do teorii" itd. Przerobię je, a potem w planach Arduino. Zastanawiałem się jeszcze nad układem resetującym licznik przy włączeniu zasilania - próbowałem z multiwibratorem monostabilnym na bazie NE555, ale to nie działa - przy podłączeniu wyprowadzenia 2 do zera generuje ciąg sygnałów a nie jeden.
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.