Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 20 kwi 2024, o 12:33


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 10 ] 
Autor Wiadomość
PostNapisane: 5 maja 2016, o 15:03 
Offline
Nowy

Dołączył(a): 30 kwi 2016
Posty: 13
Pomógł: 0

Witam ponownie :)
Dzisiaj przychodzę do was z innym problemem :D Zrobiłem układ który po wciśnięciu przycisku zapala diode przez ustawiony czas na potencjometrze( na dole macie mój kod, pewnie łatwiej go zrobić ale dopiero się uczę:) ). Problem polega na tym, że jak sprawdzałem kod na arduino to wszystko działało dobrze, po wgraniu na atmege dioda miga jak szalona ( zamiast nastawionego czasu świeci się jak chce). Moim zdaniem mam problem z zakłóceniami i moje pytanie brzmi jak mogę je wyeliminować?:D
Poniżej daje schemat ( układ jest łączony linkami 20cm jakich się używa do płytek)
Obrazek

Kod:
int dane = 0;
void setup() {
  // put your setup code here, to run once:
pinMode(8, OUTPUT);


pinMode(7, INPUT_PULLUP);

digitalWrite(8, LOW);


   
}

void loop() {
  // put your main code here, to run repeatedly:

dane = analogRead(A5);
dane = map(dane, 3, 1021, 1, 23);


switch (dane) {
    case 1:

if (digitalRead(7) == LOW)
{

      digitalWrite(8, HIGH);
      delay(100);
      digitalWrite(8, LOW);
delay(700);
    break;
}
    case 2:

    if (digitalRead(7) == LOW)
    {

      digitalWrite(8, HIGH);
      delay(150);
      digitalWrite(8, LOW);
delay(700);
    break;
    }
    case 3:


    if (digitalRead(7) == LOW)
    {

      digitalWrite(8, HIGH);
      delay(200);
      digitalWrite(8, LOW);
      delay(700);
    break;
    }


    case 4:



    if (digitalRead(7) == LOW)
    {

      digitalWrite(8, HIGH);
      delay(250);
      digitalWrite(8, LOW);
delay(700);
    break;
    }
    case 5:


    if (digitalRead(7) == LOW)
    {

      digitalWrite(8, HIGH);
      delay(300);
      digitalWrite(8, LOW);
      delay(700);
    break;
    }
    case 6:

if (digitalRead(7) == LOW)
{

      digitalWrite(8, HIGH);
      delay(350);
      digitalWrite(8, LOW);
delay(700);
    break;
}
    case 7:



    if (digitalRead(7) == LOW)
    {

      digitalWrite(8, HIGH);
      delay(400);
      digitalWrite(8, LOW);
delay(700);
    break;
    }
    case 8:


    if (digitalRead(7) == LOW)
    {

      digitalWrite(8, HIGH);
      delay(450);
      digitalWrite(8, LOW);
      delay(700);
    break;
    }
    case 9:

if (digitalRead(7) == LOW)
{

      digitalWrite(8, HIGH);
      delay(500);
      digitalWrite(8, LOW);
delay(700);
    break;
}
    case 10:



    if (digitalRead(7) == LOW)
    {

      digitalWrite(8, HIGH);
      delay(550);
      digitalWrite(8, LOW);
delay(700);
    break;
    }
    case 11:


    if (digitalRead(7) == LOW)
    {

      digitalWrite(8, HIGH);
      delay(600);
      digitalWrite(8, LOW);
      delay(700);
    break;
    }
    case 12:

if (digitalRead(7) == LOW)
{

      digitalWrite(8, HIGH);
      delay(650);
      digitalWrite(8, LOW);
delay(700);
    break;
}
    case 13:



    if (digitalRead(7) == LOW)
    {

      digitalWrite(8, HIGH);
      delay(700);
      digitalWrite(8, LOW);
delay(700);
    break;
    }
    case 14:

    if (digitalRead(7) == LOW)
    {

      digitalWrite(8, HIGH);
      delay(750);
      digitalWrite(8, LOW);
      delay(700);
    break;
    }
    case 15:

if (digitalRead(7) == LOW)
{

      digitalWrite(8, HIGH);
      delay(800);
      digitalWrite(8, LOW);
delay(700);
    break;
}
    case 16:



    if (digitalRead(7) == LOW)
    {

      digitalWrite(8, HIGH);
      delay(850);
      digitalWrite(8, LOW);
delay(700);
    break;
    }
    case 17:


    if (digitalRead(7) == LOW)
    {

      digitalWrite(8, HIGH);
      delay(900);
      digitalWrite(8, LOW);
      delay(700);
    break;
    }
    case 18:

if (digitalRead(7) == LOW)
{

      digitalWrite(8, HIGH);
      delay(950);
      digitalWrite(8, LOW);
delay(700);
    break;
}
    case 19:


    if (digitalRead(7) == LOW)
    {

      digitalWrite(8, HIGH);
      delay(1000);
      digitalWrite(8, LOW);
delay(700);
    break;
    }
        case 20:

if (digitalRead(7) == LOW)
{

      digitalWrite(8, HIGH);
      delay(1050);
      digitalWrite(8, LOW);
delay(700);
    break;


  }
          case 21:

if (digitalRead(7) == LOW)
{

      digitalWrite(8, HIGH);
      delay(1100);
      digitalWrite(8, LOW);
delay(700);
    break;


  }
          case 22:

if (digitalRead(7) == LOW)
{

      digitalWrite(8, HIGH);
      delay(1150);
      digitalWrite(8, LOW);
delay(700);
    break;


  }
          case 23:

if (digitalRead(7) == LOW)
{

      digitalWrite(8, HIGH);
      delay(1200);
      digitalWrite(8, LOW);
delay(700);
    break;


  }
}
}



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 maja 2016, o 15:13 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

Cytuj:
Poniżej daje schemat
To nie jest schemat ...

Nie masz zrobionego poprawnego zasilania. Dodatkowo korzystasz ADC a AVCC i AREF nie mają odpowiednich podłaczeń ...

Zajrzyj na bloga Mirka (http://mirekk36.blogspot.com), tam znajdziesz poradniki o ADC (i przy okazji o robieniu schematów ...).

--
Pozdrawiam,
Robert

------------------------ [ Dodano po: 3 minutach ]

http://mirekk36.blogspot.com/2013/06/pr ... acych.html
http://mirekk36.blogspot.com/2012/12/fi ... wazne.html
http://mirekk36.blogspot.com/2012/04/mi ... lanie.html

http://mirekk36.blogspot.com/2012/04/ku ... rt-01.html



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 maja 2016, o 15:27 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 paź 2011
Posty: 8583
Pomógł: 337

rskup napisał(a):
To nie jest schemat ...


to jest niestety schemat , ale arduinowy ... nic nie poradzisz ... a szkoda


jak chcesz czytać potka to używasz analogRead ,,

Po za tym kolego arth1010 popraw wklejanie kodu na forum !!!!!!!!!!!!!!!!!!!!!
Dodatkowo , piszesz o Arduino a wrzucasz posty gdzie się da .... Tym razem przeniosę
ale następnym razem będę usuwał ... bo zasady są opisane i trzeba się z nimi zapoznać.

_________________
[b]San Escobar! Patria mia! Tu eres como la salud.[/b]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 maja 2016, o 00:01 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

SunRiver napisał(a):
rskup napisał(a):
To nie jest schemat ...

to jest niestety schemat , ale arduinowy ... nic nie poradzisz ... a szkoda

Schemat to to może i jest, bo pojęcie to jest bardzo uniwersalne. Ale na pewno nie jest to schemat elektryczny układu.
Dodatkowo aby czytać takie "schematy" to trzeba albo znać na pamięć pinouty wszystkich układów albo dodatkowo otwierać datasheety by to sprawdzać :(

--
Pozdrawiam,
Robert



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 maja 2016, o 05:59 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27224
Lokalizacja: Szczecin
Pomógł: 1041

ZDECYDOWANIE potwierdzam, że to nie jest żaden schemat i nie posługujemy się czymś takim na tym forum. Kolega arth1010 z uporem godnym podziwu już nie w pierwszym swoim wątku nie chce ani stosować prawidłowego formatowania kodu zgodnie z instrukcją forum:

topic7402.html

ani nie chce mu się sięgnąć po darmowe narzędzie i kurs
http://atnel.pl/kurs-cadsoft-eagle.html

więc leci ostrzeżenie (WARN) .... następnym razem będzie saksowanie wątku a kolejnym posunięciem w przypadku dalszego rysowania na forum tego typu laurek i nie stosowania formatowania kodu - będzie bananik - przykro mi

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 maja 2016, o 09:26 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 26 sty 2016
Posty: 1148
Lokalizacja: Kraków
Pomógł: 93

A nie czepiając się formatowania kodu i innych takich... przycisk jest źle wpięty. Jest cały czas zwarty



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 maja 2016, o 09:54 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 09 gru 2014
Posty: 1540
Pomógł: 269

Marhef napisał(a):
A nie czepiając się formatowania kodu i innych takich... przycisk jest źle wpięty. Jest cały czas zwarty

Jeszcze ten stabilizator, zapewne 7805, ma zamienione wejście z wyjściem. Brak rezystora na pinie reset procka, brak kondensatorów filtrujących, nie mówiąc już o dławiku...

Ta laurka jest dla taty... :D



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 maja 2016, o 10:45 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27224
Lokalizacja: Szczecin
Pomógł: 1041

anshar napisał(a):
Ta laurka jest dla taty...

:lol:

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 maja 2016, o 10:46 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 26 sty 2016
Posty: 1148
Lokalizacja: Kraków
Pomógł: 93

Ciekaw jestem, co autor miał na myśli wpinając w ten sposób kondensator, łatwiej byłoby wpiąć w linie zasilające na krawędzi płytki



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 maja 2016, o 20:58 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 01 lis 2015
Posty: 1448
Lokalizacja: okolice Warszawa
Pomógł: 149

Witam
Zauważyłem diodę wpiętą anodą do "-". nie zadziała.:(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 10 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 1 gość


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO