搜索
bottom↓
回复: 4

尝试TEvent(20081128)移植C++ Builder 【恢复】

[复制链接]

出0入0汤圆

发表于 2008-11-27 16:59:05 | 显示全部楼层 |阅读模式


 (原文件名:Image0134.JPG) 







//---------------------------------------------------------------------------





#include "config.h"



#pragma argsused



#define  OS_TICKS_PER_SEC 100



void __stdcall OSTickISR(unsigned int a,unsigned int b,unsigned long c,unsigned long d,unsigned long e);





#define EVT_LED_ON  0

#define EVT_LED_OFF 1



#define TASK1ID 0

#define TASK2ID 1



uint8 task1(uint8 EventValue)

{

      switch(EventValue)

        {

                case EVT_TASK_ENTRY:

                EVT_Post(EVT_LED_ON);

                break;



                case EVT_LED_ON:

                printf(" --------TASK1:LED ON --------\r\n");



                    EVT_DelayPost(EVT_LED_OFF,OS_TICKS_PER_SEC/2);

                break;



                case EVT_LED_OFF:

                printf(" --------TASK1:LED OFF--------\r\n");

                EVT_DelayPost(EVT_LED_ON,OS_TICKS_PER_SEC/2);

                break;



        }

        return 1;



}



uint8 task2(uint8 EventValue)

{

  static uint8 step=0;



  if(step==0)

  {

       step=1;

       printf(" --------TASK2:LED ON --------\r\n");

       TSK_Delay(OS_TICKS_PER_SEC/3);

  }

  else

  {

       step=0;

       printf(" --------TASK2:LED OFF--------\r\n");

       TSK_Delay(OS_TICKS_PER_SEC/3);

  }



return 1;



}





int main(int argc, char* argv[])

{

        InitializeCriticalSection(&CS);



        TSK_InitWithEntryEvent(task1,TASK1ID);

        TSK_InitWithEntryEvent(task2,TASK2ID);



        timeSetEvent(1000/OS_TICKS_PER_SEC, 0, OSTickISR, 0, TIME_PERIODIC); //模拟周期中断







             while(1)

        {

                

                while(EVT_Scheduler());

                Sleep(1);



        }

       // return 0;

}





void __stdcall OSTickISR(unsigned int a,unsigned int b,unsigned long c,unsigned long d,unsigned long e)

{

     TMR_TicksHander();

}



点击此处下载 ourdev_519376.rar(文件大小:652K) (原文件名:TEvent.rar) 



本贴被 ATmega32 编辑过,最后修改时间:2008-11-28,11:11:36.

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

 楼主| 发表于 2008-12-9 17:20:20 | 显示全部楼层


 (原文件名:Image0137.JPG) 



更新一下:20081209

点击此处下载 ourdev_535677.rar(文件大小:1.26M) (原文件名:TEvent.rar) 



本贴被 ATmega32 编辑过,最后修改时间:2008-12-10,13:26:33.
头像被屏蔽

出0入0汤圆

发表于 2008-11-29 07:44:21 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

 楼主| 发表于 2008-11-28 23:10:40 | 显示全部楼层
尝试仿UCOS一个例子到TEvent



 (原文件名:Image0015.JPG) 



更新一下:20081128 

增加TEvent在CC2430,MSP430F1611,LM3S1138和C++Builder下移植。 

http://www.ouravr.com/bbs/bbs_content.jsp?bbs_sn=1635695&bbs_page_no=1&bbs_id=3004

本贴被 ATmega32 编辑过,最后修改时间:2008-11-29,08:43:16.

出0入0汤圆

发表于 2008-11-27 17:24:47 | 显示全部楼层
能移到C51&arm平台就好了,不懂C++ Builder
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-20 18:42

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表