logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[Atmega8] [Atmega8][c/asm] - MOSI w SPI zawiesza się po kilkudziesięciu przełączeniach

Marcin_126 09 Gru 2012 16:32 996 2
  • #1 11630033
    Marcin_126
    Poziom 16  
    Witam,
    Mam do zrobienia projekt OSD dla quadrocoptera.
    Wykorzystalem pomysl.
    http://www.diydrones.com/profiles/blogs/ardupilot-as-osd-without

    Uklad pomimo ze tak prosty dzialalby znakominie gdyby nie jeden fakt.
    Tymczasowego psucia sie wyjscia MOSI.

    Zasada dzialania jak i opisu problemu jest smiesznie prosta.
    Ustawiamy SPI w tryb master.

    Wlaczamy generator przez odpowiednia wartosc w rejestrze DDRB:
    ldi r16, 0x08
    out ddrb, r16

    i wystawiamy bajt do rejestru:
    out spdr, r0

    po wyswietleniu odpowiedniej liczby pikselkow spowrotem zwalniamy szyne danych.
    ldi r16, 0x00
    out ddrb, r16


    Powyzszy przyklad akurat w ASM, ale w C zachowuje sie tak samo (nie dziala).
    Problem w tym ze po kilkudziesieciu przelaczeniach pinu MOSI w tryb wysokiej impedancji pozostaje on juz w takim stanie i nie daje sie przelaczyc jako wyjscie.

    Spotkal sie ktos z czyms takim?
    Firma Atmel mnie niestety zbyla! :/

    Niestety uzycie Atmega88 mi nic nie daje (ma on USART w trybie SPI-o podobnym) bo potrzebuje USART-a dla GPS-a.
    No chyba ze nie ma on tego problemu z SPI.

    Pozdr

    Dodano po 1 [minuty]:

    Zeby ktos sobie nie pomyslal ze MOSI sie pali, po resecie wszystko wraca do normy i znowu.
  • #2 11631292
    Brutus_gsm
    Poziom 25  
    Jakiś schemat? Czy uK jest poprawnie zasilany?
  • #3 11631811
    Marcin_126
    Poziom 16  
    Do przedstawionego ukladu schematu jako takiego nie ma:
    Use only 3 pin:

    D1 (USART TX) used to pump pixel in the video connected with a 330Ohm resistor to D6

    D6 (AIN0) Video in/out, connect here you camera or radio TX.

    D7 (AIN1) 0.3V Voltage reference (you can use a partitor resistor)


    Fakt ze myslac, ze to wina niestabilnosci komparatora zmienilem hardware i uzylem LM1881. Rezultatt taki sam.

    Dodano po 3 [minuty]:

    Ostateczna wersja jest dokladnie ta:
    http://rc-cam.pl/viewtopic.php?t=199
    Niestety schematu nie moge udostepnic, bo jest autorstwa Zbig.
    Ogolnie jak LM1881 dziala kazdy wie.

    Zasilanie normalnie 5V przez stabilizator liniowy + kilka kondensatorow 100nF
REKLAMA