之前调 系统层 程序的时候,用的是别人的 核心板+底板。现在需要一些其他功能,于是自己按照原来的底板的,又自己制作了一张底板。但是发现在新底板上,程序运行是有问题的。比如说sapi.c中SAPI_Init函数中osal_set_event(task_id, ZB_ENTRY_EVENT),但是却根本不能响应系统事件。
按照我的理解,最小系统应该能跑协议栈吧?!最小系统,可以完成 “ 加入网络、绑定、读取片内温度”这些功能对不对?但是我给核心板用新底板加了电,加了复位。其他什么都没有。结果进了osal_start_system();之后竟然还能跳出去,在main里面循环,响应不了系统事件呢?
我用单步调试的方法,核心板+旧底板和 核心板+新底板 ,在osal_start_system();中现象都是一样的,都是不能跳出任务循环的,但是任务响应事件只执行 0、1、2,而且0、1里面的tasksEvents[idx] = 0; 只有2中的不为0,是去执行Hal_ProcessEvent()检测按键了。其他的也没看出什么区别。其余三个任务都响应不了,根本idx就没出现过 3、4、5,真是奇怪了。
核心板+旧底板,绝对没问题的!但是,核心板+新底板,问题可能出在哪里呢?运行协议栈,除了最小系统还需要什么呢?请各位帮忙指点一下,在此不胜感激
[ 本帖最后由 西湖三月 于 2013-6-21 15:26 编辑 ]