You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
(if its .ps2_select(1'b0), the screen does not respond (it doesn't even detect anything), if its .ps2_select(1'b1), the screen detect something but after that goes into no signal state
I saw there is some wire [15:0] pc_monitor; I can use:
output [15:0] pc_monitor // spy for program counter / debugging
now, how is this meant to be used? (I did wire it direcly to my 16 leds and when I press CPU reset, leds do come on, but don't move at all, if I press the button again, different leds come one (again when they come on they stay on forever)
So something is happening it appears, but now I have to figure out what
`timescale 1ns / 1ps
moduleapple1_nexsys_a7_top #(
parameter BASIC_FILENAME ="../../../roms/basic.hex",
parameter FONT_ROM_FILENAME ="../../../roms/vga_font_bitreversed.hex",
parameter RAM_FILENAME ="../../../roms/ram.hex",
parameter VRAM_FILENAME ="../../../roms/vga_vram.bin",
parameter WOZMON_ROM_FILENAME ="../../../roms/wozmon.hex"
) (
input CLK100MHZ, // 100 MHz board clock// I/O interface to computerinput UART_RXD, // asynchronous serial data input from computeroutput UART_TXD, // asynchronous serial data output to computeroutput UART_CTS, // clear to send flag to computer - not used// I/O interface to keyboardinput PS2_KBCLK, // PS/2 keyboard serial clock inputinput PS2_KBDAT, // PS/2 keyboard serial data inputinput RESETN_BTN, // Button for RESETinput SWITCH, // Switch between PS/2 input and UART// Outputs to VGA displayoutput VGA_HS, // hozizontal VGA sync pulseoutput VGA_VS, // vertical VGA sync pulseoutput [3:0] VGA_R, // red VGA signaloutput [3:0] VGA_G, // green VGA signaloutput [3:0] VGA_B, // blue VGA signal// Debugging portsoutput [15:0] LED
//input [1:0] button // 2 buttons on board
);
////////////////////////////////////////////////////////////////////////// // DEBUGGING//assign LED[0] = 1;//assign LED[1] = reset_n;//assign LED[2] = clr_screen_n;//assign LED[3] = 0;// Debugging portswire [15:0] pc_monitor; // spy for program counter / debuggingwire clk25;
wire rst_n;
assign rst_n =~RESETN_BTN;
assign LED = pc_monitor;
// ===============================================================// System Clock generation (25MHz)// ===============================================================reg [1:0] clkpre =2'b00; // prescaler, from 100MHz to 25MHzalways @(posedge CLK100MHZ)
begin
clkpre <= clkpre +1;
endwire clk25 = clkpre[1];
wire vga_bit;
// set the monochrome base colour here..assign VGA_R[3:0] = vga_bit ? 4'b1000 : 4'b0000;
assign VGA_G[3:0] = vga_bit ? 4'b1111 : 4'b0000;
assign VGA_B[3:0] = vga_bit ? 4'b1000 : 4'b0000;
// apple one main systemapple1 #(
.BASIC_FILENAME (BASIC_FILENAME),
.FONT_ROM_FILENAME (FONT_ROM_FILENAME),
.RAM_FILENAME (RAM_FILENAME),
.VRAM_FILENAME (VRAM_FILENAME),
.WOZMON_ROM_FILENAME (WOZMON_ROM_FILENAME)
) apple1_top(
.clk25(clk25),
.rst_n(rst_n), // we don't have any reset pulse..
.uart_rx(UART_RXD),
.uart_tx(UART_TXD),
.uart_cts(UART_CTS),
.ps2_clk(PS2_KBCLK),
.ps2_din(PS2_KBDAT),
.ps2_select(1'b1), // PS/2 disabled, UART TX enabled//.ps2_select(SWITCH), // PS/2 enabled, UART TX disabled//.ps2_select(1'b1), // PS/2 enabled, UART TX disabled//.ps2_select(1'b0), // PS/2 disabled, UART TX enabled
.vga_h_sync(VGA_HS),
.vga_v_sync(VGA_VS),
.vga_red(vga_bit),
.vga_grn(vga_bit),
.vga_blu(vga_bit),
.vga_cls(~clr_screen_n),
.vga_cls(~rst_n),
.pc_monitor(pc_monitor)
);
endmodule
As I said, it does compile, it does run (but for now, I have no way of figuring out whats going on 😄 )
Sorry for a lot of questions, I am just starting to play with FPGA (I already got VGA example working (I managed to fill the screen with blue), but am otherwise a noob 😄
The text was updated successfully, but these errors were encountered:
Hi there, I managed to program my FPGA with this (if you remember this issue: #40
But now I am facing a problem, that I have no video output (and no serial output), even if I assigned all the pins to the designated ones (when I press CPU reset, I see the screen detects something, but I get no signal at the end), the board also does respond depending if I select UART or VGA with: https://github.com/alangarf/apple-one/blob/1d21ed1f6369cb94089a9bbe188d8e7db9e3eb08/rtl/boards/blackice2/apple1_hx8k.v#LL116C9-L116C67
(if its .ps2_select(1'b0), the screen does not respond (it doesn't even detect anything), if its .ps2_select(1'b1), the screen detect something but after that goes into no signal state
I saw there is some wire [15:0] pc_monitor; I can use:
apple-one/rtl/apple1.v
Line 54 in 1d21ed1
now, how is this meant to be used? (I did wire it direcly to my 16 leds and when I press CPU reset, leds do come on, but don't move at all, if I press the button again, different leds come one (again when they come on they stay on forever)
So something is happening it appears, but now I have to figure out what
I did start with this example: https://github.com/alangarf/apple-one/blob/master/rtl/boards/blackice2/apple1_hx8k.v#LL116C9-L116C67
because it seamed to be the closest to my boards (I also have 100Mhz clock and 4bit VGA)
If it helps, here is my constraint file
and here is my apple1_nexsys_a7_top.v
As I said, it does compile, it does run (but for now, I have no way of figuring out whats going on 😄 )
Sorry for a lot of questions, I am just starting to play with FPGA (I already got VGA example working (I managed to fill the screen with blue), but am otherwise a noob 😄
The text was updated successfully, but these errors were encountered: