OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 10825|回复: 3

实验18 触摸屏实验 请教原子

[复制链接]

1

主题

3

帖子

0

精华

新手入门

积分
27
金钱
27
注册时间
2011-9-26
在线时间
0 小时
发表于 2011-9-30 12:55:08 | 显示全部楼层 |阅读模式
//SPI读数据
//从7846/7843/XPT2046/UH7843/UH7846读取adc值   
u16 ADS_Read_AD(u8 CMD)  
{  
 u8 count=0;   
 u16 Num=0;
 TCLK=0;//先拉低时钟  
 TCS=0; //选中ADS7843 
 ADS_Write_Byte(CMD);//发送命令字
 delay_us(6);//ADS7846的转换时间最长为6us
 TCLK=1;//给1个时钟,清除BUSY       
 TCLK=0;  
 for(count=0;count<16;count++) 
 {      
  Num<<=1;  
  TCLK=0;//下降沿有效          
  TCLK=1;
  if(DOUT)Num++;   
 }   
 Num>>=4;   //只有高12位有效.
 TCS=1;//释放ADS7843 
 return(Num);  
}

以上函数中的读取段,也就是for循环中貌似只有15个下降沿何以读取16位数据。是否可以将清除BUSY时的  TCLK=1;TCLK=0;这两句顺序对调下?
这是我软件仿真的图片,在清除BUSY后,好像只有15个下降沿。请原子哥赐教!




正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165536
金钱
165536
注册时间
2010-12-1
在线时间
2117 小时
发表于 2011-9-30 17:53:49 | 显示全部楼层
下降沿是又16个的,你好好数数吧.
至于BUSY位,能否调转,这个要看资料,或者你自己亲自试验一下,调转过来看看能否正常读数?不能就说明不能调转.能,就说明可以.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

1

主题

3

帖子

0

精华

新手入门

积分
27
金钱
27
注册时间
2011-9-26
在线时间
0 小时
 楼主| 发表于 2011-10-1 16:59:04 | 显示全部楼层
这个不能看能否正常读数。我试过将Num>>4这句改成右移3位或者5位,经过屏幕校准后都是正确的,能正常手写,将BUSY位调转后也是一样,所以我认为这只是将读取结果放大或者缩小2倍,经过校准没什么影响。
    个人认为原程序for循环中只有15个下降沿,因为第一次循环中没有下降沿,最后结果右移4位后实际上只有11位有效数据。
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165536
金钱
165536
注册时间
2010-12-1
在线时间
2117 小时
发表于 2011-10-1 21:05:43 | 显示全部楼层
回复【3楼】hare8888:
---------------------------------
TCLK=1;//给1个时钟,清除BUSY        
 TCLK=0;   
 for(count=0;count<16;count++)  
 {       
  Num<<=1;   
  TCLK=0;//下降沿有效           
  TCLK=1;
  if(DOUT)Num++;    
 }   
因为在进入循环的时候TCLK为0,所以第一个TCLK=0并没有体现出下降沿,你说的15个是正确的.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-12 15:46

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表