Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

LCD and keyboard driven by FPGA

Status
Not open for further replies.

startoad

Newbie level 3
Newbie level 3
Joined
Sep 22, 2005
Messages
3
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,307
Hi,

i would like to know how can i manage a keyboard like this one:

**broken link removed**

i want to get the pressed button and to display it (the value) on an lcd screen.

thanks for your support.

ps: be lenient please i'm just starting with fpga :)
 

buy a University Program (UP) board from altera n it can do all... keyboard interface, VGA interface and 7 segments display and many more.... now the UP version is UP3..

the UP3 contain a cyclone (FPGA).. large resources in this cyclone,, check it out at altera.com

university can get discount..

regards,
sp
 

you will have to design a module (vhdl/schematic) that will decode the input and decide which key was pressed.and another module that will manage the interface with the LCD.
 

I have done the manage the lcd display (16 characters)

I'm going to make the keyboard ip but i dont know how to start i remenber that i need to make pullup on every matrix connection. Do you have more informations to do this please?
 

http://www.rentron.com/PicBasic/serkey16.gif

what you should add here is a pullup resistor at each row.. the bottom port is an output port, and the top one is input... you will "scan" the coloumns by sending 0111 , 1011, 1101, 1110 on the out port and reading the values that you recieve on the input port...for example, if the output is B4:0 B5: 1 B6: 1 B7: 1, (0111)and no key is pressed, the input will read 1111 because of the pull up resistors, but if for instance SW9 was pressed and the output was 0111 then the input port will read B0:1 B1:1 B2: 0 B3:1 (1101) because the third row is connected to the zero from the output port and no longer pulled up... so your decoder should understand that 0111 on output and 1101 on input means that SW9 was pressed..
 

    startoad

    Points: 2
    Helpful Answer Positive Rating
Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top