请问:如何通过并口读写串行eeprom 24lcxx,我用的是24lc64,时序如何控制,每字节在微妙级。谢谢!(200分)

  • 主题发起人 主题发起人 zhu_ye_1
  • 开始时间 开始时间
Z

zhu_ye_1

Unregistered / Unconfirmed
GUEST, unregistred user!
请问:1,如何通过并口读写串行eeprom 24lcxx,我用的是24lc64,
2,时序如何控制,每字节在微妙级。
3,如有例子也可以,c的亦可。
谢谢!
 
帮帮小弟吧?大侠们!
 
个人认为通过并口未必可以。
主要是生成微秒级的序列信号不好控制,
除非你可以有微秒级的定时精度。
通过并口输出数字信号很简单,主要是高精度的时序
 
时序控制要求你的计算机采集速度要比较快,一般的并口采集串行信号的程序大致如下:
int Signal=0;
int Value;
while (i<ReadBytes)
{
if (Signal==1) // 时钟脉冲到达
{
Signal=0; //复位状态,等待下一个时钟脉冲
ReadBits();
i++; //读取了一位
}
else
{
Value=ReadPort(XXX); //读并口
if (Value &amp; 0x20) //假定第五位为时钟信号或者 (Value ^ 0x20)时钟信号变化?
{
Signal=1; // 时钟信号变化后,可以读取数据了,你应该在上升沿时准备好数据
}
}
}
这种采集方式无法判断一些特殊错误,因为你在计算机上编制的程序没有严格的时序控制
因此你无法切确知道是否产生某个字节是否少了几位或产生信号歧变等错误,但如果你的
线路很稳定或数据定时发送,中间丢了一些数据也没有关系的话用并口采集数据是可以的
但如果要求数据传送可靠性很高,那只能自己设计一个接口电路,用8031等单片机来接收
串行信号,然后通过这个接口电路和计算通讯,但这样做会增加设计成本和增加设计难度
 
问题已经解决了,谢谢帮助。
 
后退
顶部