HC89S003F4开发板调度器调试

一、前言

逛论坛看到有人给HC89做了调度器,调度部分直接操作堆栈的。

下载链接

下载下来调试看看。

二、用户代码

  • @实现效果 编译后led灯闪烁
#include "HC51SRTOS.h"
#include "math.h"
//#define LED_RED P0_0 // 将P20设置为绿灯
sbit LED_RED = P0^0;
sbit LED_GREEN = P0^1;
/******************定义任务的堆栈***************/
INT8U Task0Stack[20];
INT8U Task1Stack[20];
INT8U Task2Stack[20];
//INT8U Task3Stack[17];
/******************系统节拍初始化***************/
void TimerInit(void)
{
TMOD=0x01;
TH0=0xf9;
TL0=0xfe;
EA=1;
ET0=1;
}
/******************任务Task0定义***************/
void Task0(void)
{
INT8U asi=0;
TimerInit(); while(1)
{
LED_RED =1;
RTOS_TimeDelay(1000);
LED_RED =0;
RTOS_TimeDelay(1000);
}
}
///******************任务Task1定义***************/
void Task1(void)
{ while(1)
{
LED_GREEN=1;
RTOS_TimeDelay(400);
LED_GREEN=2;
RTOS_TimeDelay(400); }
} ///******************任务Task2定义***************/
//void Task2(void)
//{ // while(1)
// {
// P2++;
// RTOS_TimeDelay(400); // }
//} ///******************任务Task3定义***************/
//void Task3(void)
//{ // while(1)
// {
// P3++;
// RTOS_TimeDelay(200); // }
//} /****************主函数***************/
int main(void)
{
WDTCCR = 0x00; //关闭看门狗
//本例程为方便测试关闭看门狗,实际使用中,建议客户打开看门狗,详见WDT复位例程
CLKSWR = 0x51; //选择内部高频RC为系统时钟,内部高频RC 2分频,Fosc=16MHz
CLKDIV = 0x01; //Fosc 1分频得到Fcpu,Fcpu=16MHz
P0M0 =0x88; //将P00、01设置为推完输出
LED_RED =1;
LED_GREEN =0;
RTOS_Init();
RTOS_TaskCreate(Task0,Task0Stack,0);
// RTOS_TaskCreate(Task1,Task1Stack,1);
// RTOS_TaskCreate(Task2,Task2Stack,2);
// RTOS_TaskCreate(Task3,Task3Stack,3);
RTOS_Start(); //此函数执行完系统即发生调度
while(1);
}

最新文章

  1. SQLSERVER走起微信公众帐号已经开通搜狗微信搜索
  2. 79 umount-卸除目前挂在Linux目录中的文件系统
  3. Windows Phone App的dump 文件分析
  4. GPT分区基础知识
  5. UML系列03之UML时序图
  6. Jquery 操作xml 文档的方法
  7. SpringDataRedis事务处理
  8. python使用mysql的三个模块:mysql.connector、sqlalchemy、MySQLdb
  9. django初探-创建简单的博客系统(二)
  10. C++STL模板库序列容器之vector
  11. Django_ORM_字段属性
  12. heat-engine组件
  13. UART简介及与COM口的区别
  14. Web项目开发流程 PC端
  15. python第十一课——转换结构
  16. 如何使用git工具向github提交代码
  17. Atitit.Gui按钮与面板---项目规模的评估----文件数统计,结构,代码行数,每类型文件行数.
  18. [AIR] 检测移动设备运动
  19. time 模块,random模块,os模块
  20. 部署web Service到tomcat

热门文章

  1. 生成模型 VS 判别模型 (含义、区别、对应经典算法)
  2. 封装qt http文件下载类
  3. JVM 扩展类加载器2
  4. nginx基础模块
  5. python命令行传入参数
  6. 解决Wireshark安装Npcap组件失败
  7. 从0开始学爬虫12之使用requests库基本认证
  8. ckpt pb
  9. 使用ffmpeg.exe进行转码参数说明
  10. Linux记录-常用统计awk