Good morning, I’m struggling to make it through the IO Element tutorial. I have an AU V2 and an non-SparkFun IO board, so I’m using the fake pulldowns method.
The first problem I have is that the template for fake pulldowns is missing and I can’t figure out how to make it available in my Alchitry Labs. Eventually I found the fake pulldown and fake pulldown 2d in the extra modules to add and everything is compiling, but no matter what I do I can’t get the light to turn on. Is anyone able to see what’s wrong with my program below or who’s seen this issue?
Thank you very much for your time.
module alchitry_top (
input clk, // 100MHz clock
input rst_n, // reset button (active low)
output led[8], // 8 user controllable LEDs
input usb_rx, // USB->Serial input
output usb_tx, // USB->Serial output
output io_led[3][8], // LEDs on IO Shield
output io_segment[8], // 7-segment LEDs on IO Shield
output io_select[4], // Digit select on IO Shield
inout io_button[5], // 5 buttons on IO Shield
inout io_dip[3][8] // DIP switches on IO Shield
) {
sig rst // reset signal
.clk(clk) {
// The reset conditioner is used to synchronize the reset signal to the FPGA
// clock. This ensures the entire FPGA comes out of reset at the same time.
reset_conditioner reset_cond
fake_pull_down button_pd(#SIZE(5), .in(io_button))
fake_pull_down_2d dip_pd(#DIM_1(8), #DIM_2(3), .in(io_dip))
}
always {
reset_cond.in = ~rst_n // input raw inverted reset signal
rst = reset_cond.out // conditioned reset
led = 8h00 // turn LEDs off
usb_tx = usb_rx // loop serial port
io_led = 3x{{8h00}}
io_segment = 8hFF
io_select = 4hF
io_led[0][0] = dip_pd.out[0][0] & dip_pd.out[0][1]
}
}