Skocz do zawartości

Radosław

Użytkownicy
  • Zawartość

    4
  • Rejestracja

  • Ostatnio

Reputacja

0 Neutralna

O Radosław

  • Ranga
    1/10

Informacje

  • Płeć
    Mężczyzna
  • Zainteresowania
    Motoryzacja, elektronika, robotyka
  • Zawód
    Student
  1. Treker, dzięki za odpowiedź. Teraz jak testuję tą samą czynność to zajmuje mi to o dziwo po ok. 20 sekund (?). Mam podłączony modem od internetu do USB, czasami ładowarkę ( pracuję na laptopie ). Pomimo wyjęcia tych wszystkich kabli i zostawienia jedynie tego od Arduino czas "zawieszenia" się nie zmienia ( taki sam efekt po restarcie ). Jakiś czas temu usunąłem program, ściągnąłem go z polecanej strony z 1. części kursu podstaw Arduino i zainstalowałem ponownie. Również bez pozytywnych rezultatów. Jeszcze odnoście czasu wgrywania na płytkę. Podejrzewam, że zależy od wielkości programu, ale przykładowo program z #5 części kursu budowy robotów wgrywał mi się ok. 20 sekund. Chyba też przy długo... Nie myśl nad tym za długo i tak pewnie masz inną robotę, ale jak coś Ci wpadnie do głowy to możesz dać znać
  2. Witam. Mam problem ( ? ) z UARTem. U mnie po naciśnięciu polecenia "Narzędzia" w programie Arduino trzeba odczekać ok. 30 sekund aż rozwinie się lista. Następnie po kliknięciu polecenia "Szeregowy monitor" znów konieczne jest odczekania następnych 30 sekund, żeby zobaczyć to co wysyłamy w programie. Czy tak powinno być ? Gdzie tu szukać rozwiązania ?
  3. #define seg_a 7 //Opis #define seg_b 5 //segmentów #define seg_c 2 // i #define seg_d 4 // ich #define seg_e 3 //pinów #define seg_f 6 #define seg_g 8 #define wys_jed 9 // piny do #define wys_dwa 10 // wyświetlaczy void setup() { pinMode(seg_a,OUTPUT); pinMode(seg_b,OUTPUT); pinMode(seg_c,OUTPUT); pinMode(seg_d,OUTPUT); pinMode(seg_e,OUTPUT); pinMode(seg_f,OUTPUT); pinMode(seg_g,OUTPUT); pinMode(wys_jed,OUTPUT); pinMode(wys_dwa,OUTPUT); } int k=0; //Z mienna potrzeba do poruszania się po kolumnach tablicy "stany" byte segmenty[7]={seg_a,seg_b,seg_c,seg_d,seg_e,seg_f,seg_g}; // Tablica przechowująca piny Arduino od poszczególnych segmentów int stany[10][7]={{HIGH,HIGH,HIGH,HIGH,HIGH,HIGH,LOW}, {LOW,HIGH,HIGH,LOW,LOW,LOW,LOW}, // Tablica dwuwymiarowa, która {HIGH,HIGH,LOW,HIGH,HIGH,LOW,HIGH}, // przechowuje stany segmentów {HIGH,HIGH,HIGH,HIGH,LOW,LOW,HIGH}, // dla kolejnych cyfr {LOW,HIGH,HIGH,LOW,LOW,HIGH,HIGH}, {HIGH,LOW,HIGH,HIGH,LOW,HIGH,HIGH}, {HIGH,LOW,HIGH,HIGH,HIGH,HIGH,HIGH}, {HIGH,HIGH,HIGH,LOW,LOW,LOW,LOW}, {HIGH,HIGH,HIGH,HIGH,HIGH,HIGH,HIGH}, {HIGH,HIGH,HIGH,HIGH,LOW,HIGH,HIGH}}; void loop() { for(int i=0;i<10;i++){ // Pętla do zmiany cyfry dziesiątek for ( int j=0;j<10;j++){ // Pętla do zmiany cyfry jedności for( int k=0;k<10;k++){ // Pętla do zmiany czasu trwania odliczania digitalWrite(wys_jed,HIGH); // Włączenie wyświetlacza numer 1 digitalWrite(wys_dwa,LOW); // Wyłączenie wyświetlacza numer 2 showTheNumber(i); // Funkcja do wybierania odpowiedniej cyfry delay(5); digitalWrite(wys_jed,LOW); digitalWrite(wys_dwa,HIGH); showTheNumber(j); delay(5); } } } } void showTheNumber(byte number){ for ( int i=0; i<7; i++){ // Pętla do poruszania się po kolejnych segmentach digitalWrite(segmenty[i],stany[number][k]); // Załączanie segmentów w zależności od cyfry, która ma być wyświetlona k++; if(k==7) k=0; // Jeżeli cyfra została wyświetlona to idziemy do następnej } } Hej marek 1707, dzięki za komentarz. Czy chodziło Ci o coś takiego ?
  4. Moje rozwiązanie zadania 6.3 : #define seg_a 7 //Opis #define seg_b 5 //segmentów #define seg_c 2 // i #define seg_d 4 // ich #define seg_e 3 //pinów #define seg_f 6 #define seg_g 8 #define wys_jed 9 // piny do #define wys_dwa 10 // wyświetlaczy void setup() { pinMode(seg_a,OUTPUT); pinMode(seg_b,OUTPUT); pinMode(seg_c,OUTPUT); pinMode(seg_d,OUTPUT); pinMode(seg_e,OUTPUT); pinMode(seg_f,OUTPUT); pinMode(seg_g,OUTPUT); pinMode(wys_jed,OUTPUT); pinMode(wys_dwa,OUTPUT); } void loop() { for(int j=0;j<10;j++) //Pętla do zmiany pierwszej cyfry { for ( int i=0;i<10;i++){ //Pętla do zmiany drugiej cyfry for(int k=0; k<30; k++){ //Pętla do ustawiania szybkości licznika digitalWrite(wys_jed,HIGH); //Włączamy 1. wyświetlacz digitalWrite(wys_dwa,LOW); //Włączamy 2. wyświetlacz showTheNumber(j); //Funkcja dobierająca odopwiednią cyfrę ( kod poniżej ) delay(5); digitalWrite(wys_dwa,HIGH); //Włączamy 2. wyświetlacz digitalWrite(wys_jed,LOW); //Wyłączamy 1. wyświetlacz showTheNumber(i); delay(5); } } } } void showTheNumber(byte number){ switch(number){ case 0: digitalWrite(seg_a,HIGH); digitalWrite(seg_b,HIGH); digitalWrite(seg_c,HIGH); digitalWrite(seg_d,HIGH); digitalWrite(seg_e,HIGH); digitalWrite(seg_f,HIGH); digitalWrite(seg_g,LOW); break; case 1: digitalWrite(seg_a,LOW); digitalWrite(seg_b,HIGH); digitalWrite(seg_c,HIGH); digitalWrite(seg_d,LOW); digitalWrite(seg_e,LOW); digitalWrite(seg_f,LOW); digitalWrite(seg_g,LOW); break; case 2: digitalWrite(seg_a,HIGH); digitalWrite(seg_b,HIGH); digitalWrite(seg_c,LOW); digitalWrite(seg_d,HIGH); digitalWrite(seg_e,HIGH); digitalWrite(seg_f,LOW); digitalWrite(seg_g,HIGH); break; case 3: digitalWrite(seg_a,HIGH); digitalWrite(seg_b,HIGH); digitalWrite(seg_c,HIGH); digitalWrite(seg_d,HIGH); digitalWrite(seg_e,LOW); digitalWrite(seg_f,LOW); digitalWrite(seg_g,HIGH); break; case 4: digitalWrite(seg_a,LOW); digitalWrite(seg_b,HIGH); digitalWrite(seg_c,HIGH); digitalWrite(seg_d,LOW); digitalWrite(seg_e,LOW); digitalWrite(seg_f,HIGH); digitalWrite(seg_g,HIGH); break; case 5: digitalWrite(seg_a,HIGH); digitalWrite(seg_b,LOW); digitalWrite(seg_c,HIGH); digitalWrite(seg_d,HIGH); digitalWrite(seg_e,LOW); digitalWrite(seg_f,HIGH); digitalWrite(seg_g,HIGH); break; case 6: digitalWrite(seg_a,HIGH); digitalWrite(seg_b,LOW); digitalWrite(seg_c,HIGH); digitalWrite(seg_d,HIGH); digitalWrite(seg_e,HIGH); digitalWrite(seg_f,HIGH); digitalWrite(seg_g,HIGH); break; case 7: digitalWrite(seg_a,HIGH); digitalWrite(seg_b,HIGH); digitalWrite(seg_c,HIGH); digitalWrite(seg_d,LOW); digitalWrite(seg_e,LOW); digitalWrite(seg_f,LOW); digitalWrite(seg_g,LOW); break; case 8: digitalWrite(seg_a,HIGH); digitalWrite(seg_b,HIGH); digitalWrite(seg_c,HIGH); digitalWrite(seg_d,HIGH); digitalWrite(seg_e,HIGH); digitalWrite(seg_f,HIGH); digitalWrite(seg_g,HIGH); break; case 9: digitalWrite(seg_a,HIGH); digitalWrite(seg_b,HIGH); digitalWrite(seg_c,HIGH); digitalWrite(seg_d,HIGH); digitalWrite(seg_e,LOW); digitalWrite(seg_f,HIGH); digitalWrite(seg_g,HIGH); break; default: digitalWrite(seg_a,HIGH); digitalWrite(seg_b,LOW); digitalWrite(seg_c,LOW); digitalWrite(seg_d,HIGH); digitalWrite(seg_e,LOW); digitalWrite(seg_f,LOW); digitalWrite(seg_g,HIGH); break; } }
×