[LOOK] 怎样在现有工程中添加一个新的任务?

[复制链接]
2134|3
 楼主| gdmgb520 发表于 2011-9-24 23:12 | 显示全部楼层 |阅读模式
LED, gp, GPIO, IO, pi
以菜农大叔的《LOOK_LED》例程 为例,我想添加一个新的任务,直接复制了任务2,该改为任务3,不行。请问大家,怎样添加一个新的任务。
  1. // 任务类 task_led_t 的例程
  2. void task_led3_t::routine()
  3. {
  4.         // TODO: 在此编写 task_led_t 例程的内容
  5.         uint32_t data = 0b100;
  6.         while (true) {
  7.                 // TODO: 在此编写 task_led_t 例程的内容
  8. #if LOOK_H == 0
  9.                 GPIOAs.DMASK.Regs = ~0b100;
  10.                 GPIOAs.DOUT.Regs = data;
  11. #else
  12.                 GPIOA.DMASK(-1)
  13.                          .DMASK2(0);
  14.             GPIOA.DOUT = data;
  15. #endif
  16.                 data ^= 0b100;
  17.                 delay(LOOK_TICKS_PER_SEC / 20);
  18.         }
  19. }
hotpower 发表于 2011-9-24 23:34 | 显示全部楼层
要在H和CPP里添加的
john_lee 发表于 2011-9-24 23:53 | 显示全部楼层
由uVision向导生成的LOOK任务,任务类(task class)定义在头文件(.h)中,任务类的例程函数(routine)和任务类的实例(instance)在CPP文件中实现。uVision向导只能生成一个任务(.h和.cpp),增加其它任务的方法是,新建.h文件和.cpp文件,其内容可以复制已生成的任务的.h和.cpp内容来修改而成。

只要熟悉了LOOK任务的框架:
1、任务类定义
2、任务例程函数
3、任务类实例
写在哪里都随便。
 楼主| gdmgb520 发表于 2011-9-25 20:51 | 显示全部楼层
今天看了C++入门经典中类的定义、构造函数内容,再打开led.h,原来是这样,;P

成功添加新任务。

谢谢两位老师。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:了解新东西才知道自己的不足。 www.elecbench.com

67

主题

452

帖子

1

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