首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

请问MyWirelessAPP和MyStarNetworkAPP中分别已用到的定时器

请问MyWirelessAPP和MyStarNetworkAPP中分别已用到的定时器

斑竹,请问这两个应用中可以给我们使用的定时器分别是哪些?
MyWirelessApp使用了Timer1的溢出中断
MyStarNetworkAPP使用Timer1和Timer2的溢出中断
不过,这些都是demo中给出的例子,并不会影响网络的运行,所以用户完全可以自己修改

具体查看用到什么定时器,可以看中断向量表
谢谢斑竹,MyStarNetworkAPP中设计到任务管理模块的,而参考文档中没有涉及到,有相关的文档吗?在freescale网站好象没有找到。
我看了一下,两个wireless和starnetwork基本类似,star只是有了一个简单的网络的概念。你说的Mystartnetworkapp应该也是基于802。15。4来做的吧?似乎并没有什么任务管理模块。程序相对来说比较简单,花点时间静下心来可以明白的。关于802。15。4的一些mac的调用操作可以参考802154的参考手册
接触不久,应该是事件定时队列吧,我想如果有文档,可以少花点时间啊。我的邮箱zrz@bjhhl.sina.net.谢谢斑竹的热心。回复速度好快啊
802154采用的是消息队列的方式,我上传了user guide和reference manual 供你参考
http://bbs.eccn.com/uploadImages/FSL_802154MAC_Guide.zip
谢谢斑竹,昨天仔细看了看MyStarNetworkAPP,发现有个类似操作系统的模块,可以叫做事件驱动的吧。初始化的时候将事先定好的几个任务加入队列,按照顺序轮流查询,每个任务可以有16个事件,当轮训到某个任务时,如果有对应该任务的事件发生,则进入该任务运行该事件对应的动作。不知道我分析的对不对,但是我有个疑问,这种轮询的方式如何保证其实时性?或者这个DEMO只是一个演示程序而已?
可以这么理解,但是我不清楚你的16个事件是如何得出的。

这个demo以coordinator的启动为例是这样的过程,在主函数中,先state=stateInit,进入初始化过程,然后是ED Scan,然后是Start network。随后,程序进入等待,有底层来的事件就响应,有上层的串口也响应。 macStatus = Mlme_Main();是驱动底层的程序运行

这个只是一个简单的主循环不停的查询,就是你说的轮询,有任务就处理。这个是不具备实时性的,毕竟这不是一个实时系统。
我用BEEKIT基于MyStarNetworkAPP生成的coordinator解决方案,您在Application->Init->
MApp_init.c中整个工程的程序入口void _Startup(void)中有调用TS_Init();原型如下:void TS_Init(void)
{
TSInitTCB();// 1
TS_TaskCreate;// 2
TSScheduler();// 3
}
1 中初始化任务块
2 中创建我所说的几个确定任务,优先级确定
3.轮询调用创建的任务,
您可以看到每个任务有个两字节的变量,该变量每一位代表一个事件,所以我得出可以有16个最大事件
还有一个问题,请问MyStarNetworkAPP是不是基于流模式?我从coordinator串口发送一串字符,发现end device分几包接收?!辛苦斑竹了
明白了,你是基于BeeKit生成的MyStarNetworkAPP,我这里的平台不在BeeKit上,所以跟你的程序有些出入。

除了SMAC,基于802154的程序都是采用的流模式。coordinator给的数据包如果达到一定长度就有可能被截断,分包传送
底层是不是完全被封装了,有可以修改通讯模式的接口吗?包模式可能更适合我的要求,还有我刚说的那个类似操作系统的结构,你们有测试过极限响应速度吗?是不是只是demo,对实时系统并不适合?谢谢斑竹的热心!
包模式的话只有用smac的了,mac的程序底层都是库,没有源代码

关于BeeKit我还没有装,等我找了装看看里面的代码架构
恩,谢谢斑竹,没有详细文档看起来很吃力啊。您能给我个及时的沟通方式吗?我的msn,zhurongzhen826@msn.com
我大概看了一下,还没有好好研究。
应该安装的里面有些文档。
有问题可以在这里发问题,大家一起讨论,我也不是很熟悉,我这里上msn不方便
返回列表