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



Teraz jest 26 lut 2025, o 16:08


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 12 ] 
Autor Wiadomość
PostNapisane: 8 lut 2015, o 15:18 
Offline
Nowy

Dołączył(a): 08 lut 2015
Posty: 7
Zbananowany użytkownik

Pomógł: 0

Witam wszystkich!! Usiluje napisac prosty program, ktory w petli oczekuje na stan na pinie PB0 i w zaleznosci od stanu zapala diode na porcie PB1. Caly "projekt" opiera sie o plytke stykowa do ktorej do pinu PB1 katoda podlaczona jest dioda a przez rezystor 200 anoda do vcc. Glownym moim zamierzeniem jest odczyt stanu wysokiego z zewnetrznego zrodla np. z baterii np podlaczajac - baterii do masy a + zwierac z pinem wejsciowym PB0.

Napisalem prosty kod ale nie bardzo on dziala. Gdzie robie blad?

Kod:
#include <avr/io.h>

int main(void){
        DDRB |= (1<<PB1);
        DDRB &= ~(1<<PB0);
        while(1){
        if(!(PINB & (0<<PB0)))
        {
        PORTB  |= (0<<PB1);
        }else
                {
                PORTB |= (1<<PB1);
                }

        }
    return 0;
}



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 lut 2015, o 16:26 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 23 wrz 2013
Posty: 161
Lokalizacja: Rbk
Pomógł: 5

Lepiej jest mierzyć stan niski na porcie. Poza tym co załącza ten stan na tym pinie? Bo jeśli przycisk typu Tack switch to musisz podciągnąć pin PB0 do VCC przez rezystor np. 10K lub programowo eliminować drgania styków.

Załączać diodę i gasić możesz w taki sposób:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Pozdrawiam!



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 lut 2015, o 16:27 
Offline
Nowy

Dołączył(a): 08 lut 2015
Posty: 7
Zbananowany użytkownik

Pomógł: 0

Nic nie zalacza. Chcialem przprowadzic symulacje sygnalu PWM z zewnetrznego zrodla.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 lut 2015, o 16:43 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 27 lut 2014
Posty: 68
Lokalizacja: Częstochowa
Pomógł: 3

Spróbuj tego:

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 lut 2015, o 17:30 
Offline
Nowy

Dołączył(a): 08 lut 2015
Posty: 7
Zbananowany użytkownik

Pomógł: 0

Bardzo dziekuje za kod. Dziala swietnie na zwarcie do masy, pewnie jakas reakacja na klawisz. Co chce osiagnac? Planuje wyswietlac za pomoca diody czestortliowsc wtryskow paliwa w silniku ZI. Mierzylem teraz sygnal sterujacy PWM z komputera i po podpieciu woltomierza minus z masa zapalniczki i plus z wyjsciem PWM. Na wlaczonym zaplonie pokazuje 12v a po odpaleniu silnika i wcisnieciu pedalu przyspieszenia napiecie maleje. Czy to oznacza, ze wytyski sa sterowane masa? Jak narazie nic nie podlaczalem bo napiecie jest za duze. Planuje go zmiejszyc do okolo 3v i podpiac pod pin PB0. Mase samochodu polaczyc z masa zasilania ukladu. Nie wiem jeszcze jak rozwiazac problem zmniejszenia napiecia, czy zastowac dzielnik czy moze inny bezpieczniejszy sposob. Czy to ma szanse zadzialac?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 lut 2015, o 17:35 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 27 lut 2014
Posty: 68
Lokalizacja: Częstochowa
Pomógł: 3

Możesz zrobić dzielnik napięcia, lub oddzielić galwanicznie za pomocą jakiegoś transoptora ;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 lut 2015, o 17:46 
Offline
Nowy

Dołączył(a): 08 lut 2015
Posty: 7
Zbananowany użytkownik

Pomógł: 0

Czy moje rozumowanie jest dobre? Jezeli podepne niskie napiecie na nozke wejscia PB0 a mase z zapalniczki do masy na plytce to czy to ma prawo dzialac? Czy nie uszkodze procesora?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 lut 2015, o 17:48 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 27 lut 2014
Posty: 68
Lokalizacja: Częstochowa
Pomógł: 3

Nie uszkodzisz, ponieważ masa zawsze ma 0 V. Gdybyś 12 V podłączył prosto do procesora to by się uszkodził.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 lut 2015, o 18:13 
Offline
Nowy

Dołączył(a): 08 lut 2015
Posty: 7
Zbananowany użytkownik

Pomógł: 0

Podczas wykonywania programu podlaczajac miernik - do masy i + do nozki PB0(wejscie sygnalu) pokazuje okolo 5v, po zwarciu do masy pokazuje 0. Te napiecia sie ronowaza gdy podepne pod nozke PB0 napiecie np okolo 5v z zewnetrznego zrodla?

Zrobolem eksperyment; podlaczylem BP0 do masy - dioda swieci. Dalem zasilanie z plytki na PB0 i przestaje swiecic czyli dziala. Czy tak mozna? Nic nie popsuje? To tak jak bym zwieral vcc do masy?



Ostatnio edytowano 8 lut 2015, o 18:26 przez err_or, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 lut 2015, o 18:24 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 27 lut 2014
Posty: 68
Lokalizacja: Częstochowa
Pomógł: 3

Na nóżce PB0 jest stan wysoki (5V), bo jest podciągnięta wewnętrznym rezystorem do VCC. Nawet jeśli podłączysz 5V z innego źródła nic się nie stanie ;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 lut 2015, o 18:48 
Offline
Nowy

Dołączył(a): 08 lut 2015
Posty: 7
Zbananowany użytkownik

Pomógł: 0

dziekuje za pomoc.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 lut 2015, o 21:12 
Offline
Nowy

Dołączył(a): 08 lut 2015
Posty: 7
Zbananowany użytkownik

Pomógł: 0

Podlaczylem Twoj kawalek kodu pod sygnal pwm. Dioda zapala sie szybciej po dodaniu gazu. Na hamowaniu silnikiem nie swieci bo wtryski nie dzialaja :)



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: 12 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

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


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