完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
板子用的是msp430f149,驱动xpt2046时,触屏上点不同点,ad采样值不规律。水平和垂直方向滑动,增加到9000多时又会变为1000多。以下是驱动,请帮忙看看,看是不是驱动的问题,我都找了好几天了。
//向TPIC写入1byte数据 void TP_Write_Byte(unsigned char data) { unsigned char temp,i ; temp = data ; for(i=0;i<8;i++) { if(temp&0x80) SET_PMOSI ; else CLR_PMOSI ; temp <<=1 ; CLR_PSCK ; // __delay_cycles(3) ; SET_PSCK ; // __delay_cycles(3) ; } } //从TPIC读取ADC值 unsigned int TP_Read_AD(unsigned char CMD) { unsigned char i ; unsigned int rec = 0 ; CLR_PSCK ; CLR_TP_CS ; TP_Write_Byte(CMD) ; // 发送命令字 // SET_PSCK ; // __delay_cycles(3) ; // CLR_PSCK ; // __delay_cycles(3) ; // SET_PSCK ; // __delay_cycles(3) ; // CLR_PSCK ; // __delay_cycles(3) ; // SET_PSCK ; // __delay_cycles(3) ; // CLR_PSCK ; // __delay_cycles(20) ; __delay_cycles(1) ; // 等待响应 for(i=0;i<12;i++) { rec <<= 1 ; SET_PSCK ; // __delay_cycles(3) ; CLR_PSCK ; // __delay_cycles(3) ; if(PMISO_IS_SET) rec++ ; } // rec >>= 4 ; //高12位有效 SET_TP_CS ; return(rec) ; } |
|
相关推荐
2个回答
|
|
没搞过xpt2046,帮顶。
|
|
|
|
XPT2046最大输出值也就4095啊,楼主9000多是如何来的?
|
|
|
|
只有小组成员才能发言,加入小组>>
3021个成员聚集在这个小组
加入小组2903 浏览 1 评论
MSP430FR5994 使用库函数 定时器触发AD问题请教
3424 浏览 2 评论
请问怎么把下面51单片机的代码改成msp430 g2 pocket的代码,还有改下时间变成30秒
2330 浏览 1 评论
4787 浏览 1 评论
2562 浏览 1 评论
1299浏览 3评论
MSP430FR5994 使用库函数 定时器触发AD问题请教
3424浏览 2评论
2903浏览 1评论
1471浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-16 14:42 , Processed in 1.130170 second(s), Total 50, Slave 43 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号