Problem jak zwykle pewnie banalny ale wymiękłem :P Na wyjściu z AVRa (MEGA162), gdzie powinienem mieć piękny sygnał zegarowy dla PGA2310 po software'owym SPI ale chwilowo jest nic niepodłączone mam cś takiego:
formatting link
z którego to wychodzi (dolna połówka portu C) zainicjowany poprawnie, zresztą wcześniej działało to i dawało elegancki przebieg a w kodzie nic się nie zmieniło. Procek zmieniony, dalej to samo. Nic też nie wskazuje na jakąś globalną usterkę AVRa tudzież oscyloskopu bo przebieg z wyjścia TXD jest elegancki, prostokątny. Zgłupiałem do reszty
Jesteś pewien, że to ten sam wsad procesora? Mnie to wygląda, że port jest ustawiony na wejście(DDRC dla tego bitu=0), a rejestrem danych kluczujesz między pull-up a Hi-z.
Dnia Tue, 20 Nov 2012 17:22:56 +0100, Michoo napisał(a):
Ok, znalazłem rozwiązanie, nie trafiłeś choć byłeś blisko. Najpierw miałem coś takiego: DDR(SPI_PORT)=1<<SPI_CS | 1<<SPI_SCK | 1<<SPI_MOSI; a kilka linijek dalej DDR(MUTE_PORT)=1<<MUTE_OUT; przy czym SPI_PORT i MUTE_PORT to to samo. Zebranie tego w jeden wiersz: DDR(SPI_PORT)=1<<SPI_CS | 1<<SPI_SCK | 1<<SPI_MOSI | 1<<MUTE_OUT; rozwiązało problem. Dzięki za podpowiedź, tak coś czułem, że piny odpowiedzialne za soft-spi mogą pracować jako wejścia ale nie mogłem znaleźć gdzie robię błąd.
Z ciekawości - wiesz (Ty albo ktoś), dlaczego akurat tak wygląda wykres? Na moje oko to właśnie dla Hi-Z powinny być szumy i jakieś piły z pinów obok, a dla pull-up powinna być stabilna jedynka. Na tym RIGOL-u masz to zainwertowane?
Swoją drogą (1<<bit), w avr/io.h masz makro _BV(), IMO programy wtedy są czytelniejsze.
"Jedynka" robiona przez pull-up właśnie jest stabilna, widać że narasta bardzo szybko. Za to Hi-Z na porcie to tak na prawdę pull-down przez sondę oscyloskopu (10MOhm?). Pojemności układu i samej sondy rozładowują się wtedy dłużej niż trwa naładowanie przez pull-up. To dlatego przebieg nie schodzi do zera - te zęby to nie "popsuta" jedynka, tam powinna być seria impulsów 1,0,1,0...
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.