STM32F407电容触摸屏的软复位

2019-07-20 12:25发布

1.GT9147 编程指南文件中关于寄存器0X8040中的定义如下
123.jpg

2.软复位程序
if(strcmp((char*)temp,"9147")==0)//ID==9147
{
  temp[0]=0X02;   
  GT9147_WR_Reg(GT_CTRL_REG,temp,1);//软复位GT9147   
向0X8040(控制寄存器)写0x02  (#define GT_CTRL_REG  0X8040    //GT9147控制寄存器)
  
  GT9147_RD_Reg(GT_CFGS_REG,temp,1);//读取GT_CFGS_REG寄存器
  
  if(temp[0]<0X60)//默认版本比较低,需要更新flash配置
  {
   printf("Default Ver:%d ",temp[0]);
   GT9147_Send_Cfg(1);//更新并保存配置
  }
  delay_ms(10);
  temp[0]=0X00;  
  GT9147_WR_Reg(GT_CTRL_REG,temp,1);//结束复位     向0X8040(控制寄存器)写0x000,
  return 0;
}

3.为什么是写0X02就是软复位?写0X00就是结束软复位
GT9147编程指南中定义
     向0X8040写1或2:差值原始值
     向0X8040写0:读取坐标状态 (可以理解为可以开始读取触摸屏的数据了)


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。