就是单片机与芯片比如说24c02的一个握手过程,就好比单片机觉得24c02很漂亮,想追求她,于是单片机就跟24c02打招呼,然后24c02回应单片机,这就是一个时序,握手成功后就可以通信啦,也就是说这个时候单片机可以开始追求24c02,可以为24c02做些事比如说向24c02写数据(就是说悄悄话吧)。至于你说的那个如何观察时序图,这个可以先找个简单的例子看下,太难的时序可以不用那么着急,就比如说SRAM的时序吧,很简单,比如说写,先送地址就是你要写数据的地址,送完后,拉低WE OE CS0,我用的是ARM7配置寄存器就好了,如果是你单片机就要每个信号未定义之后一个个拉低,延迟都是NS级不用管它,然后就可以写数据了。。
void sram_init()
{
PINSEL2=0x0e002020; //拉低WE OE CS0
PINSEL2=PINSEL2&0xfffffff7; //将P1.16-P1.25设置为GPIO口
IO1DIR=LED; //将P1.16-1.19设置为输出端
IO1SET=LED;
}
void write_data(uint32 Addr, uint8 data)
{
volatile uint16 *ip;
ip=(volatile uint16 *)(SRAM_ADDR|(Addr<<1));
*ip=data;
}
int main()
{
volatile uint16 *addr;
sram_init();
while(1)
{
write_data(0x000002,0x01);
addr=(volatile uint16 *)(SRAM_ADDR+(0x000002<<1));
a=(*addr);
if(a==0x01)
{
IO1CLR=LED;
}
else
{
IO1SET=LED;
}
}
return(0);
}
源代码。。
|