Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
14 years ago

Multi-Touch LCD Help

Hey guys,

I am working on a student project that uses the DE2-70 and the Terasic multi-touch LCD module. I am coding in Verilog on Quartus and am designing a touchscreen music synthesizer. Terasic provides an IP touch controller that is used to read in touches, gestures, and locations. Unfortunately, I have not been able to get a touch response from the unit. Nor have I been able to figure out how to output to the LCD screen. I also haven't been able to get Terasic's 2 demos up and running. I would greatly appreciate any help in setting the MTL module up or reference to additional documentation.

Terasic's IP touch controller that has the following inputs and outputs:

iCLK: Input- Connect to 50MHz Clock

iRSTN: Input- Connect to system reset signal

iTRIG: Input- Connect to Interrupt Pin of Touch IC

oREADY: Output- Rising Trigger when following six output data is valid

oREG_X1: Output- 10-bits X coordinate of first touch point

oREG_Y: Output- 9-bits Y coordinate of first touch point

oREG_X2: Output- 10-bits X coordinate of second touch point

oREG_Y2: Output- 9-bits Y coordinate of second touch point

oREG_TOUCH_COUNT: Output- 2-bits touch count. Valid value is 0, 1, or 2.

oREG_GESTURE: Output- 8-bits gesture ID (See Table 3-4)

I2C_SCLK: Output- Connect to I2C Clock Pin of Touch IC

I2C_SDAT: Inout- Connect to I2C Data Pin of Touch IC

According to the manual, iTRIG, I2C_SCLK, and IC2_SDAT pins should be connected to the MTL_TOUCH_INT_n, MTL_TOUCH_I2C_SCL, and MTL_TOUCH_I2C_DAT signals in the 2x20 GPIO header respectively. When oREADY rises, it means there is touch activity, and associated information is given in the oREG_X1, oREG_Y1, oREG_X2, oREG_Y2, oREG_TOUCH_COUNT, and oREG_GESTURE pins.

They also give the mapping for the GPIO ports on the DE2 which I converted to GPIO ports of the DE2-70.

Note* I also have access to the Altera DE2 board, but would prefer to use the DE2-70

Thanks!

3 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    can you check the pin assignment is correct all? I think you can debug it using signal tap II to clear which pin's pin assignment is not correct, and you should note the I/O stand for GPIO pins should be 3.3v.

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Hey Peli,

    Yes, I tried using the provided .qsf demo file on the DE2 board, and yes I remembered to set the I/O standard to 3.3v so I don't think that is the issue.

    Thanks
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    *Update*

    I am now receiving touch inputs correctly. It turns out that iTRIG has negative polarity (it would have been nice if the manual had stated this). I would still appreciate any help with drawing shapes on the screen.

    Thanks!