Spisu treści:

Mojo FPGA Development Board Shield: 3 kroki
Mojo FPGA Development Board Shield: 3 kroki

Wideo: Mojo FPGA Development Board Shield: 3 kroki

Wideo: Mojo FPGA Development Board Shield: 3 kroki
Wideo: Golang vs Python #shorts tiktok hackmymozg 2024, Lipiec
Anonim
Osłona płytki rozwojowej Mojo FPGA
Osłona płytki rozwojowej Mojo FPGA

Podłącz swoją płytkę rozwojową Mojo do zewnętrznych wejść za pomocą tej osłony.

Czym jest tablica rozwojowa Mojo?

Płytka rozwojowa Mojo to płytka rozwojowa oparta na układzie FPGA Xilinx spartan 3. Płytę wykonała firma Alchitry. Układy FPGA są bardzo przydatne, gdy wiele procesów musi być wykonywanych jednocześnie.

Czego będziesz potrzebować?

Kieszonkowe dzieci

Płytka rozwojowa Mojo

Plik Gerbera

Rezystory 8 x 15 kΩ (opcjonalnie*)

Rezystory 4 x 470 omów

Rezystory 4 x 560 omów

4 x 7-segmentowe wyświetlacze CC

4x3mm diody LED

4 x przełączniki dotykowe SPDT

1 x 4-pozycyjny przełącznik DIP do montażu powierzchniowego

2 x 25 na 2 lub 4 x 25 nagłówków

1x2 na 5 pinów w pudełku!

Lutownica

Lutować

Strumień

*(jeśli te rezystory zostaną pominięte, wewnętrzne pullup/pulldown musi być włączone dla odpowiednich pinów)

Krok 1: Prześlij Gerbera do wybranego producenta PCB

Prześlij Gerbera do wybranego przez siebie producenta PCB
Prześlij Gerbera do wybranego przez siebie producenta PCB

Do moich płyt zamówiłem z JLC PCB.

Jedyną zmianą, jaką wprowadziłem, był kolor, który chciałem dopasować do czerni Mojo.

Krok 2: Montaż płyty

Zgromadzenie Zarządu
Zgromadzenie Zarządu

Podczas lutowania zawsze przydaje się lutowanie najpierw najniższych części, więc dobrym pomysłem jest rozpoczęcie od rezystorów.

R5, R6, R7, R8, R9, R10, R11 i R12 to rezystory 15 kΩ używane do ściągania przełączników (jeśli używasz wewnętrznego pullup/pulldown, zignoruj to).

R1, R2, R3, R4 to rezystory 560 omów, które odpowiadają za ograniczenie prądu przez 7-segmentowy wyświetlacz.

R13, R14, R15, R16 to rezystory 470 omów, które są odpowiedzialne za ograniczenie prądu przez 4 diody LED.

Następnie w takiej kolejności przylutuj przełącznik dip, przełączniki dotykowe, diody LED, wyświetlacze siedmiosegmentowe i złącze nagłówka skrzynki.

Teraz umieść 25 na 2 (lub 2 25 na 1) w mojo, aby wyrównać szpilki. Dopasuj osłonę do kołków i przylutuj ją na miejscu.

Krok 3: Konfiguracja oprogramowania

Oprogramowanie odwołujące się do strony internetowej Alchitry poinformuje Cię, czego potrzebujesz, aby rozpocząć i zainstalować Xilinx ISE. Jednak zmiana pliku.ucf, aby wiedział, które piny są podłączone do tego, co jest ważne, aby Twój program działał.

Oto plik.ucf, którego używam z tarczą:

KONFIG VCCAUX=3,3;

NET "clk" TNM_NET = clk; TIMESPEC TS_clk = OKRES "clk" 50 MHz WYSOKI 50%; NET „clk” LOC = P56 | IOSTANDARD = LVTTL; LOC NET „rst_n” = P38 | IOSTANDARD = LVTTL; LOC „cclk” NETTO = P70 | IOSTANDARD = LVTTL; NET „spi_mosi” LOC = P44 | IOSTANDARD = LVTTL; NET „spi_miso” LOC = P45 | IOSTANDARD = LVTTL; NET „spi_ss” LOC = P48 | IOSTANDARD = LVTTL; NET „spi_sck” LOC = P43 | IOSTANDARD = LVTTL; LOC „kanał_spi” NET = P46 | IOSTANDARD = LVTTL; LOC „kanał_spi” NET = P61 | IOSTANDARD = LVTTL; LOC „kanał_spi” NET = P62 | IOSTANDARD = LVTTL; LOC „kanał_spi” NET = P65 | IOSTANDARD = LVTTL; NET „avr_tx” LOC = P55 | IOSTANDARD = LVTTL; NET "avr_rx" LOC = P59 | IOSTANDARD = LVTTL; NET „avr_rx_busy” LOC = P39 | IOSTANDARD = LVTTL; NET „Q[0]” LOC = P26 | IOSTANDARD = LVTTL; NET „Q[1]” LOC = P23 | IOSTANDARD = LVTTL; NET „Q[2]” LOC = P21 | IOSTANDARD = LVTTL; NET „Q[3]” LOC = P16 | IOSTANDARD = LVTTL; NET „S[0]” LOC = P7 | IOSTANDARD = LVTTL; NET „S[1]” LOC = P9 | IOSTANDARD = LVTTL; NET "S[2]" LOC = P11 | IOSTANDARD = LVTTL; NET „S[3]” LOC = P14 | IOSTANDARD = LVTTL; NETTO „pb[1]” LOC = P30 | IOSTANDARD = LVTTL; NET „pb[2]” LOC = P27 | IOSTANDARD = LVTTL; NET „pb[3]” LOC = P24 | IOSTANDARD = LVTTL; NET „pb[4]” LOC = P22 | IOSTANDARD = LVTTL; NET „sevsega[0]” LOC = P57 | IOSTANDARD = LVTTL; NET „sevsegb[0]” LOC = P58 | IOSTANDARD = LVTTL; NET „sevsegc[0]” LOC = P66 | IOSTANDARD = LVTTL; NET „sevsegd[0]” LOC = P67 | IOSTANDARD = LVTTL; NET „sevsege[0]” LOC = P74 | IOSTANDARD = LVTTL; NET „sevsegf[0]” LOC = P75 | IOSTANDARD = LVTTL; NET „sevsegg[0]” LOC = P78 | IOSTANDARD = LVTTL; NET „sevsegdp[0]” LOC = P80 | IOSTANDARD = LVTTL; NET „sevsega[1]” LOC = P82 | IOSTANDARD = LVTTL; NET „sevsegb[1]” LOC = P83 | IOSTANDARD = LVTTL; NET „sevsegc[1]” LOC = P84 | IOSTANDARD = LVTTL; NET „sevsegd[1]” LOC = P85 | IOSTANDARD = LVTTL; NET „sevsege[1]” LOC = P87 | IOSTANDARD = LVTTL; NET „sevsegf[1]” LOC = P88 | IOSTANDARD = LVTTL; NET „sevsegg[1]” LOC = P92 | IOSTANDARD = LVTTL; NET „sevsegdp[1]” LOC = P94 | IOSTANDARD = LVTTL; NET „sevsega[2]” LOC = P97 | IOSTANDARD = LVTTL; NET „sevsegb[2]” LOC = P98 | IOSTANDARD = LVTTL; NET „sevsegc[2]” LOC = P99 | IOSTANDARD = LVTTL; NET „sevsegd[2]” LOC = P100 | IOSTANDARD = LVTTL; NET „sevsege[2]” LOC = P101 | IOSTANDARD = LVTTL; NET „sevsegf[2]” LOC = P102 | IOSTANDARD = LVTTL; NET „sevsegg[2]” LOC = P104 | IOSTANDARD = LVTTL; NET „sevsegdp[2]” LOC = P111 | IOSTANDARD = LVTTL; NET „sevsega[3]” LOC = P114 | IOSTANDARD = LVTTL; NET „sevsegb[3]” LOC = P115 | IOSTANDARD = LVTTL; NET „sevsegc[3]” LOC = P116 | IOSTANDARD = LVTTL; NET „sevsegd[3]” LOC = P117 | IOSTANDARD = LVTTL; NET „sevsege[3]” LOC = P118 | IOSTANDARD = LVTTL; NET „sevsegf[3]” LOC = P119 | IOSTANDARD = LVTTL; NET „sevsegg[3]” LOC = P1120 | IOSTANDARD = LVTTL; NET „sevsegdp[3]” LOC = P121 | IOSTANDARD = LVTTL;

Pamiętaj, jeśli nie zainstalowałeś rezystorów pulldown do edycji pinów w.ucf za pomocą

| ROZBIERAĆ, OPUSZCZAĆ; o

| PODCIĄGNIĘCIE;

Jeśli chcesz użyć bloku do czegokolwiek, połączenia są następujące. Lewy to numer pinu bloku, a prawy to numer pinu mojo, który należy przypisać w pliku.ucf:

pin 1 = 29

pin 2 = 51

pin 3 = 32

pin 4 = 41

pin 5 = 34

pin 6 = 35

pin 7 = 40

pin 8 = 33

pin 9 = GND

pin 10 = +V

Zalecana: