HC89S003F4开发板调度器调试

一、前言

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

下载链接

下载下来调试看看。

二、用户代码

  • @实现效果 编译后led灯闪烁
  1. #include "HC51SRTOS.h"
  2. #include "math.h"
  3. //#define LED_RED P0_0 // 将P20设置为绿灯
  4. sbit LED_RED = P0^0;
  5. sbit LED_GREEN = P0^1;
  6. /******************定义任务的堆栈***************/
  7. INT8U Task0Stack[20];
  8. INT8U Task1Stack[20];
  9. INT8U Task2Stack[20];
  10. //INT8U Task3Stack[17];
  11. /******************系统节拍初始化***************/
  12. void TimerInit(void)
  13. {
  14. TMOD=0x01;
  15. TH0=0xf9;
  16. TL0=0xfe;
  17. EA=1;
  18. ET0=1;
  19. }
  20. /******************任务Task0定义***************/
  21. void Task0(void)
  22. {
  23. INT8U asi=0;
  24. TimerInit();
  25. while(1)
  26. {
  27. LED_RED =1;
  28. RTOS_TimeDelay(1000);
  29. LED_RED =0;
  30. RTOS_TimeDelay(1000);
  31. }
  32. }
  33. ///******************任务Task1定义***************/
  34. void Task1(void)
  35. {
  36. while(1)
  37. {
  38. LED_GREEN=1;
  39. RTOS_TimeDelay(400);
  40. LED_GREEN=2;
  41. RTOS_TimeDelay(400);
  42. }
  43. }
  44. ///******************任务Task2定义***************/
  45. //void Task2(void)
  46. //{
  47. // while(1)
  48. // {
  49. // P2++;
  50. // RTOS_TimeDelay(400);
  51. // }
  52. //}
  53. ///******************任务Task3定义***************/
  54. //void Task3(void)
  55. //{
  56. // while(1)
  57. // {
  58. // P3++;
  59. // RTOS_TimeDelay(200);
  60. // }
  61. //}
  62. /****************主函数***************/
  63. int main(void)
  64. {
  65. WDTCCR = 0x00; //关闭看门狗
  66. //本例程为方便测试关闭看门狗,实际使用中,建议客户打开看门狗,详见WDT复位例程
  67. CLKSWR = 0x51; //选择内部高频RC为系统时钟,内部高频RC 2分频,Fosc=16MHz
  68. CLKDIV = 0x01; //Fosc 1分频得到Fcpu,Fcpu=16MHz
  69. P0M0 =0x88; //将P00、01设置为推完输出
  70. LED_RED =1;
  71. LED_GREEN =0;
  72. RTOS_Init();
  73. RTOS_TaskCreate(Task0,Task0Stack,0);
  74. // RTOS_TaskCreate(Task1,Task1Stack,1);
  75. // RTOS_TaskCreate(Task2,Task2Stack,2);
  76. // RTOS_TaskCreate(Task3,Task3Stack,3);
  77. RTOS_Start(); //此函数执行完系统即发生调度
  78. while(1);
  79. }

【HC89S003F4开发板】 2调度器的更多相关文章

  1. 【HC89S003F4开发板】 10汇编指令

    HC89S003F4开发板汇编指令 一.数据传递类指令 MOV.MOVC.MOVX 1.MOV,用于片内数据存储器中的数据传递指令中. 2.MOVC是与ROM之间的数据传送,而MOVX是与外部RAM数 ...

  2. 【HC89S003F4开发板】9ASM写定时器1

    HC89S003F4开发板ASM写定时器1 一.实现过程 1.外部寄存器设置 扩展 XSFR 采用和 XRAM 同样的访问方式,使用 MOVX A, @DPTR 和 MOVX @DPTR ,A 来进行 ...

  3. 【HC89S003F4开发板】 8c转义成汇编工程

    HC89S003F4开发板建立汇编工程 选择编译文件 @选用开发板闪灯例程,将例程删除多余的注释,后面生成的文件会更直观. #define ALLOCATE_EXTERN #include " ...

  4. 【HC89S003F4开发板】 7ASM&C混合编程

    HC89S003F4开发板ASM&C混合编程 一.前言 在配套资料里有实现ASM&C混合编程的说明文档,这里来实现这个功能. 二.实现ASM&C混合编程 1.打开 Keil 工 ...

  5. 【HC89S003F4开发板】 4端口消抖

    HC89S003F4开发板端口消抖 一.前言 看到资料里有中断消抖的例子,因为以前项目里有遇到高频干扰频繁退出休眠的情况,所以好奇用这个配置能不能解决. 二.对demo进行修改 @实现效果 P01设置 ...

  6. 【HC89S003F4开发板】 6crc校验

    HC89S003F4开发板crc校验 前言 第一次用有带crc的mcu 使用资料自带的demo @实现效果 通过PC向MCU发送5个8位数据,MCU返回CRC校验值 void main() { /** ...

  7. 【HC89S003F4开发板】 3串口调试

    HC89S003F4开发板串口调试 使用资料自带的demo 主程序 /************************************系统初始化************************ ...

  8. 【HC89S003F4开发板】 1环境搭建

    HC89S003F4开发板环境搭建 一.概述 芯圣电子做活动,一个开发板只用一块钱,买过来玩玩.︿( ̄︶ ̄)︿ 全套资料可以在论坛或qq群里下载.总之先安装个环境先. 二.安装Keil C51 作为增 ...

  9. 痞子衡嵌入式:飞思卡尔Kinetis开发板OpenSDA调试器那些事(上)- 背景与架构

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是飞思卡尔Kinetis MCU开发板板载OpenSDA调试器(上篇). 众所周知,嵌入式软件开发几乎离不开调试器,因为写一个稍有代码规模 ...

随机推荐

  1. Spring IOC是什么

    IOC 什么是IOC IOC: Inversion of Control(控制反转) 控制反转:将对象的创建权反转给(交给)Spring. 传统开发模式 业务和实现类过于紧密,底层业务要修改源代码 通 ...

  2. Android.mk文件LOCAL_MODULE_TAGS 说明

    在移植wireless_tools驱动的时候发现居然没去编译咱的代码,奇怪,后来发现只有LOCAL_MODULE_TAGS 选项这个最有可疑,后来发现有这个说法 LOCAL_MODULE_TAGS : ...

  3. SWLU:主核性能采样、调试工具包

    http://bbs.nsccwx.cn/topic/262/swlu-主核性能采样-调试工具包

  4. Tosca user space 这是自己的空间,可以create module ,test case 等一大堆模块,五脏俱全

  5. Android studio 运行打包 Ionic 项目

    1.创建项目 ionic start myapp tabs 2.cd 到项目文件夹中 3.ionic cordova platfrom add android 执行这个命令后建议修改一下应用包名称,参 ...

  6. shell编程系列16--文本处理三剑客之awk模式匹配的两种方法

    shell编程系列16--文本处理三剑客之awk模式匹配的两种方法 awk的工作模式 第一种模式匹配:RegExp 第二种模式匹配:关系运算匹配 用法格式对照表 语法格式 含义 RegExp 按正则表 ...

  7. jsoup获取文章内容

    jsoup爬取文章内容 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws Se ...

  8. vs Qt mysql 打包程序 Driver not loaded Driver not loaded

    vs下开发Qt连接mysql程序,开发过程中操作MySQL没有问题,但打包以后安装在别的电脑上发现竟然无法连接MySQL,打包的时候,所需的libmysql.dll等dll文件拷贝到exe同级目录了, ...

  9. 泡泡一分钟:eRTIS - A Fully Embedded Real Time 3D Imaging Sonar Sensor for Robotic Applications

    eRTIS - A Fully Embedded Real Time 3D Imaging Sonar Sensor for Robotic Applications eRTIS  - 用于机器人应用 ...

  10. QML随机颜色

    color=Qt.rgba(Math.random(),Math.random(),Math.random(),1)