This is just a sample how to read a 4-pin restive touchsceen
int ADCvalue, x, y;
//
// Read X axis. Set RC1 Low, RA1 high, RC0 input (floating) and read AN0
TRISCbits.TRISC0 = 1;
TRISCbits.TRISC1 = 0;
LATCbits.LATC1 = 0;
TRISAbits.TRISA1 = 0;
TRISAbits.TRISA0 = 1;
LATAbits.LATA1 = 1;
AD1PCFG = 0xfffe; // AD0
AD1CON1 = 0x0000;
AD1CSSL = 0x0000;
AD1CHS = 0x0000; // AN0
AD1CON2 = 0x0000;
AD1CON3 = 0x0002;
AD1CON1bits.ADON = 1;
ADCvalue = 0;
IFS0bits.AD1IF = 0;
AD1CON1bits.SAMP = 1;
__delay_ms(50);
AD1CON1bits.SAMP = 0;
while (!AD1CON1bits.DONE)
;
ADCvalue = ADC1BUF0;
x = ADCvalue/6; // Scale X-value
//
// Read Y axis. Set RC0 Low, RA0 high, RC1 input (floating) and read AN1
AD1PCFG = 0xfffd; // AD1
TRISCbits.TRISC0 = 0;
LATCbits.LATC0 = 0;
TRISCbits.TRISC1 = 1;
TRISAbits.TRISA1 = 1;
TRISAbits.TRISA0 = 0;
LATAbits.LATA0 = 1;
AD1CHS = 0x0001; // AN1
ADCvalue = 0;
IFS0bits.AD1IF = 0;
AD1CON1bits.SAMP = 1;
__delay_ms(50);
AD1CON1bits.SAMP = 0;
while (!AD1CON1bits.DONE)
;
ADCvalue = ADC1BUF0;
y = ADCvalue/10; // Scale Y-value
xprintf("\rTouch x:%4d y:%4d", x,y);
| file: /Techref/Resisitive_Touch.htm, 1KB, , updated: 2017/4/14 07:36, local time: 2025/10/31 17:25,
216.73.216.123,10-1-33-36:LOG IN
|
| ©2025 These pages are served without commercial sponsorship. (No popup ads, etc...).Bandwidth abuse increases hosting cost forcing sponsorship or shutdown. This server aggressively defends against automated copying for any reason including offline viewing, duplication, etc... Please respect this requirement and DO NOT RIP THIS SITE. Questions? <A HREF="http://techref.massmind.org/Techref/Resisitive_Touch.htm"> Resitive touch screen</A> |
| Did you find what you needed? |
Welcome to massmind.org! |
Welcome to techref.massmind.org! |
.