STC驱动RA8806触摸屏问题

2019-07-16 05:06发布

我开了两个中断 一个触摸中断用的外部中断1一个定时器中断 用来计算频率的 我们需要把八组频率不断的扫描出来显示  现在的问题是 如果我们在频率扫描到第四组的时候 触摸一下 进入触摸外部中断  触摸反映正常 但是后面的四组频率就显示不出来了
第四组只是打个比方 就是进入触摸中断以后 频率的显示就出问题了
void main()
{
    dkchushihua();
    LCD_Initial();
    LCD_ClearScreen();
LCD_CmdDatWrite(0x0f,0x10);
LCD_CmdDatWrite(0xc0,0x80);
LCD_CmdDatWrite(0xc4,0x00);//开启触摸功能 自动模式
ShowPicture();
dispword();
dispjianpan();
TMOD=0X15;//设置T1为16位定时器,设置T0为16位计数器
TH0=0X00;
TL0=0X00;
TH1=(65535-36697)/256;
TL1=(65535-36697)%256;
EA =1;
ET1=1;//开T1中断
EX1=1;//开外部中断1     
IT1=1;//低电平触发
    IPH=0x08;
IP =0x08;//设置定时器中断1为最高优先级中断,设置外部中断1为最低优先级中断
TR0=1;
TR1=1;

while(1)
{
  disphzzhi();//不断更新新的频率值
}
}
  
void T1_time() interrupt 3
{
    unsigned int lshzzhi;
num++;
if(num>=25)
{
TR0=0;
TR1=0;
    lshzzhi=TH0;lshzzhi<<=8;lshzzhi|=TL0;
TH0=0x00;
TL0=0x00;
lshzzhi=lshzzhi<<1;
hzzhi[chose]=lshzzhi;
    P2&=0xf8;
    P2|=CHA[chose];
    chose++;
    if(chose>7)chose=0;
num=0;
}
    TH1=(65535-36697)/256;
TL1=(65535-36697)%256;
TR0=1;
TR1=1;//同步
}
void INT_chukong() interrupt 2
{
   //LCD_CmdDatWrite(0x0f,0x10);
   LCD_Touch();
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
任逍遙
1楼-- · 2019-07-16 08:32
谢谢各位了啊
刘阿海珐
2楼-- · 2019-07-16 10:57
把你的程序传一份给我吧谢谢1162323666@qq.com
lp1128
3楼-- · 2019-07-16 13:47
 精彩回答 2  元偷偷看……
lp1128
4楼-- · 2019-07-16 18:25
学习了
lp1128
5楼-- · 2019-07-16 22:35
看看
云后的阳光
6楼-- · 2019-07-17 02:11
有问题想请教下LZ,能不能联系下?QQ 120658050

一周热门 更多>