打印
[国产单片机]

关于HT采集数据的速度,用过合泰的高手帮忙分析一下

[复制链接]
1461|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
figoxwm|  楼主 | 2007-11-30 16:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
while(1)//判断是否90us 


  if(clk_port != 0) 


  m++; 
  if(m > 20) 
   { 
    flag=1;//是90us范围则退出 
     count_clk++; 
     break; 





else 

m = 0; 

asm("NOP"); 
asm("NOP"); 
asm("NOP"); 
asm("NOP"); 


if(flag) 

 flag = 0; 
 display(22,2); 


while(clk_port != 0); //等待90US完了没? 

for(i=0;i<24;i++)//开始采集 


  value0 = data_port; //得到一数据 
  if(value0) 
  { 
   byte0 |= 0x00800000; //数据是1则把第24位置1,保存在BYTE0,0则直接位 
   
  } 
  if(i<23) 
  { 
   byte0 >>= 1; 
   } 
while(clk_port==0); //低电平时是否读完数据? 
while(clk_port);//高电平等待,低电平读数据 



这段程序我分别用HT和另一系列的单片机(义隆)做测试,在HT上读不到准确的数据,在另一单片机(4M)上可以读到准确并稳定的数据.我现在怀疑是HT的速度不够快,不知如何解决这问题??? 
HT的是用HI_TECH编译的.所以有LONG型的. 
我所要采集的数据是6.5US读一个数据,连续读24个数据.HT的已经是8M的晶振速度了,上面那个90US的我在两上单片机上测试是一样的了,关键在于连续采集数据时的速度,之前我发了个贴子说HT的速度慢,现在不知是否能证实了呢? 
如果把采集数据这段程序换成汇编写的话是否能达到要求呢?请工程师帮我写写汇编的程序啦,我怕写出来还是达不到要求....有人在51单片机上能做到,HT的不能做到吗??? 

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

12

主题

51

帖子

0

粉丝