msp430编程思路求指点

[复制链接]
2994|14
 楼主| tuzihog 发表于 2011-12-21 08:32 | 显示全部楼层 |阅读模式


MCU:msp430f449
基本定时器:0.064ms溢出一次,bt_flag++,取bt_flag的特定若干值(值1,值2,值3,45,6,7…….n,值n+1.)来唤醒睡眠中的mcu执行动作。main loop形式如下:
main()
{
…………….
……………
While(1)
{
入低功耗n;
等待基本定时器的bt_flag自增到特定的值,在bt_ISR中置位特定的标志位,修改SR唤醒MCU
执行标志位为1的那个任务。
}


basic_timer_ISR()
{
bt_flag++;
switch(bt_flag)
{
case 1 …………….;
break;
case 2 …………….;
break;
问题就在这里,下面的若干个特定值的个数是不确定的,特定值的形式如下所描述:
1040 + 0 * 160
1040 + 1 * 160
1040 + 2 * 160
1040 + 3 * 160
…………………
1040 + n * 160

n的值是在case 2对应的任务中确定的。
现在我就是不知道怎么处理这个不固定的n?
请各位大侠指点一下。或者指点一下别的思路也可以!



}
鸵鸟蝈蝈 发表于 2011-12-21 13:51 | 显示全部楼层
这个状态机都没有不是闭合的?说一下你这是个什么项目?
 楼主| tuzihog 发表于 2011-12-21 17:10 | 显示全部楼层
楼上的请指点一下你说的没有不是闭合的状态机是什么意思啊?
我这个项目是一个Zigbee定位的项目,这段代码是要实现mcu串口操作固定节点发送搜索指令,读取移动节点的回文,我主贴中说的n就是有回文的移动节点的个数。但这个n是个变值,可能是2个,还有可能是20个,总之回文的移动节点的数目是不确定的。
1040 + 0 * 160
1040 + 1 * 160
1040 + 2 * 160
1040 + 3 * 160
…………………
1040 + n * 160
这些表达式就是要操作固定节点向每一个移动节点发送另外一条指令!
不知道怎么处理这个变值n,
请鸵鸟大侠指点?
永远的不知 发表于 2011-12-22 15:30 | 显示全部楼层
1040 + 0 * 160
1040 + 1 * 160
1040 + 2 * 160
1040 + 3 * 160
…………………
1040 + n * 160

请问这些特定值是什么意思?
每一个特定值都是要发送的一个数据吗?
是否可以用for循环?
tianyu01 发表于 2011-12-22 17:17 | 显示全部楼层
就是 特定是什么意思呢
tianyu01 发表于 2011-12-22 17:17 | 显示全部楼层
 楼主| tuzihog 发表于 2011-12-23 13:41 | 显示全部楼层
hehe 那些值都是一些时间点,
程序要检测到这些特定的时间点从而去执行一些动作
tianm 发表于 2011-12-23 15:40 | 显示全部楼层
先乘除 后加减
永远的不知 发表于 2011-12-23 20:29 | 显示全部楼层
还是不太明白楼主的意思,不过看起来楼主似乎已经胸有成竹了:)
tl5324260 发表于 2011-12-26 13:28 | 显示全部楼层
先乘除    后加减?
lin562794072 发表于 2012-7-9 21:34 | 显示全部楼层
hawksabre 发表于 2012-7-15 19:11 | 显示全部楼层
先学习了  呵呵
您需要登录后才可以回帖 登录 | 注册

本版积分规则

40

主题

657

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部