Skocz do zawartości

TSOP sprawdzenie schematu


Pomocna odpowiedź

Napisano

witam

Mógłby ktoś zerknąć na schemat w okolicach tsopa?

Problem jest taki, że tsop nie działa. Jestem już na etapie super prostego programu w Bascomie, który ma tylko zapalić LEDa po kliknięciu pilotem.

Używam TSOP2236, z tego co zdążyłem zauważyć, na schemacie przy tsopie VCC z GND jest na odwrót, dlatego TSOPa montuje z odpowiednio powyginanymi nóżkami...

Z góry dzięki

Ja tu nie widzę żadnego schematu tylko rysunek płytki - zmuszasz mnie do bezsensownego wnikania którędy poprowadziłeś masę (a zrobiona jest kiepściuchno) a która ścieżka to zasilanie 👹 W okolicach czujnika widzę zupełnie niepotrzebny rezystor szeregowo z wyjściem TSOPa. Jeżeli rzeczywiście wstawiłeś tam 10k (po co - mógłbyś to wytłumaczyć?) to w połączeniu z rezystorem podciągającym na wejściu portu (załączyłeś go programowo?) daje taki dzielnik, że procesor wcale nie musi zobaczyć zera wysyłanego z czujnika. Jeżeli natomiast pull-up'a nie włączyłeś, na wejściu możesz zera spodziewać się permanentnie.

Czy złącze wannowe, którego użyłeś do programatora nie będzie tego czujnika zasłaniać?

Jeśli prosisz o analizę układu to na drugi raz dawaj schemat.

Dorzucam schemat, przepraszam, że dopiero teraz 😉

Skąd ten 10k przy TSOPie - nie wiem, pewnie jakaś sugestia kolegów i tak wyszło...

Ok, źle spojrzałem, to nie kondensatory, a ledy 😉

W każdym razie ze schematem o wiele lepiej niż z projektem pcb.

Z poważnych błędów. Ułożenie pinów na złączu czujników. na pcb głównym na skrajnym masz +5 a pcb z czujkami gnd. 😉

Ledy lepiej podłączyć katodą do procka, po co obciążać wbudowane pullupy?

TSOP tak jak marek napisał. Wywal rezka miedzy OUT a procem i będzie git. 😉

@EDIT

I zastanów się czy nie lepiej byłoby dać jakikolwiek kwarc z racionalnego przedziału.

Na wbudowanym oscylatorze bywają spore problemy z komunikacją po uart (asynchronicznym), a widzę, że takowe piny masz wyprowadzone.

Z tymi czujnikami jest w ogóle namieszane , dlatego powstała mała plątanina kabli. Błędy świeżaka... 😉

R wywaliłem, niestety nadal nie działa... 🙁

Czy dobrze zrobiłem zamieniając GND z VCC w TSOPie tak jak to opisałem w 1. poście?

Na wbudowanym oscylatorze bywają spore problemy z komunikacją po uart (asynchronicznym), a widzę, że takowe piny masz wyprowadzone.

Złącza wyprowadziłem ale wątpie, żebym ich użył... a na kwarc nawet nie mam miejsca

EDIT:

$regfile = "m8def.dat"
$crystal = 8000000
$lib "mcsbyte.lbx"
Config Portb = Input
Config Portd = Output
       Portd = &B00000000
Config Rc5 = Pinb.0
Dim Address As Byte , Command As Byte
Enable Interrupts

Do
Getrc5(address , Command)
If Address = 0 And Command = 12 Then
  Toggle Portd.6
End If
Waitms 100
Loop

Testuje to wszystko na takim kodzie. Jeśli przytrzymam wciśnięty przycisk on/off na pilocie (command 12) to po jakiś 30 sekundach reaguje i włącza/wyłącza diodę...

30 sekund.. przecież to wieczność dla takiego scalaczka 😋

Masz dobrze ustawione fusy?

Najlepiej zrób w pętli do...loop toggle'a na porcie z ledem i waitms na 500ms - też w tej pętli, jak będzie migał led z okresem 1s. to znaczy że jest ok.

Swoją drogą nie wiedziałem, że robot już istnieje, myślałem, że jest w fazie projektowej stąd moje rady dot. ogólnych zmian. 😉

Odnośnie podłączenia tsop'a nie wiem co to za tsop, zresztą sam nie pamiętam co, jak i w jakiej kolejności. Najlepiej wpisz jego symbol i poszukaj DS'a będziesz miał 100% pewność.

Odnośnie kodu sam odczyt wygląda ok, jednak brakuje mi tu pullupa na lini TSOP'a daj portb.0 = 1 i powinno być ok. Bo narazie 0 na wejściu jest dość randomowe.

Swoją drogą jeśli te silniczki to pololki to L293D raczej nie podoła.

Zmierz miernikiem (zwykłym woltomierzem) napięcie na wejściu procesora. Powinno być tam 5V a w czasie trzymania przycisku na pilocie - wyraźnie mniej. Jeżeli jest inaczej to brakuje czegoś (opornika), co podciąga to wejście do zasilania.

30 sekund.. przecież to wieczność dla takiego scalaczka 😋

Masz dobrze ustawione fusy?

Najlepiej zrób w pętli do...loop toggle'a na porcie z ledem i waitms na 500ms - też w tej pętli, jak będzie migał led z okresem 1s. to znaczy że jest ok.

Zrobiłem, ten okres jest znacznie dłuższy. Tzn zostaje zgaszona/zapalona przez ok. 4 sekundy

EDIT: Fusy fabryczne, nic nie zmieniałem.

Swoją drogą nie wiedziałem, że robot już istnieje, myślałem, że jest w fazie projektowej stąd moje rady dot. ogólnych zmian. 😉

Istnieje. Był temat w którym prosiłem o sprawdzenie zarówno schematu jak i projektu płytki, niestety do teraz nie dostałem żadnych podpowiedzi w tamtym temacie. (poza jednym postem Trekera)

Odnośnie podłączenia tsop'a nie wiem co to za tsop, zresztą sam nie pamiętam co, jak i w jakiej kolejności. Najlepiej wpisz jego symbol i poszukaj DS'a będziesz miał 100% pewność.

Wg DS'a wszystko ok. Podobno była kiedyś lewa partia tsopów ze zmienionymi nóżkami, dlatego o to pytam...

Odnośnie kodu sam odczyt wygląda ok, jednak brakuje mi tu pullupa na lini TSOP'a daj portb.0 = 1 i powinno być ok. Bo narazie 0 na wejściu jest dość randomowe.

Bez zmian...

Swoją drogą jeśli te silniczki to pololki to L293D raczej nie podoła.

Na razie daje radę 😉

[ Dodano: 19-04-2013, 18:45 ]

Zmierz miernikiem (zwykłym woltomierzem) napięcie na wejściu procesora. Powinno być tam 5V a w czasie trzymania przycisku na pilocie - wyraźnie mniej. Jeżeli jest inaczej to brakuje czegoś (opornika), co podciąga to wejście do zasilania.

Jest 4,88V, po wciśnięciu przycisku spada.

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ę »
×
×
  • Utwórz nowe...