USB <--> SPI

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From Polish to

Threaded View
Czy istnieje jakieś proste rozwiązanie, które umożliwiłoby emulację
transmisji szeregowej (terminal) przy pomocy złącza USB (od strony PC) i
SPI (od strony MCU)? Coś jak FT232, ale podpinane nie pod USART ale SPI.

Chodzi mi o możliwość terminalowej konfiguracji/debugowania w prostym z
prostym MCU, który ma tylko jeden, już wykorzystany USART.


BTW jak długie mogą być doprowadzenia magistrali SPI? Zdarzyło mi się
już umieszczać złącze ISP na innej płytce, połączonej z główną
ekranowanym kablem o długości poniżej 10 cm. Nie zauważyłem
jakiejkolwiek wrażliwości na zakłócenia (pstrykanie lutownicą, GSM). Nie
było samoczynnych resetów, błędów podczas wgrywania wsadu także nie
zauważyłem.
Czy podobne podejście przy podłączaniu układów pracujących na magistrali
SPI może być źródłem jakichś problemów?

Re: USB <--> SPI
Atlantis przemówił ludzkim głosem:

Quoted text here. Click to load it

SPI nigdy nie będzie emulowało dobrze UARTa, bo bo slave nie może  
inicjować transmisji. Potrzebny będzie polling, albo dodatkowa linia  
sygnalizacyjna.

Więc albo sam wydłubiesz sobie konwerter na SPI widziany po stronie PC  
jako urządzenie USB CDC ACM, albo możesz użyć gotowych konwerterów  
USB->SPI i wyrzeźbisz program na PC, którym będzie wiedział jak gadać z  
tym konwerterem i twoim układem.

http://www.tme.eu/pl/katalog/?idp=1&search=ftdi%20spi&cleanParameters=1

Quoted text here. Click to load it

No to wymień uC na taki z dwoma UARTami, albo dorób drugi software'owy.

Quoted text here. Click to load it

Wszystko zależy od stromości zboczy sygnału, przesłuchów między  
przewodami w kablu itp.

Quoted text here. Click to load it



Re: USB <--> SPI
W dniu 2013-09-14 12:20, Zbych pisze:

Quoted text here. Click to load it

Hmm... Któryś z AVR-ów w obudowie TQFP32 (coś podobnego do
Atmega8/88/168/328) ma może dwa USART-y? Nie mogę się doszukać niczego
na ten temat.


Re: USB <--> SPI
W dniu 15.09.2013 10:42, Atlantis pisze:
Quoted text here. Click to load it

Na stronie atmela masz wyszukiwarkę. Sprawdź sam.

Ja bym pomyślał jeszcze na AVRkiem z USB+UART (np.ATMEGA8u2,  
ATMEGA32u2). Wtedy nie będziesz musiał podłączać żadnych konwerterów.

https://seguro.pl/sklep/?zobacz51%92
http://www.tme.eu/pl/katalog/?idp=1&search=atmega8u2

Do obsługi stosu USB masz gotowca:
http://www.fourwalledcubicle.com/LUFA.php



Re: USB <--> SPI
W dniu sobota, 14 września 2013 10:51:46 UTC+2 użytkownik Atlantis napi
sał:
Quoted text here. Click to load it
ację
Quoted text here. Click to load it
) i
Quoted text here. Click to load it
.
ym z
 się
Quoted text here. Click to load it
łówną
Quoted text here. Click to load it
GSM). Nie
Quoted text here. Click to load it
że nie
Quoted text here. Click to load it
 magistrali
Quoted text here. Click to load it

Ja wykorzystuję FT2232H, ustawiam w tryb pracy Host Bus Emulation Mode, d
alej mam na FPGA trochę naprawdę prymitywnej logiki i zapisując 0/1 n
a odpowiednie bity jakiegoś tam portu zmieniam stany SPI. Raptem 3 bity.  
Działa bez pudła. Co do długości połączeń nie należy spodzi
ewać się większych problemów o ile nie masz na myśli kilometrów
. Przez SPI obsługuję dalej AD9512.

Re: USB <--> SPI
wrote:
Quoted text here. Click to load it
PC) i

Mcp2210, widziany jako hid od strony usb (pc), od strony mcu jedt  
spi.  Masz 2 bufory 64 bajtowe  in/out. Bardzo prosta komunikacja, po  
prostu dane z pc wymieniasz przez te bufory.

--  
Marek

Site Timeline