|
楼主 |
发表于 2018-6-2 09:34:02
|
显示全部楼层
本帖最后由 jiangzhimin 于 2018-6-2 09:38 编辑
再次请教一个问题 这freemodbus的的任务时候是怎么做任务切换的呢
static void AppTaskModbus ( void * p_arg )
{
OS_ERR err;
eMBInit(MB_RTU, 0x01, 0x01, 9600, MB_PAR_EVEN); //初始化 RTU模式 从机地址为1 USART1 9600 无校验
eMBEnable(); //启动FreeModbus
(void)p_arg;
while (DEF_TRUE)
{
eMBPoll();//总线侦听
OSTimeDly ( 50, OS_OPT_TIME_DLY, & err );
}
}
OSTimeDly ( 50, OS_OPT_TIME_DLY, & err );函数加了延时50还可以能相应到,但是加点 500 就返回不了, 因为要实时监听发过来的数据实时相应,有没有别的切换任务好的办法
看到有的例子没有延时,什么的也能做到任务的切换吗 |
|