欢迎光临深圳市昶丰科技有限公司官方网站!现在的时间是:
 
 
服务与支持
  技术文章
  成功案例
  解决方案
  下载专区
 
  技术文章
8051单片机驱动ADS7846

                                              8051单片机驱动ADS7846/ADS7843芯片 
[简 介] ADS7846/7843芯片 适合用在4线制触摸屏,它通过标准SPI协议和CPU通信,操作简单,精度高,当触摸屏被按下时(即有触摸事件发生)则ADS7846向CPU发中断请求,CPU接到请求后,应延时一下再响应其请求,目的是为了消除抖动使得采样更准确。如果一次采样不准确,可以尝试多次采样取最后一次结果为准,目的也是为了消除抖动。 
[原作者] 鞠春阳 
[版 本] v1.8 

#include "reg51.h" 
#include "intrins.h" 

sbit DCLK=P1^6;   //根据用户自己的定义 
sbit CS=P2^2; 
sbit DIN=P2^3; 
sbit DOUT=P2^4; 
sbit BUSY=P2^5; 
delay(unsigned char i--) 
{ 
while(i--); 
} 

void start() //SPI开始 
{ 
DCLK=0; 
CS=1; 
DIN=1; 
DCLK=1; 
CS=0; 
} 
WriteCharTo7843(unsigned char num) //SPI写数据 
{ 
unsigned char count=0; 
DCLK=0; 
for(count=0;count<8;count++) 
{ 
num<<=1; 
DIN=CY; 
DCLK=0; _nop_();_nop_();_nop_(); //上升沿有效 
DCLK=1; _nop_();_nop_();_nop_(); 
} 
} 

ReadFromCharFrom7843() //SPI 读数据 
{ 
unsigned char count=0; 
unsigned int Num=0; 
for(count=0;count<12;count++) 
{ 
Num<<=1; 
DCLK=1; _nop_();_nop_();_nop_(); //下降沿有效 
DCLK=0; _nop_();_nop_();_nop_(); 
if(DOUT) Num++; 
} 
return(Num); 
} 
void ZhongDuan() interrupt 0 //外部中断0 用来接受键盘发来的数据 
{ 
unsigned int X=0,Y=0; 
delay(10000); //中断后延时以消除抖动,使得采样数据更准确 
start(); //启动SPI 
// while(BUSY); //如果BUSY信号不好使可以删除不用 
delay(2); 
WriteCharTo7843(0x90); //送控制字 10010000 即用差分方式读X坐标 详细请见有关资料 
// while(BUSY); //如果BUSY信号不好使可以删除不用 
delay(2); 
DCLK=1; _nop_();_nop_();_nop_();_nop_(); 
DCLK=0; _nop_();_nop_();_nop_();_nop_(); 
X=ReadFromCharFrom7843();   //读X轴坐标 
WriteCharTo7843(0xD0); //送控制字 11010000 即用差分方式读Y坐标 详细请见有关资料 
DCLK=1; _nop_();_nop_();_nop_();_nop_(); 
DCLK=0; _nop_();_nop_();_nop_();_nop_(); 
Y=ReadFromCharFrom7843();   //读Y轴坐标 
CS=1; 
} 

main() 
{ 
TMOD=0x11; // 记数器0 计数器1 都以 16 位 记数 
TCON=0x00; 
IE=0x83; //1000 0001 EA=1中断允许, 
IP=0x01; 
while(1);//等待触摸中断 
}

上一条新闻:光幕的选型 2014-09-03
下一条新闻:什么是面向对象程序设计 2014-09-29
友情链接:掉货检测
Copyright © 2013-2015 深圳市昶丰科技有限公司 All Rights Reserved. 粤ICP备2023005930号    深圳网络公司-龙腾盛世提供技术支持
地址:深圳市宝安区福海街道展城社区福园一路35号天瑞工业园A5栋912    电话:0755-29308961    传真:0755-29308961    邮箱:chn_cf@163.com    
热门关键字:掉货检测