FTNewbie Marzec 25, 2024 Udostępnij Marzec 25, 2024 (edytowany) Cześć wszystkim! Zadania. Zadanie 8.1 void setup() { pinMode(6, OUTPUT); // Sygnał PWM silnika 1 digitalWrite(6, HIGH); // Ustawiamy (na stałe) stan wysoki na pinie 6 pinMode(5, OUTPUT); // Sygnał PWM silnika 2 digitalWrite(5, HIGH); // Ustawiamy na stałe stan wysoki na pinie 5 pinMode(7, OUTPUT); // Sygnały sterujące kierunkiem obrotów silnika nr 1 pinMode(8, OUTPUT); pinMode(5, OUTPUT); // Sygnały sterujące kierunkiem obrotów silnika nr 2 pinMode(4, OUTPUT); } void loop() { digitalWrite(7, LOW); // Silnik nr 1 - w przód digitalWrite(8, HIGH); digitalWrite(5, LOW); // Sinlin nr 2 - w przód digitalWrite(4, HIGH); delay(3000); digitalWrite(7, HIGH); // Silnik nr 2 - obroty w prawo digitalWrite(8, LOW); digitalWrite(5, LOW); // Silnik nr 2 - obroty w lewo digitalWrite(4, HIGH); delay(3000); digitalWrite(7, HIGH); // Silnik nr 1 - w tył digitalWrite(8, LOW); digitalWrite(5, HIGH); // Silnik nr 2 - w tył digitalWrite(4, LOW); delay(3000); } Zadanie 8.2 dla pętli While: int ledBlink = 0; void setup() { Serial.begin(9600); pinMode(8, OUTPUT); digitalWrite(8, LOW); } void loop() { while(ledBlink < 5){ digitalWrite(8, HIGH); delay(1000); digitalWrite(8, LOW); delay(1000); ledBlink++; } } Miałem także dla FOR, ale chyba nadpisałem projekt programu pętlą while. Zadanie 8.3 String userInput; int userToInt = 0; void setup() { Serial.begin(9600); Serial.println("Podaj liczbe z zakresu 0-9"); } void loop() { while(Serial.available() == 0){} userInput = Serial.readStringUntil('\n'); if(userInput.toInt() >= 0 && userInput.toInt() <= 9){ userToInt = userInput.toInt(); for(userToInt; userToInt != 0; userToInt--){ Serial.print("*"); } }else{ Serial.println("Podaj liczbe z zakresu 0-9"); } } Zadanie 8.4 int motorSpeed = 0; void setup() { pinMode(6, OUTPUT); // Sygnał silnika PWM nr 1 pinMode(7, OUTPUT); // Sygnały sterujące kierunkiem obrotów silnika nr 1 pinMode(8, OUTPUT); digitalWrite(7, LOW); // Silnik nr 1 - obroty w lewo digitalWrite(8, HIGH); } void loop() { for (motorSpeed; motorSpeed <= 255; motorSpeed++){ analogWrite(6, motorSpeed); // Spokojne rozpędzanie silnika delay(25); } for (motorSpeed; motorSpeed >= 0; motorSpeed--){ analogWrite(6, motorSpeed); delay(25); } } Edytowano Marzec 25, 2024 przez FTNewbie 1
ARDIP Kwiecień 18, 2024 Udostępnij Kwiecień 18, 2024 String data = ""; //Data send by UART int value = 0; //Data changed to int int i = 0; //Data for operation within for loop void setup() { Serial.begin(9600); //UART communication start } void loop() { if(Serial.available() > 0) { //Whether Arduino get data data = Serial.readStringUntil('\n'); //If yes, read them to the end of line and save value = data.toInt(); //Change data to int if(value <= 9) { //Function to designate of max value for(int i = 0; i < value; i++) { //Function to count stars number Serial.print("*"); //Stars display } } Serial.print("\n"); //Line end } }
ARDIP Kwiecień 18, 2024 Udostępnij Kwiecień 18, 2024 Zadanie 8.4 void setup() { pinMode(6, OUTPUT); // PWM signal motor 1 pinMode(7, OUTPUT); // Control signal of direction turn at motor 1 pinMode(8, OUTPUT); digitalWrite(7, LOW); // Motor 1 - left turnover direction digitalWrite(8, HIGH); } void loop() { for(int i = 0; i <= 255; i++) { analogWrite(6, i); // Motor acceleration delay(25); } for(int i = 255; i >= 0; i--) { analogWrite(6, i); // Motor slowdown delay(25); } }
Krzysztof1029 Czerwiec 29, 2024 Udostępnij Czerwiec 29, 2024 Witam. Mam pytanie. Ilekroć piszę prosty program z UART, pierwsza wiadomość jaka do mnie przychodzi jest z małymi kwadracikami. Czy ktoś może mi powiedzieć jak to naprawić?
Treker (Damian Szymański) Lipiec 1, 2024 Udostępnij Lipiec 1, 2024 @Krzysztof1029 witam na forum Sprawdź, czy dodanie krótkiego opóźnienia na początku programu (np. 100, 200 ms) nie rozwiąże u Ciebie tego problemu. Sytuacja z "kwadracikami" może wyglądać różnie na każdym komputerze.
Norbiii Październik 19, 2024 Udostępnij Październik 19, 2024 Czy przypadkiem tabela prawdy nie różni się od tego co jest przedstawione na zdjęciach z diodą, mam na myśli że w tabeli jest że gdy IN1 = 1 i IN2 = 0 to kręci się w lewo a w przypadku naszego schematu gdy IN1 = 0 i IN2 = 1 to kręci się w lewo (dioda czerwona świeci) 1
Treker (Damian Szymański) Październik 20, 2024 Udostępnij Październik 20, 2024 @Norbiii gratuluję czujności, jest tu nieścisłość - faktycznie. Na szczęście kierunek obrotów jest tylko umowny w tym przypadku
T101 Październik 26, 2024 Udostępnij Październik 26, 2024 Część Podłączyłem układ tak jak w kursie, kilka razy sprawdzałem, wymieniłem diody i nic się nie dzieje.
Sylba Październik 26, 2024 Udostępnij Październik 26, 2024 1 godzinę temu, T101 napisał: Podłączyłem układ tak jak w kursie W kursie było ładniej połączone, przynajmniej było widać co z czym jest połączone. A na tym zdjęciu widać chaos.
T101 Październik 28, 2024 Udostępnij Październik 28, 2024 Prześlę może takie etapami jak w kursie. Lepiej czy nadal chaos?
Sylba Październik 28, 2024 Udostępnij Październik 28, 2024 T101 podziwiam twoją wytrwałość. Czy mógłbyś jednak przed wrzuceniem zdjęć na stronę sprawdzić czy: - są ostre - czy widać na nich opisy liczb na płytce stykowej - czy widać nr pinów na płytce Arduino - czy widać które piny Arduino są połączone z którymi otworami płytki stykowej - czy widać jak są zamontowane na płytce stykowej inne elementy: rezystory, kondensatory Oświetlenie twojego miejsca pracy nie jest zbyt jasne więc może mógłbyś użyć lampy błyskowej w aparacie (jeśli taka jest)? Jeśli miałbyś z tym dalej problem to narysuj prosty rysunek składający się z prostokątów, kwadratów, trójkątów i kółek połączonych liniami i opisanych numerami jak na płytce Arduino i płytce stykowej. 1
T101 Październik 29, 2024 Udostępnij Październik 29, 2024 (edytowany) Te są lepsze? Chociaż nie wiem po co wstawiam skoro tym razem zadziałało Wszystko raczej podłączyłem tak samo. Kondensator jest co prawda w innym miejscu(bardziej na prawo) ale czy to ma znaczenie? Teraz czas na podłączenie jakiegoś silnika. Edytowano Październik 29, 2024 przez T101
Sylba Październik 29, 2024 Udostępnij Październik 29, 2024 56 minut temu, T101 napisał: Te są lepsze? Te fotografie nie wyświetlają się w ogóle. 1
T101 Październik 29, 2024 Udostępnij Październik 29, 2024 1 godzinę temu, Sylba napisał: Te fotografie nie wyświetlają się w ogóle. Poprawione.
Sylba Październik 29, 2024 Udostępnij Październik 29, 2024 (edytowany) Nadal niewiele widać. To co udało mi się zobaczyć to: - nie podłączony pin 16 układu scalonego do +5V Arduino; - źle podłączone piny 12 i 11; - nie podłączony do GND pin 13 Sterowanie silnikiem_1.pdf Przesyłam rysunek płytki Arduino i mostka H. Wrysuj na tym rysunku co z czym podłączyłeś. Arduino + mostek H.pdf Edytowano Październik 29, 2024 przez Sylba 1
Pomocna odpowiedź
Bądź aktywny - zaloguj się lub utwórz konto!
Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony
Utwórz konto w ~20 sekund!
Zarejestruj nowe konto, to proste!
Zarejestruj się »Zaloguj się
Posiadasz własne konto? Użyj go!
Zaloguj się »