void TP_Save_Adjdata(void)
{
AT24CXX_Write(SAVE_ADDR_BASE,(u8*)&tp_dev.xfac,14); //强制保存&tp_dev.xfac地址开始的14个字节数据,即保存到tp_dev.touchtype
AT24CXX_WriteOneByte(SAVE_ADDR_BASE+14,0X0A); //在最后,写0X0A标记校准过了
}
//得到保存在EEPROM里面的校准值
//返回值:1,成功获取数据
// 0,获取失败,要重新校准
u8 TP_Get_Adjdata(void)
{
u8 temp;
temp=AT24CXX_ReadOneByte(SAVE_ADDR_BASE+14);//读取标记字,看是否校准过!
if(temp==0X0A)//触摸屏已经校准过了
{
AT24CXX_Read(SAVE_ADDR_BASE,(u8*)&tp_dev.xfac,14);//读取之前保存的校准数据
if(tp_dev.touchtype)//X,Y方向与屏幕相反
{
CMD_RDX=0X90;
CMD_RDY=0XD0;
}else //X,Y方向与屏幕相同
{
CMD_RDX=0XD0;
CMD_RDY=0X90;
}
return 1;
}
return 0;
}
颜 {MOD}标记的这些地方不太懂,求高手详细说明一下
1、保存和读取的实现是怎样的,为什么是14个字节?
2、if(tp_dev.touchtype)//X,Y方向与屏幕相反,是什么意思?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
2,因为有横屏竖屏。
一周热门 更多>