STM8S怎么延时纳秒啊???我用空操作时间也不准???
16MHZ,一个空指令为62.5ns,300ns大概5个,600ns大概10个,900ns大概15个
void send_data(u8 dat)
{
for(i=0;i<8;i++)
{
if(dat & 0x80)
{
set_PC1;
nop(); nop(); nop(); nop(); nop(); nop(); nop(); nop(); nop(); nop();
clr_PC1;
nop(); nop(); nop(); nop(); nop(); nop(); nop(); nop(); nop(); nop();
}
else
{
set_PC1;
nop(); nop(); nop(); nop(); nop();
clr_PC1;
nop(); nop(); nop(); nop(); nop(); nop(); nop(); nop(); nop(); nop();nop(); nop(); nop(); nop(); nop();
}
dat<<=1;
}
}
这样写用示波器看时序都乱了,怎么回事?
-
一周热门 更多>