[ZLG-ARM] 求助!问题描述在内!!!

[复制链接]
2205|1
 楼主| terance 发表于 2007-5-13 11:51 | 显示全部楼层 |阅读模式
原先打算用LPC2214上的SPI口读取编码器上的25位连续输出的数据,后来发现该SPI口只能读取连续8位的数据,<br />板子已经做出来了,现在打算用SPI口的MISO和SCK来模拟串口进行数据读取,<br />编码器的数据输出数率是100k~1000khz,用模拟的串口读取的话,不知道读取速率能否达到?<br />此外,能否用软件达到1us级的延时···<br />大家给我点建议吧,该怎么做?<br />T=0.9—11us<br />t1&gt0.45us<br />t2≤0.4us<br />t3=12—35us<br />编码器数据传输:在时钟信号的第一个下降沿,数据存储,上升沿,传输,<br />T是一个传输周期,t1是下降沿宽度,t2是上升沿产生时与数据输出的间隔时间,t3是新一轮传输的恢复信号宽度~~~<br />我现在想法是用SCK模拟时钟口,MISO来读取数据,程序如下,想用软件产生us级的延时。<br />for(i=0,&nbsp;i++,&nbsp;i&lt25)&nbsp;<br />{&nbsp;<br />&nbsp;&nbsp;IO0CLR&nbsp;=&nbsp;SCK0;<br />&nbsp;&nbsp;DELAY2uS;<br />&nbsp;&nbsp;IO0SET&nbsp;=&nbsp;SCK0;<br />&nbsp;&nbsp;DELAY0.5uS;<br />&nbsp;&nbsp;ROQ_VALUE&nbsp;=&nbsp;ROQREAD();<br />}<br />uint32&nbsp;ROQREAD()<br />{<br />&nbsp;&nbsp;uint32&nbsp;ROQ_BUF,ROQ_DATA;<br />&nbsp;&nbsp;ROQ_BUF&nbsp;=&nbsp;IO0PIN&0x20;<br />&nbsp;&nbsp;ROQ_BUF&gt&gt5;<br />&nbsp;&nbsp;ROQ_DATA&nbsp;^=&nbsp;ROQ_BUF;<br />&nbsp;&nbsp;ROQ_DATA&lt&lt1;<br />&nbsp;&nbsp;return&nbsp;ROQ_DATA;<br />}<br /><br /><br />
zlgARM 发表于 2007-5-13 15:06 | 显示全部楼层

terance

可以读的。软件延时自己用示波器调一下吧。<br />自己动手实地做一下吧,边做边思考边调整。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

21

主题

35

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部