LED musik Visualizer med Zybo ombord (3 / 18 steg)
Steg 3: Lägga till GPIO block
Vi ska nu lägga till några "GPIO" block i systemet. GPIO är trevligt eftersom det tillåter oss att enkelt skicka små mängder information från FPGA kringutrustning till processorn eller vice versa. För större mängder data är AXI ett bättre alternativ. Varsågod och högerklicka på lite tomt utrymme på Block Design arbetsytan och klicka på "Lägg till IP". Skriv in GPIO och dubbelklicka på "AXI GPIO". Vi kommer att behöva fem av dessa block totalt, så gå vidare och lägga till fyra fler. Resultatet ska se ut skärmbilden nedan.
Fyra av GPIO blocken måste vara vad som kallas "dual channel". Detta betyder bara att varje GPIO block kan ta emot/skicka två olika bitar av data. Dubbelklicka på GPIO 0 block. Ett fönster bör dyka upp med en massa alternativ. Kryssrutan "Aktivera Dual Channel". Kontrollera sedan "Alla ingångar" för båda kanalerna. Att bredden på de första GPIO 1 och bredden på den andra GPIO 24. Dessutom kryssrutan "Aktivera avbryta" längst ned på skärmen. Klicka på OK.
Nu sväva över lilla blocket bifogas "GPIO" etikett GPIO 0 block. En liten penna ska visas som markören. Högerklicka och välj "Gör externa". Gör detta för skivbolaget "GPIO2". Dubbel klick den GPIO port som skapades och döp om den till "LDATA_RDY". Då dubbel klick den GPIO2 port som skapades och kalla den "LDATA". Denna GPIO används för att läsa data från den ljud-codecen samt att se när data är klar.
Klicka nu på den lilla svarta linjen kommer från "ip2intc_irpt" och dra den till "IRQ_F2P [0:0]" på ZYNQ blocket.
Upprepa föregående proceduren med GPIO 1 blocket utom inte klicka "Dual Channel", klicka på "Alla utgångar" istället för "Alla ingångar", göra kanal 4 och klicka inte på "Aktivera avbryta". Skapa en extern port igen och namnge det "Växlar". Denna GPIO används för att bestämma vad som visas på LED-matris.
För GPIO 2, aktiverar med dubbla kanaler och gör båda kanalerna "Alla utgångar". Den första kanalen ska vara 7 bitar bred och den andra kanalen bör 9 bitar bred. Aktivera inte avbryter. Gör båda portarna externa. Namnet först "Addr" och den andra en "datan". Denna GPIO kommer användas för att konfigurera audio codec i zybo styrelse.
För GPIO 3, aktivera dual channel, göra den första kanalen "Alla ingångar" och göra den andra kanalen "Alla utgångar". Båda kanalerna bör ha en bit bredd av 1. Aktivera inte avbryter. Skapa extern portar för båda kanalerna. Namn den första "redo" och den andra en "reset". Denna GPIO arbetar med konfigurera audio codec.
Slutligen, för GPIO 4, aktivera dual channel och göra den första och den andra kanalen "Alla utgångar". Gör kanalbredd 1 för båda. Kolla inte aktivera avbrott. Göra hamnarna externa och namnge den första "timer_GPIO" och den andra "gpio_rtl". Denna GPIO används endast för att underlätta testning.