C语言for循环嵌套延时问题
我在程序中有IIC读写操作大概流程是:初始化->写IIC->延时->读IIC现在的问题是中间的延时函数会导致读出的数据不对,写操作正常如果把下面程序中“unsignedc...
我在程序中有IIC读写操作
大概流程是:
初始化->写IIC->延时->读IIC
现在的问题是中间的延时函数会导致读出的数据不对,写操作正常
如果把下面程序中“unsigned char x;”改成“unsigned int x;”,IIC读写都是正常的
/******************************************************************
写IIC以后至读IIC之间的延时函数;写完IIC以后不能立即读IIC,应当延时一段时间再读
******************************************************************/
void Delay_ms(unsigned int num_ms)
{
unsigned int i;
unsigned char x;
for(i=0;i<num_ms;i++)
{
for(x=0;x<120;x++);
}
} 展开
大概流程是:
初始化->写IIC->延时->读IIC
现在的问题是中间的延时函数会导致读出的数据不对,写操作正常
如果把下面程序中“unsigned char x;”改成“unsigned int x;”,IIC读写都是正常的
/******************************************************************
写IIC以后至读IIC之间的延时函数;写完IIC以后不能立即读IIC,应当延时一段时间再读
******************************************************************/
void Delay_ms(unsigned int num_ms)
{
unsigned int i;
unsigned char x;
for(i=0;i<num_ms;i++)
{
for(x=0;x<120;x++);
}
} 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询